Live data from Hacker News

Hiring Is Broken – My interview experience in the tech industry

medium.com

311–320 of 693 posts

Re: Hiring Is Broken – My interview experience in the tech industry

#311

I feel like it's a little weird that one of the author's big examples of a difficult algorithmic question is breadth-first search. While I agree it's not something that's very likely to come up much in real work (especially for a front-end dev!), it's also... not actually hard? You check the current node for your truth condition, you add its children to a queue, you pop the queue and do the same thing for that node.…

I agree.. BFS can be seen as another example of Dijkstra's algorithm, so this seems to be a hole in the author's knowledge. Seems like he is just resenting these algorithms, and perhaps should spend some time hanging out with a textbook or something. Maybe write a game, that would be a fun way to get into this stuff.

OTOH, I totally agree with the conclusion of the article: long interviews of technically complicated stuff is just BS. The last time I had to do this, I started refusing to answer questions after about two hours.

Re: Hiring Is Broken – My interview experience in the tech industry

#312
I think you may benefit from a change of narrative. Evidence from your interviews (specifically the Vimeo interview) suggests that your potential employers have a mixed perception about your skills and experience. I certainly believe you're capable of being a productive engineer that a company will value, but it still may take some searching to find the right fit. One of the benefits of leaning a little more on your network than using recruiter requests is that it increases the probability of finding the right job.

Re: Hiring Is Broken – My interview experience in the tech industry

#313

You know what other type of people are not very pleasant to work with? Nerds who think they can trace a psychological profile of a person based on a blog post.

Seem you do not need more than a comment to give someone the psychological profile of a nerd.

Re: Hiring Is Broken – My interview experience in the tech industry

#314

You know what other type of people are not very pleasant to work with? Nerds who think they can trace a psychological profile of a person based on a blog post.

Even if you're right, an escalating personal attack is exactly the wrong way to respond. Please don't.

A better reply might simply have pointed out that there isn't enough information to draw such a conclusion.

We detached this subthread from https://news.ycombinator.com/item?id=11581129 and marked it off-topic.

Re: Hiring Is Broken – My interview experience in the tech industry

#315

When I hired a plumber for my heating firm, I put her through a hazing interview, tested her knowledge of Maxwell relations and thermodynamic equations. Oh wait, no I didn't. As she has been a plumber for years, so we recognised her skill and experience and cut to the chase. When I hired a programmer for our doomed to die VC life support funded fart of a project, we put her through numerous rounds of comp sci bingo a…

I frequently hear this basic point: "Software interviews test algorithms and data structures that are so clearly not relevant to the work being done and soooo theoretical I don't understand why interviewing isn't better???" I used to believe this myself, mostly because I didn't have a strong CS background and was still successful at carrying out software projects at a relatively high level. The truth is, as I learned…

I don't object to an employer wanting to see a background in data structures and algorithms, sql, binary, and a few branches of math. This is why I agree that hiring is broken but also understand that it isn't easy to fix.

Some of it stems from something very wonderful about our profession - we are flexible about how people can acquire this background. In law, you must do a 3 year JD[1], and you must typically pay way over 100k for it. Alternate paths toward learning this material are pretty much illegal (as in, we'll put you in jail if you try to practice law if you haven't done the 3-year degree, regardless of your master of the material).

For instance, I was a math major, and I only took a bit of formal CS. However, when I did self-study to try to plug some of these gaps (partially for interviews, partially for my own education), I was surprised with how much I actually had covered from a different angle. Many of my math (and later, in grad school, Industrial Engineering) professors ran "labs", some for a bit of extra credit, others as an optional set of assignments. I took graph theory through a math department and stuck around in the lab and so forth to implement some of the algorithms, to learn about how some types of proofs actually contain an algorithm. BFS, DFS, minimum spanning set. That all involved building trees, lists, using pointers. In numerical analysis, I did a lot of matrix algebra manipulations. And so on. If CS were run like law, it would be illegal for someone like me to work as a programmer, because my degree isn't an ABET accredited CS degree.

The downside to all of this, though, is that there is no recognized credential. I don't object to being taken through my paces, I object to how random, capricious, and redundant the process has become. I read a blog article about a programmer who took the bar and studied for 100 hours and passed. Think on that for a second and compare it to the amount of time people spend preparing for and taking what are essentially white board exams in technical interviews. The bar, an exam that is considered one of the most brutal rites of passage for a learned profession? In some ways, we go through that every time we do a new round of interviews when we change jobs!

Actuaries have to show understanding of relatively advanced math, but senior actuaries don't (to my knowledge) get grilled on integration by parts or some specialized set of partial differential equations when they interview. Why? Because there is a proper exam for their field (and unlike law, actuaries are free to obtain this background through multiple educational paths, they often major in math, but hardly always).

Another problem is the capriciousness of the tech exam/interviews. I believe that a "bill of rights" so to speak slowly evolved between examinee and governing board over time in true professions. The nursing and medical boards, the actuarial exams, the bar - these fields have a tough exam (or series of exams), but they are consistent, there is a clear study path, there is a commitment to grade them fairly, there is a clear study path, if you fail, you get feedback or at least a score (the bar doesn't write you back and say they "decided not to pursue your candidacy further at this time"), there is often a second (or additional) change at the exam, and, most importantly, when you pass you get a lasting, public credential respected by your peers in the field.

People often describe these exams as the most brutal, anxiety ridden, stressful events of their professional lives. This is why, I believe, they slowly evolved that "bill or rights" that protects the examinee.

Unfortunately, in tech, I believe we experience these exams over and over, but without any of those benefits.

I am a-ok with requiring people to show competence, but the way we go about it is, I think, badly broken. I believe that this process accounts for a great deal of attrition in the field, as well as people deciding not to enter the field in the first place.

[1] yes, a bit of handwaving, it's not quite that simple in some states.

Re: Hiring Is Broken – My interview experience in the tech industry

#316

Fancy moving to the UK? :) Seriously there's a job with your name on it if you're interested. When I interview candidates I sit with them for half an hour or so to get to know them. Then I give them purposely broken, poorly written piece of code which I tell them to pull apart. This proves incredibly effective as even if they miss some of the more obvious errors I can at least point them in that area and then see if…

That sounds pretty much like an ideal interview process.

But do you think this is easier to do if you get less candidates (looking at your location, I am assuming you only get a small fraction of candidates than if you were located in, say, London) ?

Re: Hiring Is Broken – My interview experience in the tech industry

#317
post #294

Earlier quoted context omitted.

You are right. His problem is that he is not persistent enough. Maybe he lacks passion.

Why does he need to be persistent? He proved that he's a decent programmer by releasing a bunch of semi-successful open source projects. He worked at Yahoo. He has 900+ days GitHub streak. That makes him passionate about building things more than a huge chunk of programmers. Not being able to implement a random algorithm on a whiteboard while applying for a front-end position has absolutely nothing to do with the lac…

He worked at Yahoo.

Tbh, that could be a negative, there were a lot of lousy programmers at Yahoo. Doug Crockford worked there, so there were a lot of really good programmers too, but you can't know just based on working at Yahoo.

Re: Hiring Is Broken – My interview experience in the tech industry

#318

When I hired a plumber for my heating firm, I put her through a hazing interview, tested her knowledge of Maxwell relations and thermodynamic equations. Oh wait, no I didn't. As she has been a plumber for years, so we recognised her skill and experience and cut to the chase. When I hired a programmer for our doomed to die VC life support funded fart of a project, we put her through numerous rounds of comp sci bingo a…

I frequently hear this basic point: "Software interviews test algorithms and data structures that are so clearly not relevant to the work being done and soooo theoretical I don't understand why interviewing isn't better???" I used to believe this myself, mostly because I didn't have a strong CS background and was still successful at carrying out software projects at a relatively high level. The truth is, as I learned…

[deleted]

Re: Hiring Is Broken – My interview experience in the tech industry

#319

I hired Sahat as an intern three years ago while he was an undergrad. It was one of the best hiring decisions I have ever made. He was productive immediately and our (small) team felt the loss when he went back to school. This guy is good and gets stuff done, ask people who have worked with him. I wish Sahat had reached out to more of his network before responding to random recruiters. Tech interviews as Sahat experi…

I'm seeing a lot of "reaching out" in this thread. Is this a new thing, like "passion"?

Very annoying, but not that new:

http://apennedpoint.com/dont-reach-out-to-me-please/

Re: Hiring Is Broken – My interview experience in the tech industry

#320
post #241

Earlier quoted context omitted.

A plumber, sure. What about the guys who design your water heater? Should they just google the thermodynamics as they go as well? My point being, it depends on the role, and the expectations you have for the future of a candidate in your company. Are you hiring a guy to bugfix or implement a couple of features on your web app? Or a guy to design and implement from scratch a app that should have some hope of scaling i…

Sure, it makes sense to ask a compiler engineer the various ways in which to reverse a binary tree. That's going to be a problem that you're probably going to encounter on the job. The fact is that most developers spend 90+% of their time futzing with NPM, dealing with Apple's review process, or renewing SSL certificates. Low-level algorithm work is something very few engineers need to know.

I agree, like I said it depends on the position.

But still, if the other 10% of the time is designing the system, it can wreck the project if you do a bad job at it. And no amount of futzing with NPM is going to save you, no matter how good you are at it.

It also depends on if you want the guy to be more than a front-end bug-fixing guy in the long run.

Post reply on HN