6 ms·
My perspective has long been -- since well before the free money printer stopped going brr -- that the reason tech interviews are insane has little to do with r
by hprotagonist 3y ago
My perspective has long been -- since well before the free money printer stopped going brr -- that the reason tech interviews are insane has little to do with rising interest rates or monetary factors per se.
It's because tech dev / coding jobs are one of the few white collar fields that, historically, have not de-facto required a pile of advanced degrees. Maybe i'm getting old, but "you don't need a degree if you're hot shit" has long been part of the atmosphere: from old school hackers to the long history of founders who drop out of school to work on their startup, etc.
This directly leads to interviews being the gate: if we can't know what you are by what degrees you have / what papers you published / what lab you did your dissertation in / what bar exam you passed / what hospital you did your residency in / who you clerked for / etc. ... then we're going to have to do all 4-8 years of post-undergrad pain and suffering all at once, during the interview, so grab a whiteboard and buckle up!
It's ... less than ideal.
edit: what's less than ideal is the perverse incentive force that creates bad interviews. The recognition that a degree doesn't guarantee job fit is not a bad one, though; you really can be more successful in software dev if you're self-taught / uncredentialed than you can in many other disciplines.
- goalieca 3y agoI would like to say that I’ve known and worked with PhDs that were good and some that were totally useless. I wouldn’t trust it as a very useful signal for a job interview. Programming is more of a trade and academic institutions barely teach the craft.
- jebarker 3y agoIn my experience the ones to avoid (at work and in life generally) are the folks with PhDs that bring it up all the time as if it's important and bestows upon them some special power.
- datadrivenangel 3y agoWhat's the point of getting a PhD if people don't call you DR?
- jebarker 3y agoI've always thought that was a bad strategy. Better to underpromise and overdeliver in life.
- jameshart 3y agoMost PhDs in this field are going to be in computer science. Computer science is not programming. Most of us are not hiring scientists. OPs point is that if you were a hospital, you would take a different stance on the relevance of a doctorate degree to your hiring criteria.
- pc86 3y agoThey'd probably take the same stance, that a PhD is useless, since in a hospital you want nursing staff, or medical doctors. PhDs are going to be about as good as JDs (honestly likely even less useful).
- jameshart 3y agoI think it should be obvious that when I said ‘doctorate degree’ in that context I meant an MD.
- nradov 3y agoA PhD mainly teaches you how to do research. If your particular job isn't research focused then it's unsurprising that usefulness isn't correlated with the degree.
- ldjkfkdsjnv 3y agoTech companies dont trust pedigree when it comes to programming.
- FirmwareBurner 3y agoThey kind of do. If you graduated from Stanford, Berkley, MIT, Ivy leagues, Oxbridge, Imperial College of London, Waterloo, etc you have a much easier* way in to top tech companies or finance tech than coming from "no-name" universities in some small countries *)Easier as in the recruiters will actually reply back or even them hitting you up instead of you getting ghosted when you apply, not that they make the interview process much easier for you, you still have to pass the same bar as everyone else but you have a much greater chance of being called back
- Jensson 3y agoYou have to pass the same tests during interviews. The main difference is that if you come from a no-name university in a tiny country you need something special to even get an interview. Of course that is for algorithm interviews, in less objective interview formats you are right where you studied etc is a massive factor.
- wakawaka28 3y agoIt's also true that the questions are overwhelmingly written by people from "elite" universities, where certain subjects and approaches are emphasized. So if you aren't from one of those you're less likely to nail it. Elite universities also have connections I'm sure, and generally prepare students for interviews much better than average ones.
- jameshart 3y agoLargely because those institutions are known to be extremely selective. If they let you in then you must know a thing or two.
- pc86 3y ago
- adamgordonbell 3y agoThere is also a goodharts law thing. Coding is more like weight lifting then running. There are some weights that some people just can't pick up. And so if the job involves lifting things that are usually light but occasionally heavy, then a squat becomes a good measure for candidate. But once everyone knows a big squat is the way in, they train squats, they show up in lift suits and the whole thing stops being a good measure. Because on the job you don't squat in a squat rack, but pick things up where they are found, in the conditions on the ground. Now you have a bunch of people optimized for a task that isn't exactly the job.
- pc86 3y agoAnd then when you try to design an interview process that mimics the conditions on the ground you get people decrying it (sometimes rightly, sometimes wrongly) as too hard, or too long, or whatever.
- red-iron-pine 3y ago"ive been in the industry 15 years, doing this shit is an immediate no!" then you try to get them to explain TCP/IP or fix a for-loop and they're stumped.
- neumann 3y agoSo this. We always give realworld actual mini 'regular day at the office' assignments, and it was a great filter. We ended up giving it a lot because people would ghost or give up after days of (fundamentally bad) work, then the right candidate would arrive and nail it in hours. We had recruiters tell us not to do tech interviews, nobody likes them, etc, but our team was so strong for it. And really, we were mostly testing generics. Use stack overflow by all means, but just know what you are copying and how to modify it!
- supergeek133 3y agoAnd yet here I am with my 10+ years of experience, without a degree. I've met people better than me with less experience and no degree, and people who aren't very good that have MANY degrees. Yet we've gone through many iterations of the interview process (and testing, things like leetcode) to avoid having to basically accept a gut check of "do I think this person will perform well". It's more of an art versus science than I think people give it credit for. So is interviewing itself.
- Pikamander2 3y agoThe thing I don't understand is why so many companies are so inefficient at hiring developers. They'll spend months giving out interviews and take-home tests and disqualifying people for the smallest subjective hangups and then finally hire a friend of an existing employee who talks a big game but can't code their way out of a paper bag. Meanwhile, I've helped several clients hire new remote devs before and all it took was a few basic coding questions to weed out 90% of the candidates, followed by a small paid trial task before hiring them long-term. The results we got were fantastic, completely merit-based, and easy to reproduce.
- pc86 3y agoWell I mean you've answered the question right there. The salaries and benefits for the current employees are a sunk cost and are getting paid no matter what. So having them spend a few months talking to people isn't an additional cost in the accounting sense of things. The minute you add "paid trial task" you're talking about a (usually non-trivial) expansion in budget. Where does the money come from? How many of the devs on that team are going to be happy with smaller bonuses, smaller raises, so they can pay someone to write code they're going to reject? Maybe this is objectively The Right Way to hire developers, but good luck convincing the accountants of that, and good luck convincing your current developers to pay for it.
- codazoda 3y agoPresumably it would come out of the budget for the new employees own salary. Note: I’m not the original commenter and I have not used this hiring method, but I do have to budget.
- pc86 3y agoOkay so teasing that out a bit, you're now offering a lower salary than similar competitors because you're paying a bunch of people to do an interview. Are you applying for that job? Are you willingly taking a lower salary because they're paying the people you interviewed against hundreds or thousands of dollars?
- 3y ago
- martindbp 3y agoOr, it's the type of job where a degree doesn't guarantee that someone is a good coder, and that's easier to test with a whiteboard than other kinds of engineering for instance.
- gargs 3y ago...and after passing that hurdle, you're suddenly exposed to a large body of work in the organization that has no processes to ensure continuity and modernization other than some rudimetary coding styles and PR/code review flows. The only way to stick around is to make your output so incomprehensible that the only way to maintain it is to keep the lead around. For all the talk about hiring the best, once they're in the goal becomes to stop hands-on development as quickly as possible and to add friction to improving the knowledge repository as much as possible.
- soneca 3y agoIf that’s the reason, I think it’s much more ideal than selecting a resume by the degree you have, or by which university you went. Orders of magnitude more ideal.
- pc86 3y agoThe problem is that being able to do a particular LeetCode in a particular amount of time is not going to be any more useful a metric than "has a Master's in CS" or "went to Stanford."
- soneca 3y agoBut it’s much less exclusive and, in my opinion, more just than requiring people to, e.g., go to Stanford. Also, leetcode is just one way of doing technical interviews. There are others that also do not require going to Stanford.
- datadrivenangel 3y agoSo why do people with multiple degrees still need to go through such a painful process?
- pc86 3y agoBecause the degree doesn't mean you can code, which is sort of the point of this entire thread.
- internet101010 3y agoBecause a lot of book smart people lack the creativity needed to solve problems on the fly.
- game_the0ry 3y ago> This directly leads to interviews being the gate: if we can't know what you are by what degrees you have / what papers you published / what lab you did your dissertation in / what bar exam you passed / what hospital you did your residency in / who you clerked for / etc. ... then we're going to have to do all 4-8 years of post-undergrad pain and suffering all at once, during the interview, so grab a whiteboard and buckle up! Couple of solutions: - Open source contributions, especially in the tech you are hiring for. Need someone who is good with spring boot? Makes sense to see the open source contributors in the spring ecosystem. - Open sourced side projects. You get to see the code the candidate wrote, even before hand, and have them walk you through the decisions they made. White board is still path of least resistant - its for the lazy hiring managers, and they usually do not even know how to do it well which is why there is always so much attrition. Edit for clarification - open source + projects do not have to replace the in-person white board. Rather, it can be additive. Who would you rather hire - someone with hi-quility open source contributions, or someone who can implement LRU cache bc they happened to do that problem on leetcode?
- harimau777 3y agoThis feels like it could end up being the software equivalent of musicians/artists to do free work "for exposure". I can see a lot of value in contributing to open source being an alternative way of demonstrating competency. However, I don't think I'd want to see it become the only or primary way.
- game_the0ry 3y agoThis is a hollow excuse. It doesn't have to be a replacement for traditional interviews. Rather it could be a way of distinguishing candidates instead of only relying on a white board. When I was trying to get my first job out of bootcamp, I had a built a mobile app with my team mates, and we had it on our phones. The idea behind that was we could pull put our phones during interviews and show our interviewers exactly what we did. "Btw, hiring manager, I happen to have that app on the projects section of my resume on my iphone as we speak - would you like to see it? Happy to walk you through the commits I made on github if you would like." But... Most hiring managers were not interested at all. Instead, it was all white board. The whiteboard brain worm infection in hiring managers just runs too deep, there's probably no cure at this point. Who would you rather hire -- some one who could show you an actual project, code and all, or someone that can implement LRU cache in under 25 mins bc they happened to already do the problem on leetcode?
- harimau777 3y agoI think that being unwilling to train entry level employees might also be a factor? I.e. someone with a CS degree has demonstrated that they probably have the aptitude for programming; however, they may or may not already be good at programming. Ideally, entry level positions would hire for potential with the expectation that they will be training their employees.
- nradov 3y agoIBM and other companies used to hire entry-level programmers with based on an aptitude test. This was before programming was widely taught in college, and far fewer workers had college degrees at all. https://thecomputerboys.com/?p=369 https://thecomputerboys.com/?p=369
- usrusr 3y agoCuriously, there's also the exact inverse happening as well, without contradiction: unless you go for the extreme junior position of straight from university, employers expect a perfect tech stack match. If you haven't worked with exactly the same framework, philosophy and process, you're out. Few other fields have this to a similar degree, outside of commercial aviation where you're either certified for, say, 737 or you're not. I blame it on the very unspecific headcount demands in software projects: there's never a hard target number "we need ten keyboards to be manned at all times!", life just goes on when you are nominally understaffed. Perhaps slower, perhaps with more crunch, but nobody really knows what difference a hire or two would have actually made. So software development HR keeps throwing out their net, who knows, perhaps tomorrow the perfect candidate applies, and rejects a lot. It's a bit like the pattern of attractive people trapping themselves in an infinite dating treadmill, but with the plot twist that their salary depends on it.
- whstl 3y agoI find that this becomes less of a problem when you move up from senior positions. Staff, principal, lead, etc. IMO this doesn't make sense. I don't think a senior dev should have problems switching stacks or languages.
- usrusr 3y agoI guess the idea is that if you set up a team for something greenfieldish you want some to lead by example in terms of how the stack will be used. You don't want someone generally experienced to go deep discovering their way to use the stack, you want to buy usage patterns. Once the position is out of the trenches, it's not really a tech job anymore and you basically need someone who knows the language (of the field, not a programming language!) and who is good at not running into process traps. From the buyer side it makes a lot of sense, the problem is that when you're on the selling side and too old to get accepted in a junior role, you either have the precisely fitting CV (and can prove it through the interview stages), or you're bound for a tech stack consisting of an uber-accepted car.
- nradov 3y agoThat really varies by the organization. Smaller companies or those using less common platforms are more willing to hire based on transferable skills and then train. Most airlines do the same. The majority of pilots flying 737s were hired without that specific type rating. Usually they're moving up from flying smaller jets at regional airlines.
- mp05 3y agoOur campus job fair was last week and I'm watching very closely as a new batch of seniors get hit by reality. I feel like the financial engineers are eating the lunches of CS folks whose only skills is to "sling code". These 22 year old finance kids didn't need a CS degree (or at least major) to develop the coding skills necessary to express themselves and every, single one of them is highly competitive. I know one CS guy who is doing well too, but he's an industrial engineering double major. Definitely hearing a lot of moaning from the CS kids that just followed the curriculum and didn't develop some side hustle already. Point is that we've very quickly hit a point where the market is saturated for people who can only code and nothing else, at least from my observation in the US mountain west region. School projects and even internships don't seem to be cutting it anymore, at least if you're attending a state school I guess.
- pc86 3y agoI think you've hit the nail on the head, and for what it's worth it's the same in the midwest now too. Ten years ago if you could write good code you could get a job. Yeah you might not get a FAANG interview if you didn't know anybody and you went to Southern Regional State College or whatever, but you could get a job making twice what your English major friend got, and a lot easier. Being able to write code is no longer a differentiator. You need to know something about product, or design, or finance, or entrepreneurship, or at least show through the other parts of your resume that you can be a benefit in some of those areas given the opportunity. The root is that you are not owed a job at all, let a lone a cushy six-figure one where you can type JavaScript into a computer for a couple hours then call it a day. So if you believed the lie of "just go to school for 4 years, major in CS, do what your professors tell you to, and you'll be set for life" then you're in for a rude awakening when September rolls around and you're still looking, or you're writing Java for a bank for $45k/yr.
- mp05 3y ago> Ten years ago if you could write good code you could get a job. Yeah you might not get a FAANG interview if you didn't know anybody and you went to Southern Regional State College or whatever, but you could get a job making twice what your English major friend got, and a lot easier. I was 100% this guy 10 years ago. Engineering school dropout but could build things on a LAMP stack, so I had more work than I could really handle. But it should have been apparent to anyone that this couldn't last, so I went back to school and explicitly avoided software because if I could teach myself this stuff, these econ, finance, and stats people were going to as well. And here we are! > writing Java for a bank for $45k/yr Yep that's the type of job you're going to find in Pocatello, Idaho... working for Regional Bank of the West integrating bank software their mobile apps and websites. The interesting jobs are currently going to the mechanical/electrical and hell industrial engineers who did a code bootcamp. This isn't my suspicion, it's what is actually happening on the ground and I hope the 19 year olds feeling a bit of buyer's remorse on their choice of degree program take note.
- DoctorMckay101 3y agoI feel the need to add a very important point to your third paragraph. Most times these interviews persist even if you have all of those. And what is worse, they are performed by HR people. And I'm sorry, but... wtf does a socials major in HR know about a highly technical and specialized engineering job? Nothing. I have a PhD on Embedded device security and last time I went through 3 interviews with HR people before I ever got to speak to an engineer. 90% bullshit questions.
- wakawaka28 3y agoThe point of the HR people is to weed out the people who are blatant liars and misfits. They should simply record your responses to trivial technical questions and pass along a score or something for consideration by a more qualified person. You have to imagine that every job gets tons of applications from people with zero experience or credentials, and you don't want engineers wasting time on that.
- DoctorMckay101 3y agoI can imagine how 1 meeting with HR would help weeding out people for junior and early senior positions with little requirement in terms of CV. You could get a couple thousand applicants there. For sure. However, I can not imagine a situation that would ever call for 2 or more meetings. Nor can I visualize any circumstance where a meeting with HR would help with highly specialized position hiring. Once your job description calls for 5+ years of experience, a master's or even a PhD, maybe a certificate or two and even publications on the field, there should not be more than a couple hundred applicants. Not even a hundred to be honest. And every one of those claims can be verified by manual online searches or automated tools. Furthermore, the only way of verifying the applicants actually know about those subjects is a meeting with a fellow engineer.
- wakawaka28 3y agoJust because a job listing demands specific requirements doesn't even remotely mean the applicants will be qualified. Anyone can generally apply to anything, especially in this industry which is so eager to say anyone can get in regardless of qualifications. I agree that one screener should be enough, but maybe it happens twice on occasion because the authorized person is on vacation and they don't want to leave you hanging or something. >And every one of those claims can be verified by manual online searches or automated tools. No it can't. There is no central registry of every graduate in the world, and even if there was it would be expensive to have a subscription. If it was cheap to do background checks on everyone, it would be done up front instead of after they decide to hire you.
- the_snooze 3y ago>then we're going to have to do all 4-8 years of post-undergrad pain and suffering all at once, during the interview, so grab a whiteboard and buckle up! Even in academia, I think this view is counterproductive. We shouldn't be imposing suffering on folks just because that's how it's always been done. I prefer to take a different approach: give people every chance to make themselves look good, and see if they're able to capitalize on the opportunity. I think "job talks" could have a useful place in industry hiring. Ask interviewees to prepare a 5-minute lightning talk about any technical (or technical-adjacent) topic they want, and open it up for Q&A from the panel afterwards. This is a way both for the interviewee to set the stage on a topic they're confident in, and for the interviewers to gauge the applicant's communication skills and technical knowledge.
- deleted 3y ago[deleted]
- wan23 3y agoKind of an unpopular opinion, but we should create a formal certification system for developers. Not something like a license to code, but something more like a professional organization where to get in you have to do all the BS that you get in interviews. This is how it works for lawyers, doctors, accountants and other professionals. Imagine doctors going on job interviews and being asked trivia questions from high school biology like draw the Krebs Cycle on a whiteboard. It's ridiculous. If we could get the BS out of the way, job interviews could be more about finding out what an individual can bring to the organization. Everyone would be happier.
- mikhailfranco 3y agoThere are professional certifications for engineers, which are common in UK and Europe. For example, INCOSE for systems engineering. Ladder is based around 3 career steps: book knowledge; ~5 years experience; senior roles on major systems. Qualification depends on documented experience, reference systems, review from within the community, and interview. https://www.incose.org/certification https://www.incose.org/certification
- zihotki 3y agoBut does it work like that for other professions which also don't require a formal degree/license? Also how it would work world-wide or do you mean a national one and bar expats until they pass it? For doctors and lawyers one may need to go a long mile to get necessary paperwork done in order to work in another country
- ryandrake 3y agoWhat certification could do is ensure a bare minimum level of knowledge. You wouldn't be able to skip the interview, but you could shorten it and not require ridiculous things like FizzBuzz and "write a 'for loop' for me". It's not a silver bullet.
- erik_seaberg 3y agoTriplebyte tried to do this, but apparently companies were only skipping phone screens for those candidates, not interview rounds.
- 1vuio0pswjnm7 3y agoInterviews are inherently subjective and for _some_ people it is easy to slide through. But how easy is it to slide through those other "gates". Gates that have developed, and have been tested, over long periods of time, longer than the idea of "tech dev / coding jobs" has even existed. The question to ask IMHO is what role does the "free money printer" play in whether someone calls themselves "successful". Is borrowing money "success". It is success in borrowing money. No doubt, software developers without degrees have been very successful in borrowing money. And burning through it.
- wakawaka28 3y agoWhat you're really asking is "What role does the macroeconomic climate play in whether someone finds themselves successful?" At the end of the day, you might be very talented and be a failure because you didn't find a job in a reasonable time frame. That could mean competition was too high for too few jobs, at least at acceptable wage levels. Of course your failure to get a job does not mean the escalating job standards are necessary or reasonable, it is just what the market demands and what we have chosen to tolerate in this industry.