Hacker News new | ask | show | jobs
by greyskull 4319 days ago
I'm just about to finish a B.S. in CS, so I've recently been on the other side of the table. I like to think I'm "aware" enough to give good feedback about my experiences.

I've interviewed with two of the large "top" companies. They were two very different experiences.

One decided to have me do multiple interviews, with whiteboard coding. The first interviewer was my favorite, because we got to talk about the design of my internship project, how it could be extended, pitfalls to consider, etc. That actually let me stretch my legs a bit and show that I can make intelligent software decisions. The rest of the interviews were basically worthless; the classic small algorithm problem that I could easily figure out with a bit more time or by working with another more experienced engineer. The code I wrote on the board showed that I could write for loops and use a standard library; it was very difficult to modify or refactor if we saw an issue with what I wrote. Why not at least a laptop, basic text editor, and a projector?

The other company gave me a few hours to write up a solution, in an IDE, to a somewhat beefy problem. We had a couple of discussions about my approach, potential pitfalls, cases that I couldn't handle, optimality, etc. I liked this, since it was much closer to being representative of real software work; collaboration, discussion, and I also got to show how I would actually create a solution.

That's a stark contrast. I'm sure there are flaws in the latter approach, but it is if nothing else a much lesser evil that will likely bring in more valuable engineers.

2 comments

My favorite interview, ever, was a phone screen. Untimed. They gave me a weekend to solve two not really difficult problems, with well defined interfaces. The catch was to write it in a production ready style. That is, do everything I would do for actual production code. Documentation, test suites, write the code to be as elegant as possible, while failing as cleanly as possible if invariants failed.

I have no idea their results with that, and I ended up taking a job before the in person interview, but I enjoyed the screener a lot.

I'd probably fail that from lack of experience, but it does seem to be a great approach for someone a bit more seasoned. That shows a lot more about someone's software engineering capabilities than short tricky problems.
Some one more seasoned would not work for free at a weekend.
Some one more seasoned would not work for free during a weekday.

See, I can play that game too.

Besides, this was a contrived problem. If you want to say "I refuse to solve any coding problems while interviewing for a software position", then fair enough. Good luck finding one. I think this was a total of perhaps 3 hours of my time, and was good enough to get an onsite? And it was time I -enjoyed-. Unlike most phone screens, timed interviews, etc.

I think the grandparent is reacting to "Untimed. They gave me a weekend" which made it sound as if the interview took all weekend which a more seasoned programmer would be less likely to do.
And in a lot of cases in Anglo Saxon employment law working for some one else with out authorisation is a breech of employment law.

It was the they wanted production ready code that set alarm bells ringing.

Outwith very senior C level roles you should need no more than 2 interviews to decide which candidate to make an offer to.

Spending an entire day with 5 or 6 different interviews is just a waste of the candidates and the company's time.

"just a waste of the ... company's time."

If the wrong guy gets hired and everyone is to blame, then no one is to blame. Especially if one of the 8 interviewers has moved on since the hiring, and can be blamed completely, at least on the paperwork. CYA is very popular.

There's also a little manufacturing consent going on. I've been to interviews knowing the guy is already hired because he golfs with my VP, but we'll manufacture some consent by having someone in the group pretend to have input. I can either agree with the VP that his golfing buddy is a great hire, or hit the streets.

cuts both ways with 5 or 6 or more untrained interviewers the chance of some one making a legally "naughty" statement and causing problems increases.