Live data from Hacker News

Hiring Is Broken – My interview experience in the tech industry

medium.com

581–590 of 693 posts

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

#581

Earlier quoted context omitted.

What cities and kinds of firms did you work at?

Minneapolis area The last 3-4 years have been at larger corporations. Major retailer and a division of SAP. Haven't always been at larger corps, but after doing the startup thing for a couple of years, the stability is relaxing. I also had job offers from some companies that would be maybe "mature startups"? Not sure of a good term, but around 5-7 years old, profitable, ~50 employees, etc. One of them had zero progra…

I've been looking at companies in Minneapolis over the last few months, but I've been having a hard time finding open positions to apply to. My usual methods (online job boards) have gotten me precious few results. How do you find companies in Minneapolis who need your services?

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

#582

I am a VP at a medium size company and I do plenty of interviews. I usually talk about what people are interested in and then ask one question: "You are in front of PC/Mac/Mobile screen, type www.cnn.com into browser, and press enter. A fraction of a second images show up on the screen... How? What happened? Tell me all you can from key press interrupts to underwater fiber cables". This question never failed me. It a…

I read jerich's response and thought he was sarcastic in his praise.

Are you serious? This is your one interview question? Do you realize this is the kind of thing the Sahat was writing against?

Instead of actually asking them about their relevant skills, experience, and capability you think it's fit to judge a candidate on what amounts to curious information on how a computer works.

Is that what you're hiring for? Someone who's spent more time reading wikipedia articles than actually coding? We're in the business of creating things, not harvesting trivia.

Yes it doesn't matter if someone's written and maintained code, documentation, tests, and has collaborated with dozens of other individuals for a repository used by thousands. All you need is to do is ask him your pet trivia question.

It always shows how deep does one go in their computer science adventures.

Knowing about the adventure of one electric signal from keyboard to underwater fiber cable has nothing to do with computer science. By your own words, you're testing for the completely wrong thing.

I am a VP at a medium size company and I do plenty of interviews

Here's a secret then. The candidate, whoever he or she is, will always try to answer your question. In fact, they'll try to satisfy whatever problem you put them up to.

"What's your favorite method of tying shoelaces?"

"How many golf balls can you fit between the earth and the moon?"

"What do you do for fun?"

The candidate will take their time and rack their brains trying to provide an answer to please you.

Some will give a good answer and some will give a bad one, but that doesn't mean your interview question is a good one.

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

#583
post #567

Earlier quoted context omitted.

> Easier to take 20 minutes and just write the tool. What? That would be a huge red flag in my book. Where are your unit tests? I'm not trusting your 20 minute off the cuff reproduction of classic algorithms in any business critical piece of the code, not ever. This would get you booted from a lot of places, or at least given a stern talking to for doing something that seems slick, cool, and time-saving in the short…

> It's like seeing someone write their own argument-parsing code. Holy shit, what a bad idea. Never (!) do that. So we did that. works well. I dunno, maybe this company is just full of incompetents. I mean, I doubt it, but it is possible. I appreciate judgement without context as well. Really, it's awesome.

If you did write your own argument parsing code, then yes the choice to commit to that was incompetent, barring some extraordinary situation.

I don't think it's controversial or insulting to say so in the least. It's a solved problem in every major language and most fringe languages. Spending time re-inventing it is just obviously wrong.

It's not insulting or judgmental to say that it's wrong. It's just a fact. I do not understand being offended or angry about my statement of that fact. If we're talking about what is effective engineering and what is not, writing your own argument parsing tool for actual business usage (as opposed to doing this as a pedagogical side project or something), without evidence of some exceptional corner case, is ineffective engineering. It's practically the definition of ineffective engineering.

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

#584

Earlier quoted context omitted.

Gladly! Lets say your software as a service website has a real time analytics graph, so that customers can look at statistics of how much they are using the service in real time. One potential question a customer might want to know is "How many API calls have I made over the last hour". This is a moving window average question, and it needs to be displayed/done on the front end. My company that I work at has such a f…

Thank you for the example, but this is not a generalized problem, and is very specific to your domain, so it would be silly to receive such a question from companies that are not your company, which I have had happen. If I were applying for your company, I would expect to have to implement an algorithm like this on the job, but I don't see why I should have to know it to get the job. As long as I was capable of imple…

How would you demonstrate that you're capable of implementing that algorithm? Isn't the best way to have them implement that algorithm? (I will admit that this is best done when the candidate has their favorite text editor and internet, and I have had an interview in the past where this was the case, which went well)

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

#585

Earlier quoted context omitted.

Thank you for the example, but this is not a generalized problem, and is very specific to your domain, so it would be silly to receive such a question from companies that are not your company, which I have had happen. If I were applying for your company, I would expect to have to implement an algorithm like this on the job, but I don't see why I should have to know it to get the job. As long as I was capable of imple…

How would you demonstrate that you're capable of implementing that algorithm? Isn't the best way to have them implement that algorithm? (I will admit that this is best done when the candidate has their favorite text editor and internet, and I have had an interview in the past where this was the case, which went well)

I would suggest that you provide the algorithm in process or through formulae, and have the candidate implement it. That's what they'll be doing anyway.

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

#586

Earlier quoted context omitted.

For what it's worth, if you were interviewing for a security job and couldn't solve the longest increasing subsequence problem within a minute, I would probably say "no hire". All security folks I know can solve such problems in their sleep, and it seems really important for the job. Or at least you'd have to show your algorithmic skills in some other way, without relying on "business" rhetoric. Does that sound reaso…

This is a false correlation. What is it about longest increasing subsequence that is relevant to security? If you can't explain, then it has no relevance and means nothing.

Being intelligent enough to solve the problem is what's relevant.

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

#587
post #475

Earlier quoted context omitted.

I'm having a hard time responding to this. More and more, whole applications are being delivered in clientside Javascript using Angular or React or whatever. Are you suggesting that there are two "kinds" of front-end developers, the kind that knows how the DOM APIs work and the kind that can implement the rest of the application and domain logic in Javascript?

I am suggesting the frontend developers developing using angular/react code do not require to implement graph search algorithms. What algorithms have you seen in practice in web frontends? I have seen nothing even minor, not even binary search or bublle sort.

I'm building an app with react which uses DFS to determine connected elements on a 2D grid: you'll have to be more specific when you say "frontend developers", since the frontend is getting more and more business logic.

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

#588

Earlier quoted context omitted.

>> Java calls it.. whatever it calls it. It's nice to have that 'hash table' google term to find the thing you want in a new language, but otherwise they're just words. Actually, they are more than just words. Try not to conflate the abstract data structure itself with the language-specific implementations which can vary quite significantly. Also your flippant, dismissive attitude on quite important CS concepts would…

>> Also your flippant, dismissive attitude on quite important CS concepts wouldn't take you far. Please try to avoid this. We can discuss without resorting to attacks. >> "There's no point in testing for X or Y because ... e.g. we won't need X or Y to perform the job we are being tested for" That's what most people are arguing for I think, so I agree with you there. >> not being able to recognize what BFS even stands…

You seem to be arguing that non-CS trained devs can learn these things when they come across them. I wouldn't disagree with that.

I think what I see as the real concern is a case of "not knowing what you don't know." If you aren't exposed to at least the fundamentals of this broad base of CS knowledge you aren't going to know that they are available to you when you need them. Learning about a tree when you first read about it is great. But that person will still have huge gaps in their CS knowledge compared to someone who systematically studied it.

I also don't think this is so much about having a CS degree, as it is simply having studied CS in some fashion. I've worked with plenty of talented self-taught developers who took the time to learn these things on their own.

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

#589
post #567

Earlier quoted context omitted.

Not BFS exactly, but I did a breadth first traversal of a graph a couple weeks ago. Could I have dug up a library to do what I needed, sure I guess. Easier to take 20 minutes and just write the tool.

> Easier to take 20 minutes and just write the tool. What? That would be a huge red flag in my book. Where are your unit tests? I'm not trusting your 20 minute off the cuff reproduction of classic algorithms in any business critical piece of the code, not ever. This would get you booted from a lot of places, or at least given a stern talking to for doing something that seems slick, cool, and time-saving in the short…

The pseudo-code of BFS is all of 20 lines, and that's accounting for a graph possibly containing cycles. A graph without cycles (such as a tree) would be even simpler/shorter.

https://en.wikipedia.org/wiki/Breadth-first_search

Correct arg parsing is actually significantly more complicated in comparison because of all the possibilities and edge cases.

> Never (!) homebrew that shit unless you have to (like, you're in an embedded environment or your use case requires some bleeding edge research algorithm).

I can't help but think this mentality is what lead to the recent left-pad debacle

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

#590
post #570

Earlier quoted context omitted.

Here, let me Google that for you. [0] https://en.wikipedia.org/wiki/Overfitting > > Overfitting generally occurs when a model is excessively complex, such as having too many parameters relative to the number of observations. A model that has been overfit will generally have poor predictive performance, as it can exaggerate minor fluctuations in the data. [1] https://en.wikipedia.org/wiki/Generalization_error#Relation…

I apologize. > The types of candidates who spend the time necessary to memorize algorithm trivia for the sake of passing these exams are exactly like overfitted learning algorithms. I should have asked for a source for that portion. It's the part that is ridiculous. Again, my bad.

Sigh. I wish instead of the sarcasm, you actually introspected on the toxic and needlessly aggressive way you're defending rote memorization of algorithm trivia. For example, you saying

> Source? or just trying to justify your own shortcomings?

is clearly, unequivocally unprovoked and needlessly antagonistic (what do my shortcomings have to do with my point ... either you engage with the claim or not, but use ad hominem insults is not a valid discussion tactic. Yet you seem to assume no responsibility for your completely unprovoked hostility, and continue on with sarcasm, even sarcasm about your own ridiculousness.)

In terms of data, obviously no study is perfect and we should not simply base everything on a single study, but the 2012 PISA results offer at least some evidence http://www.oecd.org/pisa/keyfindings/pisa-2012-results-volum... >.

The particular sections of the actual study that cover poor performance of those who focus on memorization is not available in the free sample (Chapter 2), but it was reported on, e.g. here: http://hechingerreport.org/memorizers-are-the-lowest-achieve... >, including this:

> The U.S. has more memorizers than most other countries in the world. Perhaps not surprisingly as math teachers, driven by narrow state standards and tests, have valued those students over all others, communicating to many other students along the way – often girls – that they do not belong in math class.

> The fact that we have valued one type of learner and given others the idea they cannot do math is part of the reason for the widespread math failure and dislike in the U.S.

There is also the discussion from Google that test scores and brainteasers do not predict later-on job success http://www.newyorker.com/tech/elements/why-brainteasers-dont... > (and many algorithm interviews are absolutely the same kind of brainteaser nonsense).

From the NY article:

> The major problem with most attempts to predict a specific outcome, such as interviews, is decontextualization: the attempt takes place in a generalized environment, as opposed to the context in which a behavior or trait naturally occurs. Google’s brainteasers measure how good people are at quickly coming up with a clever, plausible-seeming solution to an abstract problem under pressure. But employees don’t experience this particular type of pressure on the job. What the interviewee faces, instead, is the objective of a stressful, artificial interview setting: to make an impression that speaks to her qualifications in a limited time, within the narrow parameters set by the interviewer. What’s more, the candidate is asked to handle an abstracted “gotcha” situation, where thinking quickly is often more important than thinking well. Instead of determining how someone will perform on relevant tasks, the interviewer measures how the candidate will handle a brainteaser during an interview, and not much more.

The other thing we have to fight against is self-selection. It's not necessarily in everyone's interest to publicize that their riddles and algorithm hazing process isn't working. Especially not for start-ups which need investors to feel like they are crammed to the brim with stereotypical nerds or something. So if you go looking along the lines of "well, my company uses riddles and we have hired well" you're already done. You haven't hired well. Your company (if it's a startup) probably isn't even remotely proven yet, even if it's well-funded, and the verdict is out on whether the people you rejected really should have been.

Post reply on HN