Live data from Hacker News

Hiring Software Developers

hesh.am

21–30 of 30 posts

Re: Hiring Software Developers

#21
> Things like traversing a tree to find the shortest path.

No one is going to address the fact that there is only ONE possible path to a node in a tree? This guy seems to have no idea what he's talking about, no wonder he dislikes algorithmic questions. Instant no-hire.

Re: Hiring Software Developers

#22
post #6

I've hired several junior developers after just chatting without really getting into deep technical details. With junior developers, I'm more concerned with the individual being a good fit for our team culture and dynamic. With more seasoned engineers, I mostly just ask about projects they've worked on before. The good engineers that have been a great fit with the team are the sort that (when prompted) get really exc…

You do realize that disclosing details of a proprietary project that I've worked on might be a no-no? A lot of us have signed a paper explicitly stating that we're not allowed to do this.

Re: Hiring Software Developers

#23
post #4

> "Can you even remember when was the last time you had to write an algorithm to traverse a tree?" Fairly often? There are lots of things taught in comp sci classes you could have used for your example here, but traversing a tree is not one of them. Huge amounts of software will have something as basic as traversing a tree and if you can't remember how to do it even 20 years out of comp sci classes, I'm not sure you…

I'd think that refusing a candidate who can't work out how to traverse a tree in 5 minutes for an interview isn't a strong candidate for any coding position. I've found this sort of generic statement ignores the practical aspects of a hiring decision. Maybe we need to qualify the definition of 'coding position', but I'm thinking of my entire devops team. I'm pretty sure I'd get some sideways looks if I asked many of…

Would they be able to operate on folders and subfolders recursively ? That's tree traversal, and important for devops ... maybe you're talking about doing it in context vs out of context ? or your devops are mostly sysadmins ?

Re: Hiring Software Developers

#25

Nice article, except I disagree on one point: Forget about a general Github account. Even having a Github account/or a Github project used by a billion users - does not prove that one is a great programmer according to me. Perhaps this a Github advertisement? (Python lover + mercurial user + No Github Account = bad programmer :-)

I've found when people talk of a "github account" they just want to see some code, not that github is in any way required. Kind of like calling a cola a Coke, or a copier a Xerox. Have yet to hear a negative comment about my bitbucket account.

Re: Hiring Software Developers

#26
post #19
post #4

> "Can you even remember when was the last time you had to write an algorithm to traverse a tree?" Fairly often? There are lots of things taught in comp sci classes you could have used for your example here, but traversing a tree is not one of them. Huge amounts of software will have something as basic as traversing a tree and if you can't remember how to do it even 20 years out of comp sci classes, I'm not sure you…

I think the source of the perennial confusion over this issue is that some software development is actually engineering, but most is greese monkeying. The software mechanics resent the engineering questions but the engineers can't understand how you could not ask them. In truth the work of both camps is fundamentally different.

> The software mechanics resent the engineering questions but the engineers can't understand how you could not ask them.

The "software mechanics" resent an engineering question being used as a hurdle for a job they know does not involve "engineering". While the employers are looking for a "software engineer" at a "software mechanic" price.

Re: Hiring Software Developers

#27
post #23

Earlier quoted context omitted.

I'd think that refusing a candidate who can't work out how to traverse a tree in 5 minutes for an interview isn't a strong candidate for any coding position. I've found this sort of generic statement ignores the practical aspects of a hiring decision. Maybe we need to qualify the definition of 'coding position', but I'm thinking of my entire devops team. I'm pretty sure I'd get some sideways looks if I asked many of…

Would they be able to operate on folders and subfolders recursively ? That's tree traversal, and important for devops ... maybe you're talking about doing it in context vs out of context ? or your devops are mostly sysadmins ?

Certainly, and yes that is tree traversal, but we don't refer to it in that manner. We refer to this in the context of recursion and iteration. Our interview process for devops is focused much more on practical application.

Po-tay-toe, po-tah-toe I suppose.

Re: Hiring Software Developers

#28
I have gone through a couple of interviews at large companies recently. I have over a decade of experience, and I can tell you that I know what I'm doing. I have a real problem with these whiteboard handwritten algorithm problems. I'm not sure why companies insist on conducting interviews in this manner. It doesn't represent anything close to how I actually go about solving problems. Hell, I RARELY actually write anything down anymore, so the slowness and errors I make in writing just make it that much more distracting.

Why do these companies not just give you a computer and an editor, hell, even one with code completion enabled, and let you solve the problem that way?

I agree completely with this article. I have not once needed to write an algorithm to traverse a graph, or find the shortest path, etc. I have RARELY ever needed to implement a common data structure myself. That's what libraries are for. People that write library code wouldn't be able to properly write these data structures in the allotted interview time. It makes very little sense.

Something else to note. Traveling from one coast to the other for interviews almost certainly has a mental cost. I have noticed it personally, that the jet lag reduces my concentration and ability to process.

I'd be interested to see statistics on what percentage of hires were actually successful when coming from the same coast vs the opposite coast.

Re: Hiring Software Developers

#29
post #23

Earlier quoted context omitted.

Would they be able to operate on folders and subfolders recursively ? That's tree traversal, and important for devops ... maybe you're talking about doing it in context vs out of context ? or your devops are mostly sysadmins ?

Certainly, and yes that is tree traversal, but we don't refer to it in that manner. We refer to this in the context of recursion and iteration. Our interview process for devops is focused much more on practical application. Po-tay-toe, po-tah-toe I suppose.

I think you've hit on the exact issue here: it's not that anybody disagrees that their coders they are hiring need to be able to do tree traversal. The issue is simply that we have given a complicated name for something very simple that every coder already understands. It's simply a communication issue.

Re: Hiring Software Developers

#30
post #28

I have gone through a couple of interviews at large companies recently. I have over a decade of experience, and I can tell you that I know what I'm doing. I have a real problem with these whiteboard handwritten algorithm problems. I'm not sure why companies insist on conducting interviews in this manner. It doesn't represent anything close to how I actually go about solving problems. Hell, I RARELY actually write any…

[deleted]
Post reply on HN