TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

The dystopian world of software engineering interviews

1027 pointsby asanghaover 5 years ago

113 comments

ideal0227over 5 years ago
When my classmates were preparing interview coding questions, I was working on a mini TCP implementation and a toy kernel.<p>AWS rejected me since I failed to write prefect code to traverse a tree in level order. Google did not even give me an interview since I told the campus recruiter I have not prepared for the coding questions.<p>Then I ended up with an internship at CoreOS and created etcd. I am glad that they did not hire me back then.<p>Today, I am sure I still cannot pass the coding interview at &quot;Giant Search and Advertising Company&quot;, but they run a lot of my code in production :P.
评论 #22332277 未加载
评论 #22332310 未加载
评论 #22332317 未加载
评论 #22332452 未加载
评论 #22332602 未加载
评论 #22340239 未加载
评论 #22337647 未加载
评论 #22334586 未加载
评论 #22339534 未加载
评论 #22333284 未加载
评论 #22332408 未加载
评论 #22333063 未加载
评论 #22334571 未加载
评论 #22336031 未加载
评论 #22333326 未加载
评论 #22332610 未加载
评论 #22334629 未加载
评论 #22332339 未加载
评论 #22333259 未加载
评论 #22335468 未加载
评论 #22333091 未加载
_bxg1over 5 years ago
A few months ago I interviewed with Major CDN Company for a front-end dev position. They sent me a take-home React&#x2F;NextJS project stub with dependencies and such already defined, and instructions to finish building out the full app. &quot;Perfect!&quot;, I thought. No stage pressure, plenty of opportunities for going an extra mile. They encouraged me to get creative and I did; it met all the requirements and then some. I proudly submitted it.<p>A few days later I got an email saying, &quot;Sorry, we&#x27;re going to pass. The feedback from the person who reviewed it said that, &#x27;It crashed with res.flat() is not defined when we tried to run it&#x27;&quot;.<p>&quot;That&#x27;s weird&quot;, I thought. I assumed they were running it in a different browser that lacked Array.flat(). Annoying, but maybe browser compatibility was part of the test (it hadn&#x27;t been stated as such). So I did some digging just to be sure; I asked what version of NodeJS they were using. Version 10. Turns out that version of Node is somewhat old and doesn&#x27;t have flat(). Huh. Dug some more.<p>.flat() wasn&#x27;t even called in my code.<p>The stack trace went down into NextJS itself. They had given me a project with a particular dependency declared and then run it in an environment which was incompatible with that dependency, and then immediately punted it without any further debugging. I tried to engage my contact via email, presenting the proof that it wasn&#x27;t my fault. I got an icy &quot;Thanks for your feedback, we&#x27;ll forward it to our hiring team&quot;, followed by silence.
评论 #22332770 未加载
评论 #22335472 未加载
评论 #22333802 未加载
评论 #22333071 未加载
评论 #22333273 未加载
评论 #22332741 未加载
评论 #22333106 未加载
评论 #22335389 未加载
评论 #22333031 未加载
评论 #22332756 未加载
评论 #22334130 未加载
评论 #22333064 未加载
glofishover 5 years ago
In my personal experience, having interviewed dozens of candidates (data science), I believe that asking &quot;easy&quot; and &quot;simple&quot; questions is the most effective way to probe the problem-solving skills of a candidate. Fun and interesting solutions to easy questions are hallmarks of great individuals.<p>The question would go like this:<p><i>Suppose I have a column-oriented file and I want to print out a column in a reverse-sorted order. How could I go about it?</i><p>This question is among the most effective ever. First it filters out the FizzBuzz failures right away, let&#x27;s you see immediately how people think (does the candidate want to code it up or understands that they could do: cut | sort| head)? It lets you explore the various aspects of sorting numerical, alphabetical, different locales, in numerical you can have generic numerical sort etc. Then what if the file is really large, now a much better approach could be to split sort then merge sort back into one file.<p>everyone with real work experience has a story about sorting.<p>but then you can move on, let&#x27;s do it in your favorite programming language, then explore of what if the data is &quot;infinite&quot; long, a stream ... and so on<p>it is a topic that can produce very interesting solutions, nobody is stressed out, and people that &quot;fail&quot; do understand why.<p>Edit: I will also say I feel that I can learn more about a person based on how they respond to easy questions. Are they cocky, are they showing off, are they rattled etc.
评论 #22332707 未加载
评论 #22332214 未加载
评论 #22335462 未加载
评论 #22332222 未加载
评论 #22436058 未加载
评论 #22343943 未加载
评论 #22332083 未加载
评论 #22332129 未加载
评论 #22332119 未加载
proximitysauceover 5 years ago
In addition to all of the very dystopian examples given in this post, there are other non-technical, super-dystopian things that have been popping up as &quot;trends&quot; in the tech industry.<p>Ever heard of top-grading? It&#x27;s the most oppressive interview technique of all time. A series of grueling multi-person interviews. A retrospective of all work experiences since <i>high school</i>. You also have to get multiple prior employers as references. Apparently top-grading is used to weed out &quot;liars&quot;. Imagine what kind of place optimizes to find liars; maybe one with a problem with a lot lying? I&#x27;ve heard Twitter uses this technique (or did last year when my friend interviewed with them).<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Topgrading" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Topgrading</a>
评论 #22332233 未加载
评论 #22331912 未加载
评论 #22332352 未加载
评论 #22332039 未加载
评论 #22332481 未加载
评论 #22332144 未加载
评论 #22332055 未加载
评论 #22332112 未加载
评论 #22332710 未加载
评论 #22333312 未加载
parsimo2010over 5 years ago
Comedian Daniel Tosh had a bit about people that claimed to be smart, it&#x27;s just that they were just bad at taking tests. He said, &quot;oh, so you struggle with the part where we find out what you actually know?&quot;<p>I hear a lot of complaints about the &quot;typical&quot; software engineering hiring process, and it usually comes from the people that don&#x27;t do well within the current system. Could the process be improved? Almost certainly, I don&#x27;t think that anyone thinks that this is an absolutely perfect way to hire people. But it is an undeniable fact that some people pass this interview process; software companies do fill positions with this process.<p>So that kind of makes me think that many of the complaints are from people that wouldn&#x27;t cut it at a high-pressure tech company and would be better off coding internal software for a non-tech corporation. I&#x27;m sure that the hiring process at Kroger (the grocery store) is much lower pressure than Google&#x27;s. Google might not need you to code some efficient algorithm to search a b-tree every day, but they pay top dollar and can rightly expect that their software engineers can come up with efficient and creative solutions to hard problems without dragging the rest of their team down.
评论 #22332108 未加载
评论 #22332182 未加载
评论 #22332111 未加载
评论 #22332147 未加载
评论 #22332696 未加载
评论 #22332262 未加载
评论 #22332190 未加载
评论 #22332504 未加载
评论 #22334585 未加载
评论 #22333523 未加载
评论 #22332750 未加载
评论 #22332547 未加载
评论 #22333363 未加载
评论 #22332145 未加载
评论 #22333185 未加载
评论 #22332239 未加载
评论 #22332493 未加载
coconut_crabover 5 years ago
&gt; There is a cottage industry springing up around passing interviews<p>This, a million times.<p>I was told to practice solving dynamic programming problems to prepare for the interview[1]. Looking around the web I found out that people spending <i>months</i> solving <i>thousands</i> of dynamic programming problems, just for getting a job. This strongly reminds me of the rote learning I had to do in order to get into university, which includes thousands and thousands of integration, derivatives, series, lense placements etc... A nightmare I thought that ended decades ago.[2]<p>Now dp is all nice and cool, but I think most jobs don&#x27;t involve solving dp problems on a daily basis. Just like most mechanics don&#x27;t need to solve Lagrangian mechanics problems or civil engineer with continuous girder (the interview for those those two don&#x27;t have those either)[3].<p>There must be a better way to measure problem solving ability of a candidate, isn&#x27;t there? Something thay requires more dedication from the company instead of blindly followingbthe practices of Google.<p>[1] The position is EM at a offshore branch of a medium sized non IT company, way below the likes of Google.<p>[2] Typical Asian problem.<p>[3] I started as a mechanics, and then doing some civil engineering job, building bridge and such.
评论 #22332630 未加载
评论 #22333272 未加载
mLubyover 5 years ago
&gt; 23 interviews and I didn’t get a single offer<p>That&#x27;s… an unusually consistent signal. Suggests to me that either this person is getting into the wrong interviews (eg junior interviewing for senior role—though they say that&#x27;s not the case), or more likely there&#x27;s some hidden variable, like a bad reference, bad BO, really noticeable &quot;culture&quot; misfit, or other &quot;red flag&quot;.<p>Regardless, the general points are spot on; it&#x27;s a mess, for both sides. And even if the game weren&#x27;t improved, I wish we all gave and got more honest feedback (however illegal that would be).<p>Wishing you luck in this numbers game!
评论 #22333019 未加载
评论 #22336882 未加载
评论 #22333035 未加载
sigotirandolasover 5 years ago
It&#x27;s funny that the other day I was reading about the door policies of some top-tier Berlin nightclubs and it seems that the underlying processes are similar. The bouncers there do a &quot;door interview&quot; designed to not only filter likely bottom of the barrel (too drunk&#x2F;high, tourists) but you also need to know arbitrary and often unwritten codes (e.g. the name of the event, line-up, dress code, physical appearance) which is a proxy for showing you&#x27;ve put in some amount of effort and &quot;know the rules&quot;. It doesn&#x27;t seem to help much to possess the real values they desire (actually not causing problems once inside, actually enjoying the music, actually contributing to the party&#x27;s atmosphere) because they simply can&#x27;t screen those quickly enough.<p>In both cases this seems to be the market solution to the problem of having limited capacity, high demand, necessarily short interviewing&#x2F;screening processes, high cost for admitting sub-par candidates but low reward for admitting good candidates. And in both cases it seems most dislike the process for being ripe for arbitrariness and routinely turning away good candidates and &quot;there ought to be a better way&quot; but the process seems to have evolved naturally and doesn&#x27;t seem to go away despite there apparently being no major barrier for using a better process should it exist.<p>Just a random though.
评论 #22335829 未加载
f2000over 5 years ago
I&#x27;m in my late 50s and after 10+ years at same company I found myself on the job market. 1998 was the last time I had any real interviews - after that point it was all networking with no real tech interviews. After much cursing at the advent of white boarding and code tests, I finally just caved and bought a leetcode subscription and starting working problems I hadn&#x27;t seen since the late 80s in college. Long story short, After 8 interviews I landed a great job with Big Company. At the end of the day, it&#x27;s a game. You can play it or complain about it, but it is what it is. Has leetcode made me a better programmer? NO. What has helped though is stackoverflow and github.
评论 #22338271 未加载
userbinatorover 5 years ago
Well, if you pass that interview, you then get to help Giant Search and Advertising Company make the world an even more dystopian place...
mullingitoverover 5 years ago
I honestly don&#x27;t know why anyone gives FAANG recruiters the time of day anymore. I have yet to meet anyone who feels good about the prospect of working for them, anyone who works there who&#x27;s super proud of their mission, and the competitors who are looking to hire at that level of talent pay roughly similar wages from what I&#x27;ve seen.<p>My advice for this poor kid is to look around at startups and do more networking. FAANG jobs aren&#x27;t anything to aspire to anymore.
评论 #22332056 未加载
评论 #22332669 未加载
评论 #22332373 未加载
评论 #22332445 未加载
评论 #22332220 未加载
RangerScienceover 5 years ago
I&#x27;ve been doing initial phone screens (small companies) this week (two just today, actually), and with all of them when the recruiter (internal or external) gets to the &quot;we&#x27;d like to send you a coding challenge&quot; I interject with: &quot;Let&#x27;s do a code exchange. I&#x27;ll point you at some of my GH projects, and you send me some of your code&quot;.<p>So far they&#x27;ve accepted (&quot;I&#x27;ll forward it to the hiring manager&quot;), and it&#x27;s far too soon to see if this works... but I&#x27;m hoping.<p>The next step I&#x27;ll be trying is &quot;I&#x27;d like you to pay me for my time. If you&#x27;re not comfortable with that yet, let&#x27;s talk about what&#x27;s involved in getting there.&quot;
评论 #22333222 未加载
评论 #22331990 未加载
评论 #22332132 未加载
评论 #22333207 未加载
评论 #22332441 未加载
d1zzyover 5 years ago
It&#x27;s good to see people complaining about interview processes from Google&amp;co as it&#x27;s a good idea to always try to improve the current situation. However, I feel there needs to be some context here. While the interviews at FAANG seem not ideal, they are HUGELY better than most other tech interviews I&#x27;ve had experience with. In most other interviews you get to have a chat with some HR person that has no idea what the word &quot;variable&quot; means. You answer a set of standard questions and they barely know how to map your answers to the expected list of answers they have. Then they score you based on that.<p>Let&#x27;s not lose that perspective in discussions like these.
holografixover 5 years ago
Sincere question: What are you all doing accepting these multi-hour, multi-day take away free consulting gigs?<p>Say NO to this bullshit. Establish a deadline and clear guidelines and expectations:<p>1. I will not be doing any take away work at all.<p>2. You will explain how my GitHub repo, resumé, previous experience is insufficient to qualify me for the job in 100 words or more.<p>3. You will sign an NDA for whatever solution I created to whatever problem you task me with. You do not own my solution’s IP and may not share it outside of the people involved in my hiring process without my consent. 4. In the case where I fail the test you will explain in 100 words or more why my solution was unacceptable. 5. In the case my solution doesn’t compile&#x2F;run you will allow me 3 attempts&#x2F;1hour to provide you a solution and&#x2F;or give me a Dockerfile representing the env where my solution will be tested.
评论 #22335198 未加载
评论 #22335448 未加载
评论 #22336178 未加载
评论 #22344015 未加载
评论 #22335442 未加载
评论 #22337146 未加载
hinkleyover 5 years ago
&gt; It sounds to me that now companies are more afraid of hiring bad candidates than they are excited about the opportunity to hire a great candidate.<p>People have come right out and said they’d rather miss out on a good hire than get a bad one. There’s no “sounds”. It is.<p>Rather than more and more convoluted interview processes maybe we should work on better weed out techniques? I mean, what’s the overall cost really of picking the best person you saw in two weeks, getting back to the process of building new functionality (and your new hire training materials) and just kicking the dense ones with a little reflection on what we’re the objective warning signs this was going to happen?<p>I really think the thing is that people want to believe that training for their team is arduous, and so the cost of every person is huge. I’ve known more than a few people who philosophized about how much they learn about their craft by teaching. And it always seems like the people who create the biggest messes are the ones who can’t explain themselves.<p>Which we have known forever. In fact during the dot com era it was quite common to hire the most articulate people you interviewed. At least of they were wrong about something you’d know it right away, instead of them obfuscating their bad ideas.
daenzover 5 years ago
If all you care about is money, go bust your butt on leetcode and ace a FAANG interview. If you care about a work-life balance, and having a big impact on a small team, work for a medium-small startup and negotiate a flexible schedule.<p>Personally I get a huge kick out of making massive improvements to a small business&#x27;s tech and infrastructure. The lack of bureaucracy is a freedom that is often taken for granted. If you have the vision and drive, you can improve the business&#x27;s processes and product offerings by leaps and bounds...something I would argue is not readily available at a big company. Smaller companies are also much more willing and able to negotiate with you to help balance your life. A 4-day work week for example.<p>Again speaking anecdotally, I don&#x27;t need that much money. I certainly don&#x27;t need FAANG-level compensation. If I&#x27;m going to work somewhere, it&#x27;s going to be because I want to be with those people, working on those problems, and having a big impact. Not because of the fat paycheck.
评论 #22333083 未加载
评论 #22332885 未加载
评论 #22333328 未加载
评论 #22333671 未加载
eternalny1over 5 years ago
I recently flagged myself as &quot;back on the market&quot; on sites like StackOverflow and LinkedIn.<p>What a nightmare process this whole thing is.<p>I end up with a slammed inbox, constant cold-calls from head hunters that are all dead ends, and in between all of the noise are some real opportunities where I get moved from the tech screen to the final round quickly due to my seniority.<p>It&#x27;s like most jobs except there is a strange dichotomy between the technical screens, and the on-prem final rounds, which become more of a culture-fit type interview.<p>I feel like I am up against the Bob&#x27;s from Office Space a lot of the time.<p>If anyone needs a 30+ year software engineer currently working with .Net Core 3.1 on Azure Linux and Angular 9, please hit me up.
cdoxseyover 5 years ago
I was given a 2-hour coding challenge once to build a language server for a programming editor. It had to implement 3 functions:<p>1. show help text (type&#x2F;doc string) for a word<p>2. go to definition<p>3. find all references<p>My first thought was &quot;this is an absurd request for a two hour coding challenge&quot;. My second thought was &quot;boy I hit the jackpot, a few years ago on a whim I built my own language server for Go in sublime text and could probably crank out a new one pretty quick&quot;<p>Sadly despite my best attempt they rejected me. They never did give me an explanation. (fwiw: <a href="https:&#x2F;&#x2F;github.com&#x2F;calebdoxsey&#x2F;languageserver-challenge" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;calebdoxsey&#x2F;languageserver-challenge</a>)<p>I wish I could say it was a fluke, but I&#x27;ve been rejected by lots of companies due to the coding challenge. One day I&#x27;d really love to see what the passing code for these challenges looked like. Maybe I could learn where I dropped the ball.
评论 #22333668 未加载
Apocryphonover 5 years ago
What does it mean for the industry when there&#x27;s one of these articles on the front page every other week?
评论 #22331945 未加载
评论 #22331898 未加载
评论 #22333052 未加载
评论 #22331928 未加载
closedover 5 years ago
Something that strikes me in reading articles like this, is the distopian part often seems to be thinking about this:<p><pre><code> p(job_capable | not_interview_capable) </code></pre> That is, it&#x27;s crazy that an interview could miss so many people qualified for the job.<p>However, I wonder if oftentimes companies are aiming for..<p><pre><code> p(job_capable | interview_capable) </code></pre> If p(job_capable | interview_capable) is high, and p(interview_capable) is pretty good also, then the company will probably get what it&#x27;s looking for.<p>This means that the author is right to recognize the test is doing a bad job of measuring <i>their</i> job readiness. A reasonable instrument in this case doesn&#x27;t have to measure everyone&#x27;s job fitness (whether there are nasty side effects is another big issue).
评论 #22332126 未加载
scarmigover 5 years ago
This will probably be lost in the pile of comments, and I&#x27;m sure some people will interpret it as humble bragging. But I genuinely do not get the angst and anger over the tech screen, from the perspective of an applicant. So I want to explain why I like them.<p>My background: I&#x27;ve never taken any kind of CS or programming class in my life. Mediocre grades in college. My first exposure to programming was at age 24, as I fell into it with an IT tech position. Went from there to a series of jobs at several startups. Before applying to a FAANG, I went through Elements of Programming Interviews and solved all the problems in it, which at around 10 hours&#x2F;week took maybe 6 months of prep. I then sent in two applications, one to FB and one to GOOG, immediately got phone screens, passed, and then two weeks later went through the on-sites. Every one of the questions was either lifted from the coding prep book or trivial.<p>End result? Offers from both, joined as an L4, at a total comp higher than I had ever dreamed of, and significantly higher than friends in medicine who have easily spent over a hundred times as much time preparing and studying as I have.<p>So I&#x27;m kind of left flummoxed. Am I just incredibly lucky? There are huge issues in the hiring process, but if you want a job at FAANG, as far as I can tell it&#x27;s incredibly easy to game the system. Set aside some time each week (easy, if you don&#x27;t have kids), study for a couple months, and then apply. There&#x27;s literally no other field than ours that is so open to motivated people without paper qualifications and that simultaneously offers so much in terms of lifestyle and compensation. Whether it hires the best candidates is another question entirely, but that&#x27;s an issue for the company, not for the applicant.<p>But, when I give an interview to an applicant and use my go-to question, which I initially feared would provide no useful hiring signal for being too easy (and which, yes, I&#x27;ve tested on all my coworkers, who solve without any difficulty), I find that only maybe a third of applicants complete it at LH or higher.<p>To be clear, I&#x27;m calling this out as a blind spot I have--there&#x27;s clearly a massive gap in perspective here--but hopefully it&#x27;ll provide a useful data point for why tech screens aren&#x27;t universally hated and why they manage to persist.
评论 #22334118 未加载
评论 #22339663 未加载
Solar19over 5 years ago
The potential red flag in this account was Jared interrupting the interviewer who was asking a question that mentioned microservices to say that he had no experience in microservices.<p>Why did he interrupt the interviewer? And why interject that he had no experience in microservices? So what? You can still tackle a question that mentions microservices...<p>It&#x27;s not like one&#x27;s programming skills are useless for questions that merely mention an architecture you haven&#x27;t officially worked with before. It&#x27;s very strange to me that he interrupted that way, for that reason, and it makes me wonder if he acted similarly in other interviews. If his attitude is that he shouldn&#x27;t have to answer questions about architectures and technologies not specified in his resume, that wouldn&#x27;t go well.<p>Also, there&#x27;s a lot of hype and looseness around the term &quot;microservices&quot; these days. You might have worked with what some people call microservices without knowing it. All the more reason not to cut off the question.
JMTQp8lwXLover 5 years ago
The evolution of the software engineering interview is a consequence of people gaming the metric. As the author points out, once the cat got out of the bag, the problems became increasingly challenging.<p>The real consequence is for wages. By making interviews a ceremonious practice where even engineers with years of experience need to spend a month Leetcoding, you severely restrict the talent pool. It discourages poaching. Engineers only care to subject themselves so many times, and since they already have a job, they&#x27;re not too motivated to find another (compared to industry outsiders who aren&#x27;t already earning software engineering-level salaries).<p>Fortunately, many places don&#x27;t put you through the hazing that is the typical FANG interview. You can make 85-90% of a FANG salary, at a company that asks Leetcode easy&#x27;s. That&#x27;s what I&#x27;ve chose for myself. Not because I&#x27;m an incompetent engineer, but because mastering leetcode isn&#x27;t a priority for me.
评论 #22333118 未加载
评论 #22335057 未加载
评论 #22332500 未加载
akdasover 5 years ago
This is a topic I wrote about recently[0]. The fundamental problem is that these big companies are so afraid of hiring a bad candidate (a false positive) that they are willing to put up with a ton of smart people who fail their interviews (a false negative).<p>And the worst part of this is, from the inside, it really looks like the process is working. After all, there are some really smart people who get hired, and saying the hiring process is bad feels like you&#x27;re saying your coworkers aren&#x27;t smart. But the truth is, these companies are hitting smart people. They&#x27;re just hitting a non-uniform dust of all three smart people out there.<p>I think this is an opportunity for smaller companies to hire people who wouldn&#x27;t make it into the big companies, and innovate in a way the big companies can&#x27;t!<p>[0] <a href="https:&#x2F;&#x2F;hiringfor.tech&#x2F;2020&#x2F;02&#x2F;10&#x2F;false-positives-and-false-negatives.html" rel="nofollow">https:&#x2F;&#x2F;hiringfor.tech&#x2F;2020&#x2F;02&#x2F;10&#x2F;false-positives-and-false-...</a>
评论 #22374840 未加载
ai_ja_naiover 5 years ago
This horror story would be enough to quit the entire FAANG game:<p>&quot;At one particular ‘top’ tech company the process is that when a candidate goes through an interview he or she has a packet compiled about their interview performance. The packet then goes to a committee whose job it is to impartially review the packet to make a hiring decision. At one point a particular committee got so critical that they rejected every packet for several months. When HR caught wind of this they decided to set up a test. They sent the committee a new round of packets and once again the committee rejected them all. HR then called them all into a meeting and explained that they packets they had just reviewed were in fact the hiring committee member’s own packets from when they interviewed for that company. They had unknowingly rejected themselves! How could anyone pass that bar?&quot;
ourlordcaffeineover 5 years ago
It is my observation that you generally don&#x27;t need to know how certain algorithms are implemented. You need to know of them, what they do and their strengths and weaknesses compared to other algorithms. That is, just enough knowledge to make the choice on which way to go. The actual implementation part can be Googled when the time comes.<p>If I was ever an interviewer, I would not ask candidates to implement algorithms, but rather to explain why you would use a certain one. Or give them a situation and some choices and ask them to choose one and justify their choice. (e.g. For this task, would you do it in python or C? Would you use a linked list or an array to solve this problem?)
reggiebandover 5 years ago
&gt; “Yes. Can you write an algorithm to find the Kth highest value in a binary tree?”<p>I got this exact question on a phone screen with &quot;Giant Search and Advertising Company.&quot; I got stuck on a stupid detail and botched the implementation. Once I hung up the phone I took a deep breath and fixed the algorithm in about 15 minutes. That still isn&#x27;t very good since I was only given 15 minutes total at the end of the interview to implement it in the first place so I assume that is the time-span they expect to get an answer from a senior engineer.<p>Fair enough, I didn&#x27;t study for the interview, I don&#x27;t have a lot of binary tree experience. I realized that if I couldn&#x27;t get through that phone screen cleanly&#x2F;easily then I probably wouldn&#x27;t make it passed 4 or 5 whiteboard problems either (which are likely to be significantly more difficult). Fair play to any company that wants to screen candidates using that approach because I am not the kind of guy they are looking for and that is just fine. Everyone I spoke to was polite, professional and sounded competent. I do wish they would stop calling me and letting me know that I did well enough to be eligible to retry.<p>I have no doubt that I would contribute at an above-average level within any of those FAANG orgs but I appreciate their process and the reasons behind it. I have had no problem finding high-paying employment and distinguishing myself within any team I have worked on for my entire career. I generally get promoted quickly and asked to lead teams. As far as I can tell there is no dystopia, just people looking for different things.
评论 #22332702 未加载
评论 #22332612 未加载
评论 #22333645 未加载
fsniperover 5 years ago
Not exactly a comment for the piece, but for overall comments going around.<p>I am really shocked with people&#x27;s understanding of situations. Like one great example of a different interview process which totally seems like working for the interviewer and his&#x2F;her interviewees is bashed for not being good for their tastes without even getting the rationale. Or expecting people to spend 6 months on preparation for interviews considered normal or totally acceptable.<p>Either HN crowd are totally out of loop of life, or their self importance is out of bounds that they can&#x27;t see anything else which is deemed below.<p>Is life something that you could spend so easily? What kind of affirmation people get from jumping hoops that would never even matter in the big picture?<p>The newer interview procedures that are described here really made my jaw drop. I am not the most down to earth guy without the last bit ego, but I believe I improved over the years. Still if I would encounter any of these , I would go jerkiest of egocentrics ever and tell them go do themselves.
评论 #22334273 未加载
heartbeatsover 5 years ago
Unfortunately, it doesn&#x27;t matter - since all tests test for <i>something</i>, and all these things are highly correlated, grueling job interviews are entirely justified.<p>As much as it pains to say me, HR is entirely justified in their approach of asking people to fill out a form, importing the list into excel, sorting on the GPA column, and calling the top N candidates on the list.
scarlacover 5 years ago
Push for change. Show others the alternative. I have worked with teammates to change hiring culture and gotten some fantastic feedback. Change will happen if you push for it.<p>Here&#x27;re my points:<p>1. Supply candidate with a challenge that I built myself, tested with a co worker<p>2. Test should have many small goals and bugs: Get more data points on what they achieved, don&#x27;t make it binary!<p>3. Challenge should include real bugs from when you built it. e.g. typos, wrong attribute names like &#x27;innerHtml&#x27; instead of &#x27;innerHTML&#x27;, forgetting an import, etc.<p>4. Make results runnable &#x2F; viewable (for front end work)<p>5. Explicitly tell candidate that Google is not just allowed, but expected<p>6. Allow candidate to ask questions so you&#x27;re not dehumanizing them (but don&#x27;t always give a straight answer)<p>7. Follow up with questions like &quot;what do you think could be improved?&quot;<p>8. If candidate spends more than 10 minutes on any of the challenges, allow them to skip it<p>Get as many data points as possible from an interview. Make it as close to real life as possible.
jorblumeseaover 5 years ago
Everyone knows it&#x27;s broken, but interview cycle still continues to bring in talent, even if there are false negatives. People still brave the grueling gauntlet. People still show up for interviews. Smart people still get hired. The system works, just in a terribly shitty way.<p>To HR, the engineer hiring process is voodoo magic and we best not touch it.
评论 #22331989 未加载
评论 #22332173 未加载
andaiover 5 years ago
&gt; At one particular ‘top’ tech company the process is that when a candidate goes through an interview he or she has a packet compiled about their interview performance. The packet then goes to a committee whose job it is to impartially review the packet to make a hiring decision. At one point a particular committee got so critical that they rejected every packet for several months. When HR caught wind of this they decided to set up a test. They sent the committee a new round of packets and once again the committee rejected them all. HR then called them all into a meeting and explained that they packets they had just reviewed were in fact the hiring committee member’s own packets from when they interviewed for that company. They had unknowingly rejected themselves! How could anyone pass that bar?
fogettiover 5 years ago
I am not sure anyone mentioned it before, but in many occupations you are required to take standardized tests which you are required to renew each X years. This way if you hold the credentials than you don&#x27;t have to actually demonstrate your technical skills when applying for jobs, since your certificate proves them.<p>And guess what?! Your diploma is actually such a certificate, at least something that&#x27;s close enough. Still our industry largely ignores that for some reason.<p>To get to the point I wouldn&#x27;t mind to renew my credentials with supplemental diplomas every X years on standardized tests facilitated by educational institutions to avoid the stupidity of the industry&#x27;s current trends.
artsycaover 5 years ago
The word &#x27;dress&#x27; doesn&#x27;t appear once in this thread and that&#x27;s a sign of the disgusting state of affairs all in itself<p>It used to be people took care in small gestures like wearing a pressed shirt but now all the auspices have gone awry in favour of this laughable meritocracy<p>No wonder tests of this nature have been devised by people who haven&#x27;t ever buttoned a collar and it&#x27;s everyone&#x27;s fault for not taking the moral high ground<p>When&#x27;s the last time you walked into a formal interview that actually was formal?<p>Casual guys in a jizzing contest over O(logn) implementations of tree traversal is the reason every start-up fails after 18 months
评论 #22333628 未加载
Koshkinover 5 years ago
I have just realized that I have no idea how interviewing is done in other areas - for instance, mechanical engineering.
评论 #22332217 未加载
satisfactionover 5 years ago
I find this post accurate. Please also keep in mind that interviewing is as much about deciding if the company is right for you as it is if you are right for the company. When I take a bit too long to solve the coding challenge and the interviewer puts on an attitude I just assume that this is what it would be like working with this person, no thanks.<p>I recently interviewed with a hot VC funded start-up, the interviewer was the most dry and passive aggressive person I have ever met, I decided about 5 minutes into the &#x27;get to know you, tell me about your work history&#x27; section of the conversation that I would not like working for this person. I had never wanted to end an interview early before this experience. When they sent me a leetcode link (to a problem I had solved in preparation for a series of interviews I was doing) and asked me to solve the problem I just sat there wondering how long before they would ask me to leave if I typed nothing. About 5 minutes later they asked me to leave, and that was the first time during the entire interview that the interviewer cracked a smile. I think that company will fail.<p>Am I the a-hole for playing that sort of game?<p>Edit: I also interviewed with a medical startup during which the interviewer, while telling me it took me a while to get to the solution and critiquing my implementation, admitted (I think by mistake) that they had spent some time researching the solution prior to the interview. I asked them how long it took them to solve, he did not answer that question.
RobKohrover 5 years ago
The FAANG&#x27;s of the world are doing us a big disservice. They filter out the best of the best programmers in the world, and then shackle them with 300K+ golden handcuffs to work on meaningless tasks on already developed products.<p>I was talking with a recruiter many years back about when Yahoo had a massive layoff. The following year, he was suddenly awash with jobs to fill with new startups that were created by these Yahoo employees that were in comfy jobs for life.<p>If one of the FAANG companies laid off their workers, we would have a huge tech boom as these brilliant people suddenly would be forced to either get another job, or create something new, and that percentage of people that would create something new would rock the world. We would have new innovations across the board in IT and other fields that they would apply their talents to.<p>Instead, they are building plumbing in a system that really is just in maintenance mode. Remember, 99% of the functionality of these systems that exist today was already in existence 5 years go for them. This swarm of high priced talent is basically just moving the needle about 1-2% per year to just stay ahead of any other potential competitor.<p>The trouble is that these companies are so successful, that they can burn the cash trapping talent, and still pull in billions per year. This grind for small returns is just a small line item compared to the flood of cash they all rake in.
overgardover 5 years ago
Hiring and interviewing are incredibly broken, I totally agree... And the algorithm puzzles are basically silly and don&#x27;t tell you any relevant things, like how pleasant would this person be to work with, how conscientious are they, etc.<p>But.<p>Usually interviewers are asking these questions to see how you think, not because they expect you to get it exactly right. And so verbalizing your thought process is how you prove yourself. And if you have trouble verbalizing your thought process, I sympathize, but being able to explain to others what you&#x27;re trying to do and why you want to do it that way is a really big part of the job. And there are going to be a lot of times on the job where you DO need to tackle something wildly outside your skill set, and people need to see that you can at least start iterating towards the right thing. You don&#x27;t have to be right, you just have to convince them you&#x27;d get there in a reasonable amount of time.<p>Also, if a small amount of pressure causes you to forget your entire CS education, that&#x27;s kind of relevant to being able to do your job? I&#x27;m not trying to pile on to people that have anxiety issues, but being able to do things under pressure is a skill. If we&#x27;re up against a deadline and you entirely freeze up and can&#x27;t do anything, that would be a bit of a problem wouldn&#x27;t it?
评论 #22333788 未加载
bilekasover 5 years ago
Its so funny, but I was with a good friend of mine who I&#x27;ve worked with on private projects, and we were just talking about this.<p>We spent a good lot of the night interviewing eachother in our own respective questions and judging eachother.<p>I&#x27;m a bit more senior that I like to admit, and I loved his questions. His approach was more simple questions, then go and follow up on them. This was evident when he mentioned 1 hour was not enough time for him.<p>I have quick fire nonsense questions that are just an entrance fee, What is SOLID, how can you prepare a unit test. Then important things (IMO) Patterns, identifying refactoring needs.<p>As for the questions themeself they&#x27;re actually not that important and both of us tonight realised..<p>The questions you ask should reflect the work you EXPECT(if a senior&#x2F;mid) the person to be able to do.<p>If you&#x27;re hiring a JUNIOR I will say... The most important thing is to make sure they actually have an interest. I have been burnt hard on this.<p>Forget about language specifics also.. They can be learned, and as for Patterns, I am taking a step back on them because a lot of people use them without knowing it.<p>Our world comes from experience.. If you&#x27;re willing and able to teach, hire like that, if you need some core team member quickly, hire for that.<p>It was easily the best chat I had with him in a long time and I hate interviewing!
stebannover 5 years ago
I don&#x27;t even have the coding level that the writer has, but I felt myself so expelled from the industry that I quit looking for jobs. I just gave up and started working independently. Financially now I&#x27;m really broke but I think I&#x27;m better with myself. Maybe I&#x27;m not the &quot;super-programmer-hacker&quot; but at least I don&#x27;t have to participate feeding the sadistic pleasure and sense of power that recruiters have on us.
swagonomixxxover 5 years ago
&gt; The second was to write a recursive permutation generator using dynamic programming which is no easy task. I got totally stumped in the moment by that one. At the end of the interview I asked the interviewer “This problem seems a little steep for a phone interview. Do you often write recursive algorithms at Payment Processing Company?” He replied “No, we don’t use recursion.” “How about permutations? When have you used those?” He answered “Our algorithms have no need for permutations. Most of the engineers here work on user interfaces and infrastructure.”<p>This is absolutely hilarious, and has happened to me a bunch of times interviewing at large corps. Although I wish I had the balls to do what Jared does here, which is ask the interviewer if they ever even _used_ dynamic programming on the job.<p>Like, I get that some jobs are algorithms intensive. I&#x27;ve worked in such jobs myself. On the job, I had a lot of resources to help me - access to textbooks like CLRS and Wikipedia, so that building an algorithm and coming up with it&#x27;s big O was mostly straightforward. But we&#x27;ve never had the CEO come and say &quot;I need a O(n) algorithm stat for this problem _text dump of hard DP problem_&quot;.
coolassdude1337over 5 years ago
Yes it sucks but so what? It&#x27;s worth it. FANG will give anyone an interview if you have an internal reference. I am an undergrad English major in my 30s and just got in.<p>Gaming the system is easy. You just have to put in the work. Do every question in EPI and then do a few hundred leetcode questions until you&#x27;re ready. It will take between 100-500 hours depending on where you&#x27;re at when you start. Good luck!
cmonnowover 5 years ago
How can you think clearly when someone is watching and judging you?<p>The ideal scenario would be - give a problem, leave the room, and come back after 15 minutes - give the candidate some breathing room.. to make mistakes, to try out few methods, to collect their thoughts.<p>This concept of &#x27;We want you to think aloud, We want to see your approach&#x27;, doesn&#x27;t match reality.<p>In reality, the only time that happens is when both parties are trying to figure out a solution collaboratively. Not when one party already knows the answer and is &#x27;testing&#x27; the other party.<p>An author&#x27;s first draft, or a speaker&#x27;s demo, has a million corrections before it gets to print&#x2F;stage. Can RR Martin write freely if the NYTimes reviewed his every draft version ? Can Steve Jobs go on stage and give a demo if he has not already rehearsed the entire saga ?<p>It&#x27;s like judging a person at their vulnerable stage. Unless they are a saint who can completely block out the existence of another human being sitting a few feet away, it&#x27;s hard to concentrate.<p>You&#x27;re more worried about how your thought process looks than you are about solving the problem at hand.
sefrostover 5 years ago
Is it possible to create a meaningful coding test that only takes 45 minutes? I would love some examples for front end tests if any one has any.
评论 #22332138 未加载
评论 #22332085 未加载
评论 #22331988 未加载
alfiedotwtfover 5 years ago
When I was young and free the FAANGs were my ultimate dream. I even saw the interview process as a cool pissing contest. However living in the US wasn&#x27;t for me, so always had to regrettably pass on interviews... but now as time passed and we&#x27;ve seen the FAANGs go from good guy to Bond villain, I&#x27;m forever glad I never hauled my family across the world to be part of the cool gang.<p>Talking to friends who now work for the FAANGs, I&#x27;ve heard stories of having to spend 40+ hours (re-reading Sedgewick and practicing programming questions etc) to just prepare for the <i>first</i> round.<p>Fuck that...<p><i>FAANG</i> interviews might be dystopian, but if you look outside the Silicon Valley bubble, you can find interviews that are far more enjoyable than spending days in front of whiteboards just to move onto the <i>next</i> round. The most common pattern of past interviews for me has been beer&#x2F;coffee&#x2F;coke and a 30 minute chat about the company&#x27;s future goals and see if I fit might in. That should be how it&#x27;s done.
LaPingvinoover 5 years ago
I&#x27;ve designed an interview test before and I am ironically now doing a very similar interview test to what I designed for the company I used to work at. It worked extremely well for where I used it and I am absolutely thrilled to work on it now for this company. The key element here is indeed relevancy to the job you apply for and not looking for a perfect answer.<p>For anyone doing programming tests, I would like to give some advice, too, based on the tests I did and got through successfully:<p>- Always give it a try - Always explain what you do and what you are trying to do - Don&#x27;t worry about sending in an incomplete test when you don&#x27;t manage to do it - Be verbose about what you are trying to do to solve it - Don&#x27;t be afraid to ask questions<p>My first great programming job was at a place where I got a hard mathematical problem to solve, and I didn&#x27;t manage to solve it at the moment, so I asked if I could take it home. I didn&#x27;t manage to solve it at home but sent in the broken code that I had either way.<p>I got the job.<p>Why? Because the broken code I sent in showed that I understood recursion (it was for a Common Lisp job, that code was in Clojure) and the other people, even if they did manage to solve it, used more common languages and iterative solutions. He wanted someone who got the spirit of what they were working with, so that got me in. I asked my boss later how to solve that question, and he didn&#x27;t manage either.<p>When I did the interviewing myself, the situation was similar. One candidate sent in a huge resume that looked impressive, but didn&#x27;t send in the test. Immediate fail. Two others had a hard time with the test, but they showed that they cared about making it work, and that was enough for us to accept them: the core thing we wanted to see was that they could learn and cared enough to learn about what they needed.<p>One of those became main programmer and leader of many others later on, and made the company hugely successful.
tanilamaover 5 years ago
I mean looking at the author&#x27;s resume, it looks like he is mainly focused on machine learning domain, where the hiring is tight. Yes, in ML top 5% candidates are sought after like there is no tomorrow, but there is barely anything left for the left 95% of candidates.<p>So here is my advice. For your first job, and as a newbie, be accommodating. When I was out-of-college, I thought Java is no fun and is only for old people, I am functional and cool. And the job scene is just a hammer right on my head. So brush up my Java knowledge like in 2 weeks, and putting Java everywhere on my resume. Get a job pretty quickly.<p>Now I have experience, and don&#x27;t have to bundle myself as Java programmer anymore. But that is only after I have grown from that early experience.<p>So again, be accommodating, get a job first and everything else can be figured out more easily.
dfg0987098x7over 5 years ago
There&#x27;s literally no reason not to name these companies who rejected you, you don&#x27;t owe them anything!
hanswesterbeekover 5 years ago
Whenever I&#x27;ve interviewed people I&#x27;ve always made sure to them feel comfortable, so any anxiety does not get in their way.<p>Then, we talk and I look for all the qualities they &#x2F;do&#x2F; have.<p>Sadly, lots of interviewers get a kick out of finding out what the interviewee does not know, so they can feel superior.<p>Coding challenges should be: -1. take-home -2. concise -3. relevant to the job -4. take no more than 4 hours<p>One example of such a decent test that I came across involved having to read a file, parsing it and turning its contents into some basic HTML. During the interview we talked about things like &quot;what if the file were really big&quot;, e.g. let the candidate reflect on the limitations of their implementation. This was enough to suss out where somebody is, professionally. And nobody had to have a bad day.
0binbrainover 5 years ago
All this discussion is spot on. The problem is all these startups now think they are FAANG companies also. You&#x27;re not Google dude and you&#x27;re probabaly passing on great hires and making the hiring process harder on everyone.<p>We recently did a bunch of hiring. Our coding excersize was practical and involved working through some existing code that had a bug and extending it. They had to be able to state the problem back to us clearly. It was take home solutions submitted to git. It was simple to weed through candidates looking at the code for 30 secs. We looked for things like clean code and well thought out solutions. We didn&#x27;t do the silly BigO optimization stuff that every company is obsessed with. We&#x27;ve been very happy with our hires.
musicaleover 5 years ago
&gt; companies are more afraid of hiring bad candidates than they are excited about the opportunity to hire a great candidate<p>Pretty much - they&#x27;re willing to reject 100 good candidates in order to avoid hiring one bad one by mistake.<p>It&#x27;s also a feedback system&#x2F;arms race (like college admissions, conference paper submissions, etc..) The lower the acceptance rate, the more places you have to apply. This raises the number of applicants for each position, which in turn lowers the acceptance rate even further. This continues until you reach the maximum number of applications that each candidate can produce. Needless to say, the quality of evaluation is inversely proportional to the number of candidates, so acceptance becomes arbitrary and random.
cmrdporcupineover 5 years ago
I have a poor opinion of the Google style job interview to the point where despite having worked at Google for 8 years and trained in the interview process twice I just won&#x27;t give interviews... I don&#x27;t like the idea of giving an interview that I wouldn&#x27;t pass myself.<p>BUT...<p>Having recently been through an interview with a well-known open source software company where the third interview ended with a &quot;No&quot; based on what seemed like purely subjective factors with no skill-based or evidence based reasoning at all... I do now have a lot more sympathy for our process @ Google which at least requires a panel of people with calibrated scores, multiple interviews with copious note taking and documentation, etc.<p>It really is hard to find a middle ground, though.
FpUserover 5 years ago
Ok maybe it is different as I did not apply for permanent position for about 25 years but I have developed&#x2F;helped to develop many products on consulting basis for other companies and had to go to numerous interviews. Here is my experience:<p>Some companies are hiring a pie in a sky while other have real problems and want to hire people that can solve real problems. Hence 2 type of questions:<p>1) Write me working Lisp code of some exotic sort algorithm, oh and btw what that Hermite–Minkowski theorem is about.<p>2) They ask what you&#x27;ve done, how you did it, some references and how you can help them to solve their problem.<p>When I smell #1 I just apologize and leave. #2 can go either way but at least you&#x27;re talking to a reasonable people with real needs.
epicgigaover 5 years ago
This is life though right? These companies pay crazy high salaries -- they&#x27;re not going to make it easy on you.<p>The fact that you&#x27;ll barely be using the algorithms if at all doesn&#x27;t matter. They use that for interviewing specifically because it&#x27;s hard, and it screens for intelligence, problem solving speed, knowledge, and even how fast you learn (since everyone&#x27;s got to learn the same algorithm question prep).<p>The end goal for them is that all their workers are at a minimum screened for the ability to grind at and break through difficult and esoteric problems, which are the biggest time sinks and therefore biggest limiters on the progress of the business.
person_of_colorover 5 years ago
I once got a Union Find algorithmic problem in an Embedded Systems phone screen.<p>Seriously.<p>I&#x27;ve seen that same role unfilled on LinkedIn for more than a year. How do you stop Google engineers from straight out gatekeeping if they are afforded so much freedom?
z3t4over 5 years ago
I have over 20 years of experience but due to the constantly changing and re-inventing of tooling I consider myself &quot;junior&quot;. I like to do my &quot;cooking&quot; using fresh ingredients, but I prefer to use a sharp knife, rather then special purpose cutting tools, so when I get asked: -&quot;Have you used popular framework and tool x,y,z&quot; my answer is often <i>no</i>, so they probably think I&#x27;ve been living under a rock for the past 5 years. But quite the opposite, I constantly read about most of these tools, but they do not solve any problem I have.
jackcosgroveover 5 years ago
If you work at a FANG too much of your income is hoovered up by rent anyways. Especially factoring in the hours and stress. Promises of a career ladder are breadcrumbs for most people. Why bother.<p>Big Tech has been captured by finance and professional management. In other words those companies are now political bureaucracies where workers, as opposed to connected operators, are exploited.<p>Workers now need to go elsewhere, save up some cheddar, and start their own companies. Same as it ever was.<p>There&#x27;s nothing special about Silicon Valley. It preys on idealism and naivety just as much as Hollywood.
评论 #22332764 未加载
lalit-mohanover 5 years ago
I have done multiple hiring and interviews in tech industry and find it quite baffling what has s&#x2F;w engineering interviewing process degenerated into. I hear many sad interviewing stories these days. Some my conclusions: Interviewing is an art and it takes a very good interviewer to identify good candidates, this algo&#x2F;prog interview in 45 mins can not do justice. Problem solving is what is really should be checked and extremely difficult to check, dont ignore the attitude of the candidate. Einstein with a bad attitude should be avoided.
tracerbulletxover 5 years ago
You need to follow a pretty similar path to get good at competitive programming, which seems to be what that type of interview optimizes for. Know lots of optimal approaches to a large class of problems, and be able to very quickly identify and classify the problem you are given and apply those approaches to solve the specific problem. I agree this isn&#x27;t really a good match for real-life work. I&#x27;m pretty happy with my non MFAANG job but I took up competitive programming as a hobby just so I can have options next time I want to change jobs.
评论 #22332666 未加载
jrjarrettover 5 years ago
I start a new position Monday. I expected my search to be exactly like this, so I started early.<p>Within a week of setting the &quot;would hear from recruiters&quot; flag on my admittedly-thin LinkedIn profile, I had 3 solid leads from 3 companies.<p>I had 3 in-person interviews, and even feeling like I flailed a bit on a couple of the coding exercises (I had the exact panic about writing The Game of Life in 60 minutes), I had two offers and one almost-offer. (The almost was more due to they wanted a principal engineer vs. senior engineer).<p>Maybe around where I am companies are learning their lesson.
raz32dustover 5 years ago
The priority of a big company is to get a &quot;good enough&quot; person as quickly as possible. They have tons of applications, and interviewer time is expensive. Naturally, the process is geared towards minimizing false negatives, and getting a reasonably good hire in the minimum time. The current process works well for that. People who clear these interviews are usually not terrible, and are good enough. There is no incentive for a large company to do anything differently, unless they are looking for a very specific skillset, which is rare.
anthonysarkisover 5 years ago
Re: &#x27;Time limits are detrimental and discriminatory&#x27; the short answer is that it&#x27;s really testing if you already know the answer - some of these original algorithms took decades to discovery the first time. My interview process if a bit different but still very tough. I talk about some of my opinions on that here <a href="https:&#x2F;&#x2F;medium.com&#x2F;@anthony_sarkis&#x2F;software-engineering-paths-180595fd229c" rel="nofollow">https:&#x2F;&#x2F;medium.com&#x2F;@anthony_sarkis&#x2F;software-engineering-path...</a>
nickysielickiover 5 years ago
I wonder if they were actually effective with that recruitment strategy. I got that notification a bunch of times, generally when googling for documentation, and thus when I’m in the middle of something relatively technical. Finally, I accepted the challenge, looked at the problem, realized it would take at least an hour, and then went back to the programming problem I was doing in the first place.<p>You’re selecting for employees who are able to get distracted for a few hours when they’re in the middle of something else. That’s not who you want.
ddevaultover 5 years ago
I think Giant Search and Advertising should make the interview more difficult, then more difficult still, then cease hiring entirely, then atrophy employees until they die and&#x2F;or are legislated out of existence. You - yes, you, HN reader who already works at one of these companies - are ethically responsible for the actions of your employer. When you&#x27;re the one on the front lines helping realize their dystopian dreams, then the blame falls on you. Don&#x27;t work for FAANG.
评论 #22332489 未加载
makecheckover 5 years ago
To me the main misstep with a lot of modern interview testing is the time-constraint factor. Having 20 minutes to solve a complex problem sans-Google in a not-really-a-text-editor field on a web page just isn’t a real-world scenario. And, what you do in that setting doesn’t really say anything useful.<p>If you’re going to test people, either whiteboard it and make it absolutely clear you just want to see how they break it down; or, give them <i>hours</i> to do it right without a lot of restrictions.
评论 #22332520 未加载
dohover 5 years ago
&gt; Hierarchies are real - I am rather confused with the advertised rankings of a software engineer. There seem to be only two rankings: non-senior and senior.<p>This one greatly differs between large and small companies, but I think for small companies there are only two positions they can interview for, junior and senior. Anything beyond that, be it Director, VP or SVP, the company is no more interviewing a candidate but rather is doing everything in their power to convince them to join.
jupp0rover 5 years ago
A lot of the article can be explained by viewing the interview as a test. The economics of false positives vs false negatives are vastly different. Giant search company can afford to not hire great candidates. More will apply tomorrow. The cost of hiring somebody they shouldn’t have is disproportionately higher.<p>I’m not saying this is a good thing, but to me it does explain why interviews are so hard and why they are so disconnected from actual jobs that applicants will actually perform.
tobyhedeover 5 years ago
Last year I did the initial phone screen for a management level role at large search company and the next step was the infamous code test. Such a hard pass. Maybe it&#x27;s different at a FAANG but my day job is communication and coordination, being technical enough to unblock and optimise work across multiple teams. The process just felt like it was optimising for the wrong thing. Not to mention that it&#x27;s 20 years since my degree and I have better things to do.
microtherionover 5 years ago
Every time I read one of these articles, I&#x27;m surprised at the complexity of the coding questions the candidates had to solve. When I interviewed for my jobs, the questions were much simpler, and as an interviewer myself, I (a) pick much simpler questions and (b) even so, the candidates tend to have plenty of struggles solving them.<p>Am I really missing an army of engineers who can write an involved image filter in 45 minutes without that actually being their specialization?
评论 #22333206 未加载
nhumrichover 5 years ago
Can we move on? Interviews suck in every industry. &quot;Sell me this pen&quot; isn&#x27;t relevant to what a saleman will be doing. He will be on the phone, following a script but its so standard.<p>It could be worse. In the medical industry you have to work for free (or low pay) for 1-2 years to even be considered for a &quot;real job&quot;. Law firms are highly competitive, and have very rigorous interviews . And yet software engineers are payed better on average then both.
tenryuuover 5 years ago
I feel this personally. But I suppose the author is doing a lot better job that I could of as I typically just don&#x27;t receive a response at all to anything I would apply for. Finding work here feels quite tough, and even with recently graduating with a bach in CS, I ended with contract work writing English content for Japanese websites. It&#x27;s not demanding and pretty breezy, but at the very least keeps me from turning up homeless.
wcesover 5 years ago
I&#x27;ve multiple colleagues who got offers from all of FAANG. They tell me about solving 500 problems on LeetCode 2 or 3 times before appearing for interviews.
oplessover 5 years ago
I have always found coding interviews weird.<p>For example, you don&#x27;t ask a carpenter if they know what a dovetail joint is. You don&#x27;t ask a bricklayer on which brand of bricks he prefers, or how tall his last wall was. You certainly don&#x27;t ask a mechanic how an internal combustion engine works!<p>Sure throw a few algorithms at entry level employees, with no experience, to make sure they understand the basics. But not experienced developers!
_wlduover 5 years ago
I strongly encourage self-taught developers to take a good theoretical algorithms class. In it, you&#x27;ll learn to represent most problems as some sort of graph problem and map the problem at hand to nodes, edges, etc. and find the most efficient way to solve it, prove your solution and show how long it takes. You&#x27;ll also learn (more importantly) what classes of problems cannot be solved at all.
29athrowawayover 5 years ago
Engineering interviews borrow ideas from competitive programming.<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Competitive_programming" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Competitive_programming</a><p>The world&#x27;s top companies receive a flood of applicants and use this format to filter them.<p>If you work in simple web applications with mild traffic volume, filtering candidates in this way is unnecessary.
Igelauover 5 years ago
The heart of the issue is that the interview and even the application process are geared towards finding this mythical coder who lives to churn out code. &quot;URL for website or GitHub repo&quot; is a required field on so many applications now. Sorry... between music, art, exercise, children, and commuting, finding unpaid time to do my job even more is a little tricky!
starpilotover 5 years ago
It&#x27;s bad, but it&#x27;s less bad than all the other ways of testing SWE&#x27;s. These companies aren&#x27;t averse to self-reflection on hiring criteria. They no longer care about GPA, whether you went to college, or test scores. Evidently their data have shown that algos questions are effective at identifying high performers, albeit inhumane and non-holistically.
cleandreamsover 5 years ago
The worst interviews of my life were at Google. The reason is, they ping me when I am not looking and that gives me the idea to look - then they are my first interview. The last time I went through a new job search I studied first for two months. The google interview was before all that. Bombing was painful! IMHO job interviewing is a skill and practice is essential.
m3kw9over 5 years ago
They are missing a lot of good engineers by putting sink or float weight on white boardings. Apple does this as many big companies. a lot of candidates can code but can’t white board or they can white board because they studied the cracking the interview. You will get some that can actually get whiteboarding but you are hiring people with very simular minds
nobleachover 5 years ago
I really, really want to see Crystal succeed. I&#x27;ve been playing with it over the past few weeks. Since it is so Ruby-like, it&#x27;s the first language I sat down and pretty much immediately knew how to achieve most of my goals. And having Spec (RSpec-like testing framework) made me nostalgic. I hope to see a critical mass grow behind this one.
jrockwayover 5 years ago
HN explores interviewing again.<p>At my last job, I was trying to hire a frontend engineer. More programmery than designery, so I would kind of expect the ideal candidate to have heard of Typescript, and to have maybe written a unit test before. Our recruiter put a job listing on the usual places with those exact criteria, and ... we got hundreds of resumes by the time I took a look at the queue a few days later. I reviewed them all! 90% of the applicants had gone to a bootcamp and had nearly identical resumes. They wrote down their camp projects as though they were work experience. They linked to their Github that had line-for-line identical code between applicants that went to the same boot camp. Some were just directly the output of create-react-app with no additional code added. The common theme was, &quot;I hear you get paid a lot to be a programmer. Count me in!&quot; The other 10% of applicants didn&#x27;t really have anything negative going on. They have some claimed programming experience, and they want to get paid to write computer programs. Why not call them up and ask them to find the k-th element of a binary tree? It&#x27;s not a super-obscure area of study.<p>When I was at... erm... &quot;Giant Search and Advertising Company&quot;..., I did in-person interviews. I went through a lot of the shared interview questions to use, but ultimately came up with my own: given a stream of events from a variety of event sources, count how many unique event sources emitted an event in the last 5 minutes and last 30 minutes. I chose this because I literally wrote this exact program, and it took me a few iterations to get it to be optimal. (Or what I think is optimal!) For that reason, I found it to be a pretty fair question. The answer is just a few lines of code. The problem is a real-world problem. It&#x27;s not a puzzle, but it does involve some thinking and maybe asking some questions.<p>The last thing I&#x27;ll say, which I know is kind of snarky... As a Senior Software Engineer at Google, your total compensation is going to be north of $300,000 a year. You should be able to find the k-th element of a binary tree. Teach yourself how; it&#x27;s kind of fun, and might someday be useful.<p>I agree with the HN consensus that hard CS comes up somewhat rarely in the day-to-day life of a programmer. But when it does come up, you really do need to know it. You will never be finding the k-th element of a binary tree. But there will be tree structures, and you will come up with some brute-force algorithm because you haven&#x27;t seen that class of problems before, and you will push your &quot;uses too much memory and time on production-sized datasets&quot; hack to production, and production will crash, and then you find yourself with a production outage you don&#x27;t have the tools to fix. You aren&#x27;t getting paid $300,000 a year for that. So that&#x27;s probably why they ask you CS-y questions.
leet_thowover 5 years ago
What I&#x27;ve noticed about interviews is that there are a lot of generally unhappy and insecure people out there. People, especially in the Bay Area, are under the thumb at home and work and have a lot of debt and stressful family lives. Social comparison is an instinctual response in such instances and extreme bias is commonplace.
tomnjover 5 years ago
Here’s an Xoogler talking about how he was given his own hiring packet to review (without knowing it was his) and rejected it: <a href="https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?feature=youtu.be&amp;v=r8RxkpUvxK0&amp;t=8m50s" rel="nofollow">https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?feature=youtu.be&amp;v=r8RxkpUvxK0&amp;t...</a>
cryptozeusover 5 years ago
“When I was asked to write an image filtration algorithm I spent the first 15 minutes just to understand the question. I ran out of time. ”<p>I have been through few of these, I just assume that there are people out there who can understand and code up the question asked within 15 min. Those are the people this company is looking for. Not you and me.
评论 #22336905 未加载
erikeriksonover 5 years ago
After 15 years, patents, open source, and repeats successes it hasn&#x27;t gotten better. I got into this because I loved it so much... I feel asked to be a hyper energetic, extroverted ego case and really I just want to be humble and quietly write some code I can feel proud of that does something useful with some kind people.
_tjxdover 5 years ago
Much of these hiring practices are just a self-perpetuating narrative. Just spreading the news that interviews at your company are hard is a way to discourage unqualified candidates. And candidates that don&#x27;t want to put up with your (perceived) bullshit. Either way, the choice of playing the game is entirely on us.
jwmozover 5 years ago
I have no desire to work at those kind of companies nor do I expect I would pass their tests.<p>I&#x27;ve had a successful and well paid career as a contractor in London and highly advise others to check the scene out.<p>Some of the best contracts I worked on were just casual interviews, I didn&#x27;t even write any code.
newfeatureokover 5 years ago
I think the best hiring process is the following:<p>1. Open source your entire codebase<p>2. Each user story, commit for feature, etc is tagged<p>3. Pending features are correlated to (2).<p>Finally, no interview or references. Simply hire people who can complete high level implementations for the features to extent one can given an arbitrary time frame.
alexfromapexover 5 years ago
The best part is they might hire someone that knows the answers by chance when someone with much better technical skills doesn’t know the answers to the particular set of questions and then the new hire might be technically savvy but often have very poor interpersonal skills
joshsynover 5 years ago
I almost got into a role as a lead dev only to decline myself later. Their entire team had left for some reason and last developer wanted to leave too. No technical interviews, though lol.<p>Small companies aren’t that great either, when their main business isn’t tech
xivzgrevover 5 years ago
I mean interviewing sucks yes. And don’t spend too long on take home work, no more than what you’d expect to put into a normal interview at that stage eg if it’s a screen no more than 1 hr if it’s later no more than a few.
andaiover 5 years ago
&gt; I lie somewhere between junior and senior and it seems to be slim pickings for my experience level.<p>In some countries I see job postings with a third experience level: &quot;Medior&quot;. Is there an equivalent in English?
评论 #22332727 未加载
32gbsdover 5 years ago
No matter how many APIs and tutorials you do it comes down to being calm under pressure and knowing who you are talking to. You have to practice your communication skills and be cool. Often times you will be interviewed by HR people and managers - rarely will you get to be interviewed by a TDD Clean code geek that you follow on twitter. Eitherway there is nothing out there that you deserve more than other people. If you are young shut up and build stuff. (I wrote this as satire a couple moons ago; <a href="http:&#x2F;&#x2F;owensoft.net&#x2F;v4&#x2F;item&#x2F;2162&#x2F;" rel="nofollow">http:&#x2F;&#x2F;owensoft.net&#x2F;v4&#x2F;item&#x2F;2162&#x2F;</a> )
评论 #22332027 未加载
FilterSweepover 5 years ago
Sadly there are too many people applying to too few jobs. So they’ll hit the archives for CS questions that largely won’t apply to the actual job
xvilkaover 5 years ago
The secret is to skip FAANG and alikes. You will be surprised how many highly paid and quite interesting jobs outside of that overhyped circle.
AtlasBarfedover 5 years ago
&quot;I have always sought to be completely honest and humble with myself and others about my abilities.&quot;<p>Well, there&#x27;s your problem right there.
winridover 5 years ago
There&#x27;s something I read In The Company of Others by Julie E. Czerneda years ago.<p>&quot;The pay&#x27;s respectible when the company&#x27;s not.&quot;
luordover 5 years ago
I&#x27;ve gotten so cynical about this that the lyrics of &quot;razzle dazzle&quot; resonate in my mind whenever I&#x27;m interviewing.
kaveh_hover 5 years ago
Face it, FANG companies are mega corporations. All that made them good in the eyes of most employees vaporized when they grow much bigger and they lose their culture. That means less autonomy for the new employees (how many remember mythical 20% own time at Google?) and less freedom of expression (James Damore).<p>If you want to be part of something special join a startup or at least a small or mid size company made up of people that actually values your whole skillset and creativity instead of only one aspect.
scarejunbaover 5 years ago
I actually really like Google&#x27;s process. It&#x27;s got everything I look for, as a candidate:<p>* Predictability - I know what it&#x27;s going to be like clearly from the beginning<p>* Trainability - I can become better at it<p>* Memoryless - They don&#x27;t care that I did terribly a year ago<p>Of course, in the end, I didn&#x27;t actually interview even once with them so maybe I&#x27;m lying about what I like. I guess I&#x27;m one of those guys who goes from job to job not having a whiteboard interview. Lucky me.
hartatorover 5 years ago
This is stupidingly hard and test for the wrong thing but how this is dystopian?
christiansakaiover 5 years ago
Everytime this topic is mentioned in HN it always garnered so many comments more than any other topic.<p>And so many people have rehashed over and over their positions. I did, and I will do it again today.<p>Tech booming just happened pretty recently. People are going from law and finance and medicine to software in droves. Though it is arguably that those people better stick with law, finance or medicine than software, the fact is that software field has lower barrier of entry, from socio-economic&#x2F;financial point of view and artificial gatekeeping point of view. Majority of people just don&#x27;t have the resources to study law, finance or medicine.<p>We have a gold rush, and majority of people want to improve their life, with the least amount of effort&#x2F;barrier possible.<p>This result in new supplies of software engineers, whether from graduating bootcamp or graduating CS degree. All of these engineers are of varying quality. Let&#x27;s not talk about the older experienced software engineers, because I think it is safe to point out the fact that older more experienced software engineers are of better quality in general.<p>So now, we have massive influx of newbie&#x2F;junior software engineering candidates. How do companies realistically interview all of them? Knowing that these people graduated with varying degree of skills&#x2F;quality.<p>If the majority of the workforce are older experienced software engineers of good quality, then companies won&#x27;t have this filtering problem. They can just give interviews by talking from previous projects&#x2F;referral and call it a day.<p>But now we have this DS&amp;A and take home test as well, because interviewing is hard, and the more candidates out there the harder it becomes.<p>I am about 5 years into my career in this, and did interviews at a few companies and also FAANG. I experienced take home tests, work for a day, and DS&amp;A. And I choose DS&amp;A every single time because the other two sucks.<p>I don&#x27;t have that many projects, or even side projects that I can be proud of. I love doing hard tutorial such as learning how to do compilers rather than doing some projects. All my github is filled with trash&#x2F;throwaway code. And for some reason I always got involved with projects that ended up being throwaways in my previous companies, because those projects were generally hard problems.<p>Work for a day, take home tests, those two are a waste of time in my opinion. I can&#x27;t do multiple of them and get competing offers. But with DS&amp;A I can just learn once and do it multiple times and get multiple competing offers. Not to mention that I won&#x27;t have to compete with more senior engineers that are obviously more capable than me. By doing this DS&amp;A game I already filtered myself up for better.<p>Besides, I hate learning about framework this, framework that, technology this, technology that, multiple times. It gets old quick. Don&#x27;t get me wrong, I love learning new stuffs, but too many of those and I just spin around in circles learning the next Javascript framework flavor of the month. I&#x27;d rather be interviewed about how to do recursion than being interviewed about the nitty gritty of React vs Angular, Express vs Koa, etc etc etc.<p>In general I favor DS&amp;A interviews. For those of you who are more senior than me. Please don&#x27;t do DS&amp;A. Please stick with what works for you. If competent people like you start doing DS&amp;A and be good at it, then what are the chances of people like me, or other non senior engineers for getting a job. If you think I&#x27;m being sarcastic, believe me, I am not. I truly believe there are people out there that can code in circles around me despite me knowing how to recursively generate a permutation.<p>In general I have success in interviewing at non FAANG&#x2F;Unicorn companies. I usually finished those coding challenges in 10-15 mins, and the rest 30 mins I just talk to them about random stuff and they ask me about previous project, culture, etc.<p>However, I still haven&#x27;t found success in FAANG companies. I still got rejected, despite having solved 300+ Leetcode questions. And yes I know people who solved 500+ and still got rejected.<p>Now that brings me to the things that bother me the most. I&#x27;ve seen, as many of the commenters here, that there are people who got in despite not doing any preparation at all. I thought at first those were lies, until I saw it myself, and not just once, but twice, three, and now four times. Everytime I heard these stories it demoralized me.<p>I&#x27;ve seen people who got into L3, L4, E4, without knowing how to reverse a binary tree or do a simple BFS&#x2F;DFS.<p>Why? What am I doing wrong? What are they doing right?<p>p.s. Don&#x27;t ask me why I want to work for FAANG. I need (not just want) the money. I have people that I support.
smartsystemsover 5 years ago
They need to make sure you will be obedient to arbitrary orders.
jvanderbotover 5 years ago
I think this person was not rejected for their coding. They were passed over for an MS or PhD with similar skills.<p>It is necessary to do well on coding interviews, but not sufficient. optimizing for coding interviews is the wrong approach.
评论 #22333426 未加载
alexebirdover 5 years ago
Thank you for writing this.
willbermanover 5 years ago
I see peoples&#x27; opinions here generally falling into one of two camps. The standard way interviews are conducted are either good or bad. I think it&#x27;s important to consider both the good and bad elements, and then come to a conclusion about what to do in order to move the collective interview process in a better direction. To note, I&#x27;ve never gone through a traditional technical interview, so take what I&#x27;m saying with a grain of salt. Let&#x27;s look at the example in the given in the blog post, <i>write an algorithm to find the Kth highest value in a binary tree</i>. Now my data structures and algorithms are a bit rusty, so assuming that I remember the correct definition for node height, I believe the solution looks something like the following.<p><pre><code> data Tree a = Tree a (Maybe (Tree a)) (Maybe (Tree a)) deriving Show -- Assuming k=1 Means the highest node, k=2 means second, etc... -- Note this solution successfully puns non-positive k&#x27;s -- to return Nothing kHighest :: Int -&gt; Tree a -&gt; Maybe a kHighest 1 (Tree a _ _) = Just a kHighest k (Tree _ (Just l) (Just r)) = case (lRes, rRes) of (Just x, _) -&gt; Just x (_, Just x) -&gt; Just x (_, _) -&gt; Nothing where lRes = kHighest (k - 1) l rRes = kHighest (k - 1) r kHighest k (Tree _ (Just l) _) = kHighest (k - 1) l kHighest k (Tree _ _ (Just r)) = kHighest (k - 1) r kHighest _ (Tree _ _ _) = Nothing </code></pre> Barring some fundamental misunderstanding of the problem (entirely possible), the evaluation criteria is not that the solution is exactly correct and covers all edge cases. The evaluation criteria is does the solution show fundamental knowledge about properties that are used to classify things as tree-like, and does it use the common idiom (decomposition into smaller sub-problems) that is used to process tree-like data.<p>In my opinion, the common criticism that interview questions hold no similarity to day-to-day software engineering problems, holds no water. Yes, you will not directly re-write the tree data type every day in your job. However, you deal with recursive data definitions that require solution by decomposition _multiple_ times a day. If you are not dealing with problems that fall under that category, then you should think hard about which problems you see that could be framed as such because I guarantee you&#x27;re missing a few.<p>The beauty of the tree as a data structure is that it captures a common set of algebraic properties. Even when other data structures don&#x27;t exactly fall under said algebra, the concepts to reason about them are reused (note the early language that specifically said &quot;tree-like&quot;).<p>The point of drawing interview questions from your data structures and algorithms course is not to test you on remembering arcane minutia from 5+ years ago but to see your fundamental reasoning skills within the domain of computer science.
评论 #22341662 未加载
jordan801over 5 years ago
=-=-=-=-=-=-=-=-=-=-=-=- Warning Heavy Cynicism Ahead -=-=-=-=-=-=-=-=-=-=-=-=<p>I&#x27;ve worked at my current job for a long, long time now. Every year or so I decide to peak my head out from it and test the job waters. I get nearly the same set of 4 outcomes each time. I have over 7 years of experience with everything from front-end development to sysops, devops, and management. I&#x27;ve built entire companies by myself in months. Albeit buggy ones.<p>I bloody hate interviewing.<p>Outcomes:<p>1. I get rejected for messing up a programming fundamentals question. Which, honestly stings because, yeah, I should probably be more informed. But, currently, I ain&#x27;t got no time fo dat. I&#x27;m too busy solving a bombardment of problems like: &quot;Hey, programmer X quit, I know you don&#x27;t work with X language at all but we need this fixed, yesterday&quot;.<p>2. I spend a bunch of my precious time writing a fully functional code test, to be inexplicably rejected. Maybe because I didn&#x27;t write unit tests? Maybe because I didn&#x27;t use doc blocks. Maybe I didn&#x27;t make the code reusable enough given their imaginary scope. Who knows.<p>3. They&#x27;re super excited to hire me for a position I am not at all qualified for. Usually for a ridiculously minuscule salary. I had a company ask me, after spending 2 hours on a phone interview, to build and run their development shop. They wanted to on board 50 employees by my 6 month mark, and completely dismantle their overseas workforce.<p>4. I&#x27;m just plain ghosted.<p>I&#x27;m absolutely sick of potential employers asking me why I am excited to work with them. Well sir, to be honest, appearances and mission statements are superficial. I am excited to experience something new. I really hope that your shop lives up to the hype. I am excited to learn.<p>Take note employers. Saying pretty much anything else is either ignorance or a lie carefully concocted over the countless hours you require of potential employees, just to get in the door. Your interview question responses are almost never genuine talent. They are hours of memorization. I know, because I&#x27;ve asked, and answered them.<p>Why even require a resume? I&#x27;ve spent hours cultivating a bomb resume and 19 out of 20 employers, have literally no idea what it says.<p>Employer: &quot;So what languages are you familiar with?&quot; <i></i> They&#x27;re literally listed on the resume that you required I send you, with demonstrations. The one I customized to your company and needs. <i></i><p>A different employer: &quot;So, you don&#x27;t actively work on any opensource projects, we can review&quot;? <i></i> No, I try to have a life when I am not working, and go outside. I know, hiss... <i></i><p>-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-<p>Right now 7:23 PM on Valentines day, I am trying to speed up a program, an MVP, that I rebuilt in a week. One that I acquired after the prior developer got fired. One of my many, many projects. This one is particularly pesky as I am also trying to build out another app that is due, about 23 days from now.<p>Send help.
bx32over 5 years ago
wow!
allovernowover 5 years ago
In my admittedly limited experience, there&#x27;s one way to avoid such nonsensical interviews - run away from bureaucracy. Seek smaller organizations (startups in particular) and if you&#x27;re lucky enough to have a minimally cross-disciplinary background, you can seek out niche organizations where you&#x27;ll interview with technical specialists who&#x27;ll ask reasonable questions that are <i>actually related to your work</i> and your interviewers won&#x27;t be saddled with &quot;standardized&quot; managment pleasing bullshit. One of the biggest problems I see with modern tech (and large industry in general) is this ridiculous idea that MBAs can standardize all processes across all departments across all industries. This is a source of needless pain and waste - but I suppose it keeps execs happy when they can reduce every metric to a nice little [bullshit] number. Interviewing at FAANG is a case in point.<p>I&#x27;ve never in my life had to implement a recursive memory optimized underwater red black tree balancing algorithm, and it&#x27;s insulting to be told I&#x27;m not a good enough programmer if I can&#x27;t pass your totally contrived white board problem. Who the hell are these people even selecting for with these kinds of questions? Do they understand how much talent they&#x27;re throwing away?<p>In any case, I have a strong suspicion that, aside from compensation, working for FAANG is hugely overrated. And that&#x27;s not just sour grapes talk - mountains of red tape, processes upon processes, overwork and burnout, and best of all, you get to spend your best years infecting society with the cancer that is adtech.
评论 #22332179 未加载
评论 #22332350 未加载
评论 #22332687 未加载
评论 #22332354 未加载
评论 #22333085 未加载
评论 #22332246 未加载
评论 #22336477 未加载
评论 #22333069 未加载
评论 #22332154 未加载
rcarmoover 5 years ago
This only gets worse when you’re old enough to go in, sit in a room across two or three people and realize you have at least as much experience as all of them _combined_ - not necessarily in terms churning out of code in the language _du jour_ or their domain specifics, but in terms of people management and systems design.<p>There are multiple kinds of dysfunction at work here:<p>- When I was looking for purely technical gigs I breezed through phone screens and automated testing only to go up against the ageism wall on the first Skype call. Period.<p>- Recruiters reproducibly drop out of the blue without a clue as to what you actually do or your experience level. Adding “Senior” to my LinkedIn profile measurably decreased the amount of randos that reach out on a weekly basis.<p>- Puzzle-based screenings are a complete waste of time. It’s not about the prep, it’s about the likelihood you’ll ever encounter those problems. People are much more likely to have to address system design problems, but those cannot be tested for by the online questionnaire cottage industry, so you get mediocre engineers who know how to write fizzbuzz but have zero clue of how to design an order management system from scratch or where to look for issues in an old one.<p>- Companies often don’t understand what is involved in the roles they hire for--even if you’re a perfect match for the job description (if there is one), the hiring team has an agenda that seldom matches it.<p>- Engineering is not just about writing code. The second you start asking questions about how teams interact or if they have a strategy for X, the people in the room (or call) are seldom the ones that can get past canned replies.<p>- Startups tend to be extremely picky and hype-driven. The language _du jour_, their “triple mocha with a squeeze of raspberry” Agile flavor or someone’s pet organizational methodology (teams&#x2F;tribes&#x2F;packs&#x2F;etc.) usually feature prominently in senior interviews, but even VPs _very seldom_ talk about how they manage people--just product and investors.<p>As a result, I’ve long stopped applying to “normal” engineering positions (and even senior management ones at startups). I drop out of the process (politely) as soon as I get the first hint of automated tests, ageism or VC hype, and prefer networking and getting to know the culture first.<p>Even so, I’ve had a few notorious duds--I would talk to a VP, have a great conversation, and then have “peer” discussions with people half my age that might as well have lived inside a bubble (and had obvious gaps in empathy and emotional intelligence), or simply have an “OK, boomer” moment whenever the conversation steered into how they managed people growth or I commented on their org structure.<p>Or I would go through the _whole_ thing and then be told that they wanted someone at “a different career stage”, even though you ticked all the boxes, talked to around a dozen people, and gotten consistently excellent feedback (that one smarted a bit, because it was in a very niche field I was particularly good at).<p>My key takeaway is that “vanilla” engineering jobs are most often not seen as being long-term hires that bring in outside experience: they are fresh cogs for an internal hype-driven, Rube Goldberg-like contraption that many tech companies cling to and want to preserve at any cost, and the hiring process (and lack of care in it) mirrors that.
codingslaveover 5 years ago
Interviews are so bad because there are too many capable programmers. If there really was a market shortage, companies would not interview like this.
评论 #22331959 未加载
评论 #22331977 未加载
评论 #22331952 未加载
评论 #22331969 未加载
评论 #22332340 未加载
评论 #22332005 未加载
评论 #22336134 未加载
_martamoreno_over 5 years ago
Bad example really. There are many companies where you don&#x27;t need to know this stuff, Google is not one of them. You want that 350k a year, but you don&#x27;t know the basics about computer science to find the k-th highest element in a BST, well doh. What can I say...<p>To be honest, this is really a super simple question and I would be stunned if this was anything but a warmup for you, like the interviewer giving you a simple question to get you into focus. I haven&#x27;t done anything with BST in years but still I could easily do this with a piece of paper. Back in the days, Google was asking to insert an element in a Red-Black-Tree. Well, this is a clusterfuck and far too specialized. But questions like those were rightfully banned.<p>Yeah sure, it&#x27;s not what you do all day, but not being able to answer these questions has implications. There are many code monkey mills where you just write some JS code to hack a webpage together and it would seriously bother me if they would ask you such questions.<p>Just rethink what you really want. FAANG is not for everyone.
评论 #22335087 未加载
trolliedover 5 years ago
&gt; &quot;The horrifically dystopian world of software engineering interviews&quot;<p>If you actually read the linked article, there aren&#x27;t really any interviews.<p>The OP is just getting let down by recruiters.
评论 #22332198 未加载
评论 #22332245 未加载
评论 #22332428 未加载