3 ms·
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
by decafninja 7y ago
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.
- nostrademons 7y agoSounds 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.
- decafninja 7y agoI 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.
- throwaway987978 7y agoKeep 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)
- decafninja 7y agoI'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.