Hacker News new | past | comments | ask | show | jobs | submit | more karamazov's comments login


It's a reasonable comparison, but it's probably more like being great at a sport: a professional tennis player is not going to become a professional bicyclist with a few weeks of effort.


Or use the closed-form solution.


The "closed-form solution" is slower than standard method. It just uses arbitrary-precision fractional arithmetic (square root, exponentiation, division) instead of arbitrary-precision integer arithmetic (exponentiation of a 2x2 integer matrix).


The best solution is to use the O(log n) time exponentiation of a matrix, which is fast enough to be constant.


Academics are not, and don't need to be, good software engineers, because the tools and skills one person needs to build a proof-of-concept are different from the skills a large team needs to build production code.

Functional code and immutable data are fundamental ideas for managing complexity in big systems, irrespective of language. Even modern C++ tries to be functional until it has a good reason not to be.

(I also went to MIT, and I work on low-level systems at Google.)


From the hn guidelines: "On-Topic: Anything that good hackers would find interesting. That includes more than hacking and startups. If you had to reduce it to a sentence, the answer might be: anything that gratifies one's intellectual curiosity."

A strong ai / hacking-themed game fits the bill.


I think misunderstood my post. I wasn't trying to debate whether this is off-topic or on-topic, but rather why this particular game is being upvoted when games on /newest generally get ignored.

In case there was some interesting dev-blog or somesuch being posted here earlier, I just didn't want to miss that.


The proliferation risk of nuclear fuel is overblown. Reactors don’t use weapons-grade fuel, and purifying it to weapons-grade material is harder than making the fuel to begin with; if you can take fuel and refine it into a weapon, you might as well start with unprocessed uranium.


I find it interesting that spent nuclear fuel contains a fair amount of weapons grade Pu, but it also contains other isotopes of Pu which you wouldn't want and would be difficult to separate.

It could definitely be used for a dirty bomb, which could, if nothing else, cause significant economic damage from the fear of radiation.


They wanted a controlled explosion.


You're right, let's go back to punchcards.


Practice! Go back and rework older documents - it’s hard to edit something you just wrote. Time between writing and editing will give you perspective, and help you understand what to do better in the future.

Reading about writing will help too. “The Elements of Style” is great, as is Stephen King’s “On Writing” (for the latter, ignore the parts focused on fiction).


Yes. Any reasonably good programmer can get a job at a FANG company with three months of serious study; any reasonably intelligent person can become a good entry-level programmer with 1-2 years of serious study. The demand for engineers far outstrips supply.


I've been studying for the past two years and have failed at multiple FAANGs, some twice. Failed at FB, NFLX, AMZN, in addition to MSFT and UBER.

Then again, I'm not entry level (10 yoe), so I might be competing at a higher bar. However, I'd gladly join any of these companies as a junior engineer without hesitation.

I've seen stories of, amongst others, someone who studied while in prison get into GOOG, someone who was a aesthetician get into NFLX, a cab driver who got into UBER, all as SWEs.

I actually wish I wasn't a SWE so I could compete at the entry/junior level. I feel my 10yoe (SWE at investment bank), which gives me a TC only slightly higher than a FAANG junior SWE, is wasted.


How much time are you spending specifically on interview question practice (HackerRank/Leetcode)?

I've got close to 20 years of programming experience, including working at Google for several years and launching some very high-profile projects. I still fail interviews if I haven't studied for them. You could argue that it's a stupid system where they test 20-minute coding exercises with a trick answer, and you'd be right [1]. But it's a system that can be gamed, and can be gamed with relatively little time. Putting in a week full-time, or working a problem a day for 3 months, will put you way ahead of most of the rest of the competition.

[1] But the interview bullshit serves another less-obvious purpose: it tests how much you actually want to work at the organization. It's relatively easy to bullshit enthusiasm in a calm chat with a hiring manager. It's pretty hard to do it when your brain is occupied by solving a hard problem and you're frustrated because you have 5 minutes left to solve a problem and there's still a sticky bug.


At the start of the process, I began with comp sci/DS&A fundamentals - including books like Algorithm Design Manual, Intro to Algorithms, etc. Took a few months break to get married, then resumed, eventually starting to 100% grind leetcode problems. As my wife can amusingly attest - I no longer have any hobbies or other personal entertainment since we got married. Studying for interviews consumes all the free time I have that I don't spend with her.

Add to that, since last year, my day job got a lot less demanding, so I am actually studying/leetcoding during the afternoon at work too.

One wrench thrown into the loop is that I am a mainly a frontend engineer by trade, and it seems frontend interviews at FAANG and many other top tech companies are focusing less on leetcode/DS&A and more on JavaScript trivia problems. So that has been a context shift, and I am focusing more on getting as many JavaScript tricks and patterns into my repertoire now, and less on leetcode.

Pretty much my #1 personal goal in life at the moment is to get into a FAANG, or at least similar caliber, company. No, it's not a life or death matter, but whereas someone else might be content to watch TV/Netflix, or play games, or go golfing, I'm spending that time leetcoding...

What I feel torpedoes me during the interview is that I can get often get 90%+ of a solution, even if it's a problem I haven't seen before. But some edge case or bug in my code kills me, or I miss some trick or pattern that is the key to getting it right. In a less competitive company, this might mean passing the interview, but for a FAANG or similarly highly competitive company, I feel not getting 100% technical perfection means dead on arrival.


Sounds like you're doing a lot of the right stuff.

I started as a frontend engineer at Google, 11+ years ago, and you're right that there's a lot of Javascript/DOM/HTML trivia to understand. Google was also one of the few companies that insisted you know vanilla JS cold and don't use frameworks in the interview. It's worth studying up on MDN to make sure you really know JS corner cases. You need to know the leetcode-style problems too - when I applied (and I think this is still true), it was 2 interviews for algorithms & data structures, 2 for frontend, and 1 system design.

It also may not be the right time to apply, since many FAANGs are dramatically slowing down hiring. Your odds get much better in boom times than bust times.


I actually just got my rejection from FB today. Purely JavaScript questions, no leetcode at all. If I were to rewind, I'd have focused more on purely JavaScript tricks and less on other parts of the frontend repertoire. i.e. the time I spent on CSS seems to have been a waste.

Also got rejected from AMZN back in December. Made the mistake grinding leetcode during the weeks leading up to the interview, when it turned out to be purely JS trivia.

The hardest part of interviewing as FEE seems to be the lack of sample JS interview problems available, versus say, leetcode. I feel I am pretty well versed in using JS and have pretty in-depth knowledge of the arcane workings of the language far beyond a typical developer (certainly more so than my coworkers), but just like how leetcode interviews cover cases you'll never encounter in day to day work, frontend JS interview problems seem to do the same.

That said, I don't know how much JS knowledge a typical FEE at a FAANG or similar company has. But that's one big reason I want to get into one of these companies - I'm assuming, and hoping, the level of knowledge and enthusiasm (I hate to use the word passion) is much higher at SV tech companies than outside. Most of the places I've worked (banks, finance), the JS engineers can barely explain how async stuff works in JS.


Keep going. You only need to pass once. :)

I'm kind of in the same boat. I failed all my interviews as well and I have about the same amount of experience as you. I agree that getting into these companies is easier as a junior engineer.

You may want to look at an interview prep course like Outco.io or Interview Kickstart. I haven't attended one yet but will most likely do so once I'm ready to start interviewing again. I think the feedback they offer will be worth it rather than me constantly headscratching after failing another interview.

(The fact that these courses exist just exemplifies the whole problem with software interviewing but I don't fault them for that)


I've been in touch with the people at Interview Kickstart. They seem like nice people, but I'm pretty sure I know what my problem is - not doing the coding rounds with 100% perfect optimal solutions, when another competing candidate is doing so.

For example, in my failed FB interview above, I quickly and successfully solved two problems in the phone screen - thus I passed. The first onsite (virtual) coding round I struggled on the first problem but got it with about 10 minutes to spare. Main issue was that the optimal solution involved doing something in JavaScript that AFAIK typically considered bad practice. The second problem I waltzed through in 5 minutes. The second coding round I got the first problem, but there was an edge case bug I didn't catch, and fixing that took up the entire 45 minutes so I didn't get to a second problem. I'm guessing that was a big negative signal.

I know communication goes a long way, but considering how competitive these positions are at FAANG level companies, I'm sure there is someone else out there that communicates and vibes just as well as I do in addition to getting the 100% optimal solution quickly.

The one thing I can see a service like IK offering me is networks and referrals, but not sure how much that would be worth, especially since they aren't exactly cheap. That said, I'd pay the tuition without hesitation if they could guarantee me a job (of any level) at a FAANG level company, but that's not the case :). Or at least a 100% refund if I fail to get into such a company after a period following the curriculum - but I feel that's easier promised than done even if they were to offer such.

I have friends at some of these companies who have given me referrals, but ultimately all that does is give me higher odds of getting an interview, and in some cases, a chance to directly chat with the hiring manager prior to the interview. For whatever it's worth I've had managers express great enthusiasm about having someone like me on their team after a conversation, but then I get torpedoed for not being able to find the perfectly optimal solutions to some leetcode medium/hard.


Yeah I hear you. I've struggled with the exact same problem. The stress doesn't help and often times I've figured out the answer just 5 or 10 minutes after the interview was done. I know I got rejected from Amazon and then a week later I was doing practice interviews on interviewing.io and the guy who was mock interviewing me said that he works at Amazon and that I should apply. I had to tell him that I did apply and just got rejected from an onsite interview the week before.

Yeah, referrals at these sized companies only help to get a recruiter to pay attention. It doesn't really help. I've even gotten interviews just by searching LinkedIn for ___ recruiter and messaging them directly.

FWIW, I recently attended the Outco sales pitch and they do have a almost guaranteed payment option. Instead of paying up front you can pay nothing and then pay 10% of your first year's base salary. Obviously that would cost you more than if you had paid up front but that could be an option.


Thanks, I'll check out Outco. Scheduled an info session with them next week.

One other thing that did make me hesitate Interview Kickstart though were that they seemed to be for generalist SWE only, not frontend. The person I spoke with said FEE would have the same interview problems/track as any other SWE, but my personal experience over the past two years has shown me this is usually not the case.

Also would be concerned about what IK/Outco considers a "success". I'm only targeting a relatively small subset of companies (FAANG, obviously, plus others at similar level). So my definition of success (aforementioned companies) vs. theirs (any company?) might be different. A question to ask during the info session I suppose.


Same here. I’ve considered wiping my resume and leaving off my background intentionally just to get the chance to interview at the entry/junior level. Of course, those positions are now mostly exclusively reserved for those coming out of college. So unless you have the income and time to go get another CS degree, you still can’t apply.

This is all assuming you can get past the resume filter which is all luck unless you know someone with enough pull within the company already.


But why would you want to join those companies as a junior engineer?


- Because it would give me better career development than where I am now as a senior SWE.

- TC trajectory would be significantly higher, even if it means taking a minor temporary paycut.

- Intangibles, which might sound trivial, but stuff like working with smart coworkers, not having to dress up like a businessman to work, etc.


Better long terms salary growth


Why use stock ticker names instead of typing the company names out properly? It literally only takes a second or two longer and is much clearer to read.


It’s usually signalling. Specifically, it signals “I can afford to invest so much into stocks that I live and breathe stocks, and if you don’t, then I don’t care about you.” It’s a very conceited attitude.

Of course, in this case specifically, it might be because they worked for 10 years in an investment bank, and might be used to always speaking about companies in terms of stocks.


This is a particular kind of challenge that definitely occurs for more experienced engineers, however I also suspect you have a stronger foundation than you realize and could shine with some specific guidance.

A buddy and I provide all kinds of practice interviews to help engineers get into FAANGs. We work on a success based payment model, and help substantially with negotiations, too.

If you're interested send me a note with availability for a chat (email and website in profile). I would love to at least offer some advice for next time even you decide our coaching is not for you.


> Any reasonably good programmer can get a job at a FANG company with three months of serious study

Do we seriously believe there are so many FAANG jobs available that "any reasonably good programmer" who wants one can have one, just for the price of a bit of "serious study"? I don't think so. Google et al may be big, but they're not that big or growing that fast.

A great deal of the demand for engineers does not come with anything like FAANG-level prospects.


This.

For every junior FAANG engineer, there are legions of senior or staff level equivalent engineers at companies outside of the Silicon Valley style tech/software sector who will retire with their TC topping out at maybe around what a lower-mid level engineer at a mid-top tech company would make.


I'm over 50 and been working in the industry for >25 years... what are my odds?


Disclaimer: I don't work at a FAANG. However this is my observations from interviewing at FAANGs.

Seems random to be honest. Some of my interviewers have been older people. Some of the people waiting with me at lobbies prior to interview have been older people. I'm 38 FYI.

Seems your ability to pass the leetcode problems is the most important factor, so long as you don't torpedo yourself with odd behavior during the non-technical portions.

For more experienced candidates like yourself and I, I hear the system design round is also important. But your success in that is more difficult to gauge, whereas you kind of know whether you bombed an leetcode round or not.

Depressing is that your multiple decades of experience might be absolutely worthless as far as passing leetcode rounds go. Your experience may or may not be useful for the system design round. It's useful if your experience with systems matches that with what the company is looking for. It's useless if not. I've noticed the systems at many non-tech enterprise companies don't exactly align with the systems at newer tech companies.


Thanks, useful :)


This is kind of depressing for me. I've failed interviews at Amazon, MS, Google and Netflix. I studied a bunch and managed to get 5/5 on all but one section of the TripleByte test.


Don't be depressed. It's false that any reasonably good programmer can get a job at those companies. There are plenty of reasons why you may not get a job at any of them (bad luck, peer competition, interview antipatterns (google Yegge on this), maybe algorithms aren't your strong suit, ageism, etc). Even worse, from initial rejections you can spiral down into anxiety that will hinder you in future interviews, and listen to this: you cannot tell a person not to get anxious at the prospect of rejection, either.

People who say it's easy are arguing from an optimistic point of view specifically addressed as unhelpful at the start of the article.


Don't be. There's a lot of luck involved in the interview process and most people who had luck on their side won't understand this.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: