5 ms·
You can’t be serious. It’s not that hard.
by CaveTech 7y ago
You can’t be serious. It’s not that hard.
- bradlys 7y agoTBH, it's not far off... I've done 200+ problems on leetcode, all of ctci, and lots more. Hundreds of hours of prep over the last 5 years. Never received an offer from FAANG after 10+ on-sites with them. Know others with similar experience. People I know who get offers are even more aggressive with prep but also get lucky. (As they sometimes get rejected even when they've received an offer from the company before...)
- CaveTech 7y agoSorry to hear that but you really don’t need to be contributing to the projects mentioned to get in. Theres tens to hundreds? of thousands of FAANG employees and I assure the majority are not at that caliber. It’s nice to glamourize it a bit but you guys make it sound downright mythical.
- rvz 7y agoThe problem is that for a FAANMG company to throw a Leetcode question in 2019, it's equivalent to a entrance exam, especially towards thousands of applicants. Eventually, they will use something else to assess your skills that will eliminate many applicants. I wouldn't risk getting eliminated for not differentiating myself. Leetcode questions are not enough for 'seniors', even as a interviewer, it brings the same good problem solvers, but not enough applying this into practise such as open-source projects / contributions, which is faster to review than these Leetcode questions. > It’s nice to glamourize it a bit but you guys make it sound downright mythical. Perhaps not in 2012-2014 but in 2019 it is the reality of many candidates getting a FAANMG level role that have to face a competition of thousands of applications every week. I wish it were easier than this, but when I look at the following real world open-source projects: * FB creating the Hermes JS Engine. * Netflix submitting patches to the Linux Kernel. * Googlers working on Fuchsia OS. * Apple hiring dynamic linker engineers for dyld3. * Amazon writing the firecracker virtual machine. * Microsoft hiring engineers for Typescript and Chromium. I think that justifies utilising the data structures and algorithms resources listed above. And now if one told me that they have some contributions to at least one of them, I'd tell them to send a link to the code-review / patch and I'd just bring them onsite and ask more questions about it.
- CaveTech 7y agoYou’re still glamorizing a select body of work and overlooking the fact that the vast majority of employees are not working on those projects. For sure there is interesting work to be had, but don’t pretend that everyone is toiling away on what you see on GH and HN.
- billhathaway 7y agoOne of the most common joke themes inside Google is that almost everyone is just writing software that converts from one protobuf to another.
- mindentropy 7y agoFirecracker is a Virtual Machine monitor. It uses KVM underneath.
- usaar333 7y agoAre you sure you aren't being rejected for other reasons? Generally, if you can finish any random medium difficulty leetcode question in 30 minutes, you are at the algo bar. But there's still systems, behavioral, communication, etc.
- bradlys 7y agoAlmost all feedback I ever received was related to the technical problems when it came to FAANG. When I started out, I understood a bit. I wasn't the top 1% of whiteboarders but lately... That excuse seems weak when I get asked a leetcode hard problem and smash it. I'm kind of convinced there is something else happening where the person writes down technical performance instead of, "didn't like his shoes" or whatever. They keep pinging me every six months to re-interview too. They don't like to share why they declined though - so I don't get why they ask for me to reinterview like something magical will change without feedback.
- usaar333 7y agoWell on the bright side, if they are inviting you back it means you aren't giving off bad cultural vibes. My $0.02: Try to press harder for feedback. I've generally had no difficulty extracting feedback on rejections, especially ones where I could be re-invited back ("well, without understanding what reasons I was passed on last time, it doesn't make much sense for either of us to invest in another round where the same issues may very well exist"). All else fails, consider mock interviews. There's paid services out there that will do this -- and you'll get detailed feedback.
- bradlys 7y agoYeah - I am going to look into mock interview stuff more - hopefully something where it could be in person or at least on camera too. I'll press harder for feedback before accepting another interview loop. I tend to smash most phone interviews - so it's probably something special to the in-person aspect. A lot of my friends think people are writing non-technical things because there's something else more "problematic" for them to say that wouldn't fly in their write-up. Like - "he had rbf", "didn't laugh at my jokes", [insert unacceptable reason #48352], etc.
- mindentropy 7y agoHow did you find the motivation to spend 100's of hours for prepping for 5 years? This is really great! In my case I find prepping really dry and like to work on personal projects and veer off to different technical things that I am curious in. When I try to solve problems I hate to look at answers and I spend a lot of time sometimes days trying to solve it. What is your approach to solve problems? Could you please elaborate on how you prepared to a person like me who is aspiring to take a FAANG interview?
- bradlys 7y agoI had two long breaks between jobs. I've also had 4 different jobs in the last 5-ish years. So - I've had to do some prep every year. When I hit 1 year at any job - I start prepping again. I prepped probably 200 hours for the first job, 200 for the second, and then 100 for the third and fourth in the last 5-ish years. I pretty much never stay more than a year because it's the only way to get compensation and title to go up at all the companies I worked at. I'd suggest always working on paper or whiteboard - never use a computer. (You have to emulate the environment) Set a timer for every problem. (1 hour max - aim for 45 minutes on medium/hard when starting out; lower it as you familiarize yourself with a subject) Start throwing data structures and algorithms at the problem (pattern matching them, basically). Solve it or don't. Learn something to take away from it. If you don't solve it, learn how to solve it, and where you were lacking. If you did solve it, be sure to check other solutions because sometimes yours is crap. Practice that thing you were lacking. (Needed to know BFS? Implement BFS from scratch 10 times using spaced repetition) If you're planning on 8 hour study sessions then focus on one type of problem at a time. (BFS, DFS, graph problems, tree problems, binary search, dynamic programming, etc.) Only do those kinds of problems in that session. Set it up like you would for a math class. You do one chapter in that session/day/week/whatever and proceed to do a few chapters (say a BFS chapter, a DFS chapter, and a binary search chapter)... Once you've done a few, give yourself a midterm covering the topics you learned. So give yourself like 2 DFS, 2 BFS, and 2 binary search problems and see if you can solve them in a timed environment. If you rocked the midterm then proceed on to do more chapters and more midterms. If you didn't then relearn those subjects before moving on. Finally, when you feel like you've learned everything then give yourself a final exam to see if you remember everything and can still do it right. Basically - treat it like a math class. It's not just memorization (you need to memorize the strategies, that's for sure - you need to be really fast at implementing BFS, DFS, binary search, etc. That should be wrote memorization but with a deep understanding).
- peferron 7y agoNot sure why you're being downvoted. It's definitely not that hard, and contributing to LLVM/Rust/V8 is not a requirement either (I would still recommend it, but mostly because it sounds interesting and you would likely learn a lot). Source: interviewed with 3 FANGs a few months ago without any significant open-source contributions, got L6 or equivalent offers from all 3. I also don't have a CS degree, for anyone who would feel discouraged by that. Edit: I don't want to minimize the effort involved, though—I did spend a lot of time learning algorithms and data structures over the years, but I enjoy learning this stuff and find it far more relevant in practice than most people here appear to think.
- agumonkey 7y agois there an agreed upon level ladder ? where can one (I) test to find his position on it ?
- peferron 7y agoI think the initial level is mostly a function of experience. Then depending on your interview results it can go up or down. In my case I interviewed at level 5, and did well enough to be invited to come back for another round at 6. I was super lucky to work with a gem of a recruiter at one of the FANGs who spontaneously pushed for 6 after my feedback from 5 came back positive. The other FANG was more reactive and didn't invite me back until I told them of the competing offer. So perhaps try pushing for it yourself if your recruiter is not as proactive and you feel you have a shot. Worst case they'll say no. (Or they'll say yes and you'll bomb the next round. That's not supposed to reflect negatively on your first round, although it would likely have affected me psychologically and made me less confident during the comp negotiation.) I ended up joining a company without levels, so I'm afraid I don't have any more useful information for you than what I gleaned as a candidate.
- cmonnow 7y agoyou got an L6 without CS degree? How many years have you been working in SW industry ?
- deleted 7y ago[deleted]