Live data from Hacker News

When hiring developers, have the candidate read existing code

freakingrectangle.wordpress.com

111–120 of 565 posts

Re: When hiring developers, have the candidate read existing code

#111

Would really like to see one day a post about 'when hiring developers, read their CV and have a technical discussion about their past work in relation to the role required' becoming a thing.

So many companies are requiring 6+ interviews nowadays. If they decided to take a reasonable approach to interviewing, think of all those people who wouldn’t be able to write “Played an active role in hiring” on their performance review!

Re: When hiring developers, have the candidate read existing code

#112
Please comment your code, when it is is necessary.

I don't need "we need to loop here from 1 to 50", I need "we have to rate-limit this function to under 60 transactions per second due to hardware requirements", etc.

If you are putting "magic numbers" anywhere, COMMENT it as to what that number is, why you chose it, etc.

I'm 30 years into this game and I still come across code that takes way too long to reason about.

Re: When hiring developers, have the candidate read existing code

#113
post #3

That's interesting, I've never heard testing code skills by reading instead of writing. An example would have been nice though, as I'm not sure how to find a piece of code that does something standalone that is too large to grasp in 20 minutes yet make a reasonable prediction at the output. That combination seems kind of weird. I wonder how well it would work to modify OP's idea and present a candidate with some code…

We used to have an interview process that had a take-home project. The project was: - you have two files: listings.json and products.json - listings.json lists ~20,000 Amazon listings for electronics with fields like title, brand and price - products.json lists ~1,000 digital cameras, with fields like brand, family, model - your job is to write a script that, for each entry in listings.json, emits the best match (or…

That's a great example that fits almost 1:1 with something we've been doing. I will propose that to avoid having to give take-home projects, thanks for sharing!

Re: When hiring developers, have the candidate read existing code

#114

I sometimes ask candidates "what kind of interview do you feel would best bring out your strengths?" and try to adapt the interview to their response if I can. It's helpful if they want to talk about side projects or war stories, but doesn't pressure them to. I still give my coding challenge after. Wonder why no one else does this.

Quoted post unavailable.

[deleted]

Re: When hiring developers, have the candidate read existing code

#116
post #47

Earlier quoted context omitted.

One thing I like about this (as opposed to a “blank slate” coding challenge) is that it shows how well the candidate is able to fit into the broader design style of the surrounding code. Not just the superficial things (like naming conventions), but also the structural patterns.

You do miss out on the 'sit down and create a project' aspect though. Which shows things like familiarity with project structure, (python specific) virtual environments and paths etc. These are good skills to have when a dev is debugging as they could get tied up for a long time dealing with something as simple as a relative path issue.

The things you mention can easily be standardized in the company, and starting a new project or setting up a dev environment should be automated to the point that you don’t even have to think about it.

Re: When hiring developers, have the candidate read existing code

#117
post #45
post #33

Earlier quoted context omitted.

Or any opensource project they have contributed to.

Yes, that would do nicely. Doing it because you choose to. Because you like it. That's key.

The trouble with this argument is that it excludes a huge proportion of the best developers out there. A lot of people got into programming because they enjoyed it but after doing it all day at work they want to do something else with their personal time. And the more experienced someone is with programming the older they are likely to be and the more likely it is that they will have other interests and commitments competing for that time.

Re: When hiring developers, have the candidate read existing code

#118

Earlier quoted context omitted.

> Bonus points for no PR’s and trunk driven development as that shows a very mature team. I'm not sure what Trunk Driven Development is, could you elaborate?

https://trunkbaseddevelopment.com/

https://trunkbaseddevelopment.com/trunk1c.png

So trunk driven development means no PRs, until you decide you want to use PRs?

Re: When hiring developers, have the candidate read existing code

#119

I like this approach. Far to often I’ve interviewed at places and been grilled by the interviewer only to find out when you start the quality isn’t great, what you where grilled on you won’t be working on “as that’s to hard” or “we don’t do that” despite being grilled on it and the level of skill not to great they just want senior people. It’s the bait and switch. At least being taken through existing code you know w…

> Bonus points for no PR’s and trunk driven development as that shows a very mature team.

Ugh, pass. Trunk development is fine. Skipping PRs just brings back nightmares of SVN. Even if 90% of PRs are approved without comment, it's extremely helpful for everyone to have a second set of eyes on work before it is merged in.

Re: When hiring developers, have the candidate read existing code

#120
post #107

My thesis is that the true measure of reading code is still the ability to fix and extend it. So my current ideal interview problem is still a tiny toy codebase, where the interviewee is tasked with adding some (relatively trivial) feature to it. Like ten lines of code, but where those lines require you to have grokked the other couple hundred or so. Any downsides?

By doing that you will be selecting for the "cracker" type. That is people who are able to get into any code, even under adversity, and do anything they want. It is a great skill to have even if you job doesn't involve removing copy protection, for example, he may be the only person who will be able to fix a bug in that old code base written in an obscure language when the last person to work on it left the company 1…

I've been at both ends. Building apps as a solo developer, as well as fixing some bug or implementing a single feature correctly for clients. I think it requires being able to zoom in and zoom out along the stack of abstraction that constitutes a code base, as well as either focusing on the now or a much larger timeframe.

The higher level skills can be somewhat tested by asking the candidate how it would build some module and the variation that some factors would bring in (like closer deadline, no third party service,...)

Post reply on HN