22 ms·
What is the engineering hiring bar?
- carapace 7y agoThis is so silly. Here's teh secret: your programming ability is set genetically by how much Yeti blood you have in your ancestry. Yeti half-breeds recognize each other (often unconsciously) by smell. That's why some people can get programming jobs hella easily while others just can't even after strenuous training. Check your feet. If your second toe isn't longer than your big toe you're screwed. Give it up. You might as well go get an MBA or something.
- juped 7y agoHow do the Yetis get onsites to smell one another?
- deleted 7y ago[deleted]
- carapace 7y agoIt's a psychic stench, detected through the third nostril, that infuses the bits of their email electrohomeopathically when they send their resumes.
- agitator 7y agoLooks like all the remote interviews during this pandemic are evening the playing field. GG Yetis.
- gregdoesit 7y agoThe article could be a_lot_ more concise. Here’s what I got out of it as the takeaway: > And that helps us understand why Recursive Cactus spends so much time practicing. He’s training himself partially because his current company isn’t developing his skills. Exactly. Recursive Calculus wants a better job, (a lot) higher pay, a better environment. So he spends time prepping for this. And companies who can offer all of this, and get a lot of interest already, they are selective, minimising false positives in the hiring process. They expect working code in the coding challenge, a good attitude and some other skills like demonstrating decent systems design. Recursive Calculus also preps so much as his interview process to his current place was different and he _really_ wants to nail these interviews, get a bunch of offers and get into a bidding war before saying bye to his current workplace he’d love to leave for something better. There wasn’t really any actionable thing in this article that I found, or applicable advice. The end.
- twomoretime 7y ago>And that helps us understand why Recursive Cactus spends so much time practicing. He’s training himself partially because his current company isn’t developing his skills. I develop software full time and have some 10 years of experience depending on how you count it, and I'm absolutely terrible at leetcode style problems and find whiteboard questions difficult for non programming reasons. I know it wasn't the point of the article, but there's a deeper problem here that most FAANG programming questions aren't actually testing work related code skills. At my company we give two very basic tests, takehome. Both can be completed in 15 minutes if you're rushing. Far more useful of a tool than any of leetcode style questions.
- mav3rick 7y agoHow is your test proven to be better than the others ? Can't the FAANGs be more selective ?
- twomoretime 7y agoWe can't reasonably priced which is superior for selection, but in our opinion the process is much saner and less resource intensive on our part. I wonder if the modern interview process at large orgs is built on a false sense of security. They are possibly overly selecting and perhaps successfully choosing above average candidates but missing exceptional cases who fail to conform to their rigid criteria.
- mav3rick 7y agoIn the numbers game they are okay with false negatives.
- dvirsky 7y agoThe big companies don't care if some great candidates can't do these kinds of problems, there are many others who can. They care about not hiring bad candidates, period. Anyway, I've done both types and for me the false positive rate for take-home assignments is far greater. I've seen people ace home assignments and later turn out to be mediocre engineers. Maybe they were cheating. Maybe not. But I've never seen anyone really ace an on-site coding question and not being great (I'm sure there are some, this is just my own experience).
- sxp 7y agoThe section in that article about 'Defining “Intelligence”' is similar to a previous discussion on HN about whether a FAANG interview is just "an IQ test which is disguised as a relevant skills test for legal reasons". [1] This article does a good job of supporting that claim. Theoretically, both IQ tests & FAANG interviews test for whatever "innate intelligence", but in practice, both of them can be gamed by grinding brainteasers & leetcode respectively. [1] https://news.ycombinator.com/item?id=22705057 https://news.ycombinator.com/item?id=22705057
- chrisweekly 7y agoThe tech interview process is just so badly messed up. Even if the process were a reasonable proxy for IQ (it's not), or correlated somewhat with use of actual required technical skills (it doesn't), it still almost entirely ignores the EQ (emotional intelligence) and CQ (cultural intelligence) factors which comprise the other 2 legs of the "good hire" stool.
- twomoretime 7y ago>Even if the process were a reasonable proxy for IQ (it's not), or correlated somewhat with use of actual required technical skills (it doesn't) I wouldn't be so quick to presume that FAANG IQs aren't above average. >the EQ (emotional intelligence) and CQ (cultural intelligence) factors which comprise the other 2 legs of the "good hire" stool EQ may be difficult to measure but the spoken part of the interview should generally take care of 'CQ', if that's a thing. IMO the only surefire way to hire is to bring people on temporarily and evaluate their performance in 1-3 months. I don't know why this isn't popular.
- T-hawk 7y agoOne answer to your last: people aren't going to leave their permanent job for one that has a risk of being temporary.
- twomoretime 7y ago
- nimbius 7y agothis is fine, so long as you're looking to get hired by a megacorp (fine,faang.) but for most people theres a point of diminishing returns. Do you want to spend six months to a year out of your life drilling for a $10k raise working for a company that works you like a rented mule anyhow, or do you settle with your present quality of life and conclude 70k is enough to do whatever you wanted to reasonably do anyway. Then theres the variable of google et. al. and their random eleven-round interviews. Are you patient enough to sit through questions like "how many kegs of beer on a schoolbus" and "how to build a datacenter on the moon" from some grinning techbro only to be told youre re-invited to another round of interviews? Finally, age. You can cram and cram but if youre over 50 your chances of building that moon datacenter are better than getting hired.
- dudul 7y ago> Are you patient enough to sit through questions like "how many kegs of beer on a schoolbus" and "how to build a datacenter on the moon" from some grinning techbro only to be told youre re-invited to another round of interviews? I systematically end all interviews when they've reached this point. As soon as the smart-ass finishes their stupid question I just say "I think we're done here". I can stomach take homes, even whiteboarding, but don't ask me how many tennis balls would fit in the Empire State Building.
- praptak 7y agoDoes this actually happen? I thought these "get out of the blender" and "why are manholes round" puzzles were the waterfall of hiring. They were written about because they were so bad, everybody agreed they are horrible and they weren't that popular to begin with.
- dudul 7y agoThe last time I really looked for a job was maybe 4 or 5 years ago. I interviewed at ~5 or 6 companies and I got a variation of this 2 or 3 times. So let's say 1/3rd of the interviews. They do happen yes, I don't know if it's common or if I'm just not very lucky :)
- dudul 7y agoI don't have a study to back it up, just my empirical observations over the past 12 years, but I'm kind of convinced that hiring engineers almost randomly (let's say they can speak clearly and write a fizzbuzz) would have almost the same outcome as designing and implementing these complicated and convoluted hiring processes. I have yet to work with the mythical "really really bad engineer that completely screw up your project and does it in such a stealthy way that you don't even fire them before it's too late".
- mooneater 7y agoI do think it really depends on the complexity of what you need to build. The skill level needed to not screw up large complex problems is exponentially higher than for simple small problems. Companies and products vastly differ in this regard.
- convolvatron 7y agothat seems ... impossible. almost every single project I have worked on always ended up not really what we had hoped for. maybe you've generally worked at larger places and I've generally worked at smaller? 3 reasons I can think of why projects fall short - hubris: you were never really going to be able to do that in the time and resource limits anyways bad actor: maybe we should really fire Joey, but hiring is hard, and stuff is kinda getting done..if we can just keep it together another quarter general structural dysfunction: we have a bad culture. no one can really depend on any one else, and its kind of not clear what we're doing anyways. (1) is a given, but usually isn't the whole story. (3) almost mandates the appearance of (2). but (2) kind of depends on having at least some kind of twisted competence, otherwise they wouldn't be able to do that much damage. so are you in a (3) dominant situation...or do you live in the place beyond the mists where we get what we need to done and have a great time doing it?
- dudul 7y agoI think you may have both misunderstood my comment and made my point. 1) if that's the case, how could spending time and resources in complicated interviewing processes help with that? 2) if you don't f*ck with candidates and have them jump through stupid rounds of interview, hiring may not be that hard. 3) Bad culture comes from the top, not from the code monkey. Sure projects fail, sure they end up being not very satisfactory, but it's not because your complicated interviewing process didn't prevent you from hiring bad people.
- christiansakai 7y agoHoly cow, is Recursive Cactus me? Lol I can totally relate. And I believe a lot of people on cscareerquestions subreddit and people at Leetcode forum can relate. 100%? Accurate. Also, just to give a context of the hiring bar these days. The FAANG companies coding question is no longer on Easy even on phone interview. Expect at minimum 2 Medium difficulty questions in a phone interview that need to be able to be solved in optimal space time complexity in under 45 mins (or more precisely, under 20 mins each because if the first question is not solvable under 20 mins then they will skip that and you already failed). So for those FAANG engineers that were able to get in early, whether by acquihire, by diversity hire, by luck, by normal hire. Stay there as long as you can especially in today’s times. Because once you quit you’ll experience a rude awakening for getting right back in, unless those companies waive you in because you’ve been in before. And yea, I’m talking for both fresh graduates as well. There are instances where a fresh graduate get 4 out of 5 hard leetcode questions in an onsite. Yea, its that crazy. I'm strictly speaking from personal experience and by reading subreddit cscareerquestions and Leetcode forum on people's experiences. So at this point, a lot of people (including me) already solved hundreds of Leetcode questions, and still got rejected. So this is now a luck of the draw game, apply to those companies every year (because once you get rejected then you are not allowed to apply within a year), one day you will get your lucky strike. One way to maximize your luck if you really want to get in, assuming that you are not lucky, not part of diversity hire, not part of acquihire: - internship - contract work Damn I have to EDIT so many times lol. But due to this Leetcode style training that a lot of us are going through, we literally have less time to learn anything else, for example, learning new libraries, new frameworks. I personally think learning new frameworks or libraries are kinda dumb because it is easy to pick up on the job anyway, but nevertheless when you want to look for a job you need these on your resume. Say you only know REST but now companies want gRPC and Protobuf then you gotta learn those on the side. Assuming that you are a normal working person with hobbies, families, responsibilities, activities on the side you need to pick your choices carefully. So this has an interesting result. The more you prepare for FAANG and doing Leetcode style questions, the less time you prepare for mid-tier companies and the lesser the chance you will get a better offer from them. So you have to go ALL IN one way, can't go half ass one way or the other.
- sudeepj 7y ago
- Ididntdothis 7y agoI had a conversation with a fellow engineer and we pretty much concluded that our current company would not hire us with our current resumes if we had to go through the interviewing process. And we are generally viewed as some of the higher performers. I bet the same is true for a lot of other companies.
- christiansakai 7y agoI suck at writing resumes, to the point that recruiters and even hiring managers at companies that I applied to give me a pity and even talk on how to improve my resume DURING INITIAL PHONE CALL lmao.
- PascLeRasc 7y agoThat probably means you're underselling yourself. Have you tried taking their advice?
- christiansakai 7y agoCurrently working on it.
- Psychlist 7y agoI've had that advice myself. and they were right. Once my resume and application was cleaned up I found better jobs.
- dang 7y ago(Your comment was probably downvoted because it broke this site guideline: Please don't use uppercase for emphasis. If you want to emphasize a word or phrase, put asterisks around it and it will get italicized.) (It's a fine comment otherwise.) https://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html.
- christiansakai 7y agoOh I see, makes sense. Thanks.
- ng12 7y agoI can usually spot the candidates who are leetcode junkies. This is why I direct our interviews to be as pragmatic as possible. Most of our question bank comes from actual code one of our devs had to implement. I'm fairly confident that if you've studied hard enough to solve these problems easier the studying just paid off by making you a better developer.
- christiansakai 7y agoIronically, I think I develop this ability as well through solving hundreds of Leetcode questions myself. At some point I actually have to step back and think, act not to solve it too quickly otherwise the interviewer will spot me as Leetcode junkies.
- blub 7y agoThis is beautiful. As selection pressure increases, the candidates evolve to mimic all the criteria of the selector.
- christiansakai 7y agoNatural selection at work, even in our man made world...
- dominotw 7y ago> I can usually spot the candidates who are leetcode junkies. what are some of the tells ?
- christiansakai 7y agoI can tell you how I spot: 1. Doing it in Python. "Can I do this with Python instead of X? because Python is really fast to write and I don't need to worry about small helper functions" 2. Know various approaches more than ordinary people. "Ah we can solve this in various approaches. We can sort this one, and the problem will be log N, or we can use Heap and make it log K. We can use stack but does it get counted as space in the space complexity? Oh I can use deque here but let me just use Python list because Python list is very versatile, it can be anything, it can be array, can be queue, can be stack" 3. Know the solution right away even the non obvious ones. One example is the problem of next permutation. Given a number 1, 3, 2, 4, 5. Find the next permutation in O(n) time and O(1) space. This solution is easy but if you have never done it before there is no way you can come up with a solution complete with code. Another problem, given preorder and inorder list, construct the binary tree. There are many non obvious problems like this.
- xenihn 7y agoThe spread is insane. I have interviewed at one FAANG three times within the same year (this one does not have cooldowns). On-site DS&A question difficulty capped at two-sum with no twist for the most recent one (extremely easy if you have seen it before, still doable for most people if they haven't), binary tree LCA (impossible within 30 minutes if you haven't studied binary trees, moderate if you have but have never attempted/seen LCA, easy if you have) for the first one, and a keypad DP problem (hard for anyone who hasn't practiced DP imo) for the middle one. There are people who are extremely good at DS&A interviews and can reliably pass almost any loop at any FAANG company that sticks to conventions. But I think most people don't fall into that group, and it generally comes down to luck and not getting a single question that stumps you.
- chrisseaton 7y agoI think most people should dis-regard what FAANG do. The hiring bar there is so astronomically high that they're only hiring people at the very top of their field. I wouldn't try to take any lessons from FAANG and apply them to the rest of the industry.
- dominotw 7y agoI've gotten same interview that GP described from mid tiered tech shops in salt lake city.
- no_flags 7y agoI think some places think "we're just as good as FAANG so we should have the same bar."
- xenihn 7y agoYour takeaway should be that the spread is huge and there is no guarantee of consistency based on company, team, or even individual interviewers.
- amznthrowaway5 7y ago> "The hiring bar there is so astronomically high that they're only hiring people at the very top of their field" The average engineer at FAANG is less than stellar, let alone at the top of their respective fields. People who are actually at the top of their fields can often skip leetcode interviews and only get domain specific questions related to their field of expertise.
- tomgp 7y ago> 4:00pm – 7:00pm Dinner with wife & friends Do people really eat dinner at this time on the weekend? What about on weekdays; you have 30 mins to 'hang out with wife' then it's meditation and algorithm practice till bed time? A little depressing.
- introvert0 7y agoApologies in advance for being harsh, but are you a member in order of your state association of engineers, did you pass the FE exam?, was your school accredited to grant engineering diplomas? If the answer is not, please do not call yourself engineer
- ardit33 7y agoThat’s not how software engineering works.... I am glad we don’t have to have “certifications” by some bureaucratic local agency to work.
- introvert0 7y agoYou do realize you make a disservice to those who studied and worked hard to obtain a proper engineering degree, right?
- pwinnski 7y agoWelcome to Hacker News. I think you might be lost. Friendly advice: Try spending some time reading posts and comments for a while to become familiar with the site before jumping in. Again, welcome.
- username90 7y agoFirstly software engineer is not a protected title in most of the world. Secondly the major way to properly learn proper software engineering is to join a top company and learn on the job. I don't see software engineering degrees containing anything useful at all compared to computer science degrees, they just contain some ancient practices which most of the industry moved past ages ago. So I don't really see how someone who studied software engineering at school is more of a software engineer than a person who designs and builds distributed systems at Google.
- erik_seaberg 7y agoThe "Fundamentals of Engineering - Electrical and Computer" exam requires topics from differential equations to impedance in AC circuits to op-amps to frequency modulation. I would never gong a candidate for not knowing any of those things, because we write computer software; we don't make our own servers out of magnetite and sand.
- frozenlettuce 7y agoRecently I had two different online testes where a good chunk of the questions were about Javascript generators - a feature that is very hard to see in the wild. Thankfully I'm already employed, but this was not the case I would lose a good amount of time studying this subject in depth (only to not use it later)
- bdcravens 7y agoThe best kind of practice is the kind you get paid for. Freelance work (if your current contract permits it) always has opportunities to stretch your legs. Also, I think most companies would prefer breadth of skills over someone who knows the answer to a gee whiz algorithm. Put a different way, companies prefer someone who is valuable over someone who is "smart".
- jariel 7y agoThe solution: dump (popular) algorithms! All whiteboard problems should be fairly novel and 'not possible to practice' or else you are testing their preparation, not their ability. (Admittedly, preparation is a measure of something, and 'conquering all algorithms' is a measure of something.) But neither are the measure you're looking for. And 'General IQ' is not only it either. The ability to decipher problems, understand requirements, grasp tradeoffs, translate that into reasonably clean code, keep possibly complex systems in your head, work with others and maintain a positive disposition. Finally, the elephant in the room is 'perceived confidence'. It took me 30 years at least to be able to understand how well a problem was communicated, and how good the solution actually is. Someone who is confident, who 'looks the part', who can communicate the issue clearly ... may still have a mediocre problem. The weird, lacking in self-awareness, a shy-but-blunt nerd who may be totally unsure of themselves, sweaty palms ... may possibly have just as great as a solution. We are hard-wired to see 'patterns' and our intuition misguides is significantly on this issue. It's a lot of hard work to try to ignore 'the bad parts' of one's own intuition while keeping the 'good parts'. One of the solutions to this literally is data. Instead of 'feeling' how they did, a checklist of things might help us structure in our minds how truly well something was accomplished. And of course, we can't ignore the fact that communicating matters, it just matters differently in different contexts.
- thaniri 7y agoI applied to a new grad production engineering job at Facebook recently. I probably did about 80 leetcode puzzles, let's just assume that is 1 hour per puzzle. So 80 hours of leetcode puzzles. In addition, 10 hours were spent reviewing my networking trivia (focused on layer 2/3/4 and HTTP). The PE recruiter at the company also provided a study guide packet. I elected to sink about 10-20 hours into studying the Linux troubleshooting and finding some common questions off of Glassdoor to understand the type of things they will be asking. Finally I tried to review some system design stuff (but as a juniour in this industry didn't really know how) Just followed some study guides from the system-design-primer on Github. Probably 5 hours dedicated to this. Let's just round it to about 100 hours of prep in about a month and a half. While juggling a full time job as a devops engineer. Afterwards I was rejected :) Ultimately I wasn't surprised I was rejected. I was under the impression that I needed to pass all 7 of the interviews in order to get an offer (2 phone screens, 5 on site.) I know for sure I failed the system design interview question HARD. Like irredeemably hard. Regardless of my performances in my other interviews, I know I definitely did a good job in my network and OS interviews but it doesn't matter. I do wish that companies would provide a feedback system. I would love to know where they thought I was weak so that I can improve upon that later. But there is nothing beyond "we decided to pursue other candidates." Here's the crazy thing, though. It isn't even a question in my mind that I should try again if another FAANG recruiter reaches out to me. I will sink another 200 hours if necessary to pass their interviews because of what it represents to achieve getting hired at such a firm. There's prestige, salary, and quality of life that just can't be matched by any other tech companies.
- nojvek 7y ago> There's prestige, salary, and quality of life that just can't be matched by any other tech companies. Not sure about prestige and quality of life. Salary, yes!. I happily quit my Microsoft for a slightly lower pay and way better quality of life. Right now AAMFGN are hiring tons of engineers. So their quality really varies and different teams have different bars. You can't say they worked at Google so they must be good. We are humans and we have our biases. Like it or not, hiring is biased (mostly towards white/asian males from prestigious universities). To counteract, there's also diversity hires (with various degrees of definition what it exactly is). For some people, money is much higher priority, for others it's not. Just be sure what you really want from life. Remember, it's not a race.
- dmoy 7y agoMy hiring bar (for coding) has gotten easier the more I interview (as the interviewer). I don't ask any kind of super tricky algo questions, because the signal you get from those tends to be closer to "is the candidate familiar with this specific area of algorithms" than anything else. I don't ask any questions that take a really good candidate more than 20-30 minutes to solve, because then I can't scale the question down. You can always scale a question up. I used to ask questions that were fairly close to what you find on leetcode now, but the signal isn't great anymore. It used to be good at identifying candidates who can quickly figure out the right tools to solve a given problem, but now it ends up identifying candidates who spent a lot of time on leetcode. Now I mostly ask questions that involve * transforming some data using a less than stellar API (using a REALLY simple transformation) * holding a bit of state to accomplish the above transformation * throwing a few edge case wrenches at the candidate And the last part is technically baked into the question - a candidate who can fully grok the state could determine all of the edge cases on their own. But even if they don't I'll explain them and see how the candidate handles. 'cus in the real world we have unit tests, and I don't expect TC to really figure out all the edge cases in 30 minutes. A couple of them, sure. And they better be able to handle them once pointed out. Candidate forgets that a java collection can have null because you can't have a List of primitives? That literally doesn't go into my feedback at all (and depending on how recently I've written java, I might have forgotten myself). Candidate writes a function that doesn't compile because there's no return statement? I'll point it out, maybe make a note, but don't really hold it against them because we write code in IDEs. Candidate spends 10 minutes trying to figure out how to force a single variable to do the job of three different variables, despite increasingly desperate hints to just store more local data? Yea that might go poorly in feedback. But yes, I expect a candidate to be able to write 10 lines of code to answer a data transformation in 30-45 minutes. And yes, when either they figure out or I point out a couple of edge cases, I expect that 10 lines to not morph into a congealed mass of horror that cause their original solution to break.
- meestaahjoshee 7y agoid love to interview with you
- faanginginthere 7y agoAfter 9 years at the same company, I left my job at the beginning of January 2020 to dedicate myself to leetcoding and interview practicing in the hope of getting hired at a FAANG, more specifically Google. I really started dedicating all my time to interviewing January 1st. It is now March 31st and I am now abandoning the idea of getting hired at a FAANG, or any larger-sized startup and will target early startups with lower entry bar. Yesterday I had my “virtual on-site” interview with Google and it went poorly. The 1st interview was behavioral and I think it went fine, but I’m not sure the interviewer was thrilled. The 2nd interview was horrible. First, the interviewer had a bad internet connection which made it hard to understand her (I asked her to turn off her video to help, which she did), 2nd she jumped immediately to the problem without introducing herself or anything which made it feel like she was in a rush, 3rd she simply started reciting her problem statement, which was hard to make sense of because of her bad internet connection. I asked her if we could write it down in the shared google doc, so she proceeded to copy/paste a blob of text that seemed to be taken from the _middle of a problem statement_. It had no context and no actual instruction like “write a function that will calculate x and y”. My NDA unfortunately prevents me from sharing the actual thing. Because of this, I did not know what I was supposed to do. I asked her multiple times “so, should I write a function to do this and this?” and she kept reciting the ambiguous problem statement over and over in an impatient and dismissive manner. I felt completely out of place. Then when I finally started making a little bit of progress on guessing what she actually wanted me to do, I started hearing background noise of someone chopping vegetables, and moving things around: extremely distracting. I would ask her specific questions and from her lag in answering and her short 2 words answers I just know she wasn’t paying attention. It took all the strength in me to not tell her how disrespectful it felt to be interviewing with someone that clearly did not want to be here and wasn’t paying attention. At the end of the interview I thanked her a lot, smiled big and swallowed my pride. I left for our 1 hour break and took a walk to reset my emotions and tell myself that the interview could still go well and that I still had my chances. The 3rd interview went well. The interviewer had a good connection, a good mic, was understandable, introduced himself and even said “before we start, I want to remind you that if one of your interviews went bad, don’t sweat it, it’s all fine. We’re here to have a conversation. I’m not looking for a right or wrong answer, I just want to see your thought process”. It took him literally 2 minutes to set me up for success. He then proceeded to give me a problem statement, with some context around it, and we started proceeding to _have a real conversation_. I wrote code that, according to my interviewer, compiled correctly and was close to the actual code it was based off of. I left this interview feeling good 4th interview went bad. Interviewer was 10 minutes late and had a bad connection, but aside from that introduced himself correctly, gave me a clear problem statement and although did not talked much at all during the interview, he did give me a few hints here and there. The reason I failed is that I couldn’t solve a simple algorithm and started panicking internally. All on me. I left the interview hoping the next one would go better. 5th (and last) interview went meh. It was a system design interview. I was hoping to be having a conversation with the interviewer but he just was speaking much at all. I hung up and cried a little. It’s really hard emotionally to accept this. Before my Google interviewed I got rejected by AirBnB, Twitter told me they don’t think a senior role is adequate and will see if they have “mid-level” roles (which is totally fine, but I’m left wondering if that’s not just a way of rejecting my candidacy), and I cancelled Facebook because what Airbnb taught me is that I’m just not ready. That’s not a lot of interviews you’ll tell me, but I spent _months_ preparing. Because I know my algorithm and problem solving skills are lesser, I spent hours studying on leetcode, reading an operating systems book, reviewed “cracking the coding interview”, reviewed “introduction to algorithms”, re-read some chapters of “TCP/IP illustrated”, spent hours watching system design videos, hours watching algorithm videos. I spent $5000 on an interviewing/algorithm bootcamp. I know that I am not a bad engineer. I started programming at 10 years old (I’m 33), taught myself VB, C and C++ (though I haven’t coded in these for many years now). Computers have been my life’s passion. I designed my former’s company infrastructure and made it scalable and resilient. I was a major influencer in my team and my coworkers trusted me. I know I’m a good system administrator; I might be less good a developer but I know how to code well; I know how to influence my coworker into following best practices, reading/writing documentation, being security conscious; I stay informed on the latest trends, I try new technologies, learn new languages, not even out of necessity but because that’s what I love. But none of this seems to be enough. And maybe it really isn’t for a company like Google. And maybe I wouldn’t be successful at Google if they hired me. What I know is that these past 3 months have left me with little confidence about my skills and just wondering if I’m cut out for this. I’m trying hard to not feel defeated, but damn, that hiring bar in FAANG interviews can really make you feel like crap.
- solidist 7y agoThe word "experience" only appears twice in the 26-minute read.
- juped 7y agoThe conceit that it's a "bar" of any kind is what allows it to continue.
- Scea91 7y agoSo I got contacted by Facebook London about 2 weeks ago. The job description sounded quite interesting, but when the recruiter described the interview process and actually sent me a deck with resources for preparation for coding interview he lost me. The reason is that I am absolutely satisfied with my current job and decided that I don't want to bother at this time with preparation for an interview. Maybe I would pass it without prep, but I would not feel comfortable showing up without putting any time in. I get a feeling that process as this somehow does not select for top performers that are already working on exciting stuff.
- wayoutthere 7y ago> I get a feeling that process as this somehow does not select for top performers that are already working on exciting stuff. Nope; but it does sound like it selects for people who are obedient and willing to do a whole lot of extra work. Which might be the point?
- southphillyman 7y ago>I get a feeling that process as this somehow does not select for top performers that are already working on exciting stuff. There are senior engineers who essentially work as tech leads making $500K+ at these companies. It's a tradeoff to prepare but if you can essentially double/triple your salary to do comparable work while also getting whatever benefit from brand awareness in your social circles....
- Diederich 7y agoOver the past 27 years, I've worked for 8 different organizations, including two FAANGs, and I've never technically prepared for any interview. This is not some kind of indirect boasting about how smart I am. Far from it. I feel positively dumb compared to my peers. I rarely fully nail the most difficult algorithmic interviews, and I don't think that's the point. I think I get most of my 'points' by taking a very direct, easy going and open approach to things. The phrases "I don't know" and "I'm not sure" will get practically worn out at the end of my interviews. I don't think it's what one knows as much as it is about how one approaches and thinks about problems. Second item: do the interviews anyway, even if you don't necessarily intend on leaving. I'll tell recruiters that I'm pretty happy where I'm at, and that it would take some kind of enormous comp package to entice me to move. But we'll still do the whole process, and I'll often end up turning down a pretty solid offer. For many/most companies, turning down an offer 'locks' you out for a year or so; no big deal. I really enjoy interviewing at the top tier companies, because, in the end, I always learn a great deal. Like most things, interviewing is something you can get good at with practice. What's nice is that you have the opportunity to get several hours of face to face time with really smart people at no out of pocket cost, except for a day of PTO from your current job if you live local.
- president 7y agoI have always thought maybe there should be a path for people who are terrible at coding interviews but are confident in their abilities? Perhaps maybe a pass on the interview but then you work provisionally for little to no pay at first until after a discretionary period where they can decide whether they want to keep you or not.
- overgard 7y agoI feel like giving people a decent coding project is, at the moment anyway, the best approach. If I'm interviewing someone I really just want to see these things: what their code is like, what their final result looks like (if there's room for creativity -and there should be), how they got there (revision history). And then in the interview portion I just want to get a sense of their personality and their decision making process on the project. It's not perfect but it gives a sense of if they can finish a likely task, and if they would be easy or hard to work with. Btw, none of that involves puzzles or trying to guess their IQ. If your company is like google in 1998 maybe you care about that, but chances are you need someone to build something relatively straightforward, not invent PageRank. Honestly having a super genius on board might be bad if you're not solving a truly hard problem - they might get bored and check out. It's a valid complaint that these projects can take time, but job searching is pretty time consuming anyway, and joining the wrong company or hiring the wrong person is way more so.
- drewcoo 7y agoActual professional engineers don't have strange, gamified interviews to guess someone's skill level. Is all of this modelling the problem of the hiring bar or training to beat it really solving the right problem? Do any of the solutions to this constructed problem actually work reliably or are they just elevator close buttons, frobs that may not really function but provide a sense of control?
- starky 7y agoI work in tech in a non-coding discipline. I was reading this article thinking, "Are there really that many people out there that you need to separate the good hires from the average hires?" Every time I've interviewed it is hard enough finding a single competent hire at all, never mind trying to grade hires to separate multiple seemingly good candidates.
- deeblering4 7y ago> 7:00pm – 7:30pm Hang out with wife Sorry, you lost me immediately. As a married person this is not a realistic typical schedule if you wish to stay married.
- DeathArrow 7y agoI don't get it why people try very hard to get a job at FAANGs. Could it be because they would feel like they would become part of an elite, could it be because that once they have a FAANG company in their resume, they won't have to pass lengthy and stressful interviewing processes anymore and won't have to job hunt. But there are many other software engineering jobs with at least as interesting problems to solve, at least as good payment, at least as good job security while being less stressful. For me, hunting specifically a job at FAANG doesn't pay off. I'd accept any job that meets my criteria of what I have to do, payment and stress level.
- joshuamorton 7y agoI see this said sometimes, and frankly I doubt it. A mediocre performer at Google or Facebook with 3 years of experience is pulling in 250K+. At Amazon and Microsoft, that's a bit lower but still over 200K. And there's upside for a higher performer. The only places that match that kind of progression are bay area startups/public unicorns and quant finance and hedge funds. And for a competent person, that growth doesn't stop for another few years.