6 ms·
We've adopted a new process for interviewing software engineers. It has three interview sessions held on subsequent dates: 1. Candidate learns about the compan
by 11thEarlOfMar 9y ago
We've adopted a new process for interviewing software engineers. It has three interview sessions held on subsequent dates:
1. Candidate learns about the company and the tech during a set of 2-4 interviews with our engineers. We don't tell them to learn as much as they can because we want to see how inquisitive they are. Interviewers are coached to be fairly open and talk about our products and tech. If there are no red flags, the candidate receives a take home coding assignment. We give them 6 to choose from. There is no time limit, but we are interested in how long they take and which of the assignments they choose. The assignments are all relative to the type of code we develop.
2. Candidate returns with their code. We're looking for only 50-100 lines, as we don't want to ask for a lot of their time. They start the interview by hosting a code review of their code in front of 3-4 engineers. We expect them to be able to explain their coding choices and answer questions that show that the code is more or less their own authorship and that they know what they are talking about. After the code review, they will have 1-1 interviews.
3. If it goes well to this point, we have them back for more introductions to other company management to see if anyone notices anything concerning. We might take them to lunch.
With luck, we get 2 or 3 candidates through this process and then meet to discuss which gets the offer.
It's a new process and seems to be going Ok so far, but I'm curious if anyone else has tried this type if approach and if so, what was the outcome?
EDIT: Interviews are 2 hours each step. 1-1 interviews typically 1/2 hour. The code review is usually 1/2 - 1 hour, we don't put a time on it.
- strictnein 9y ago> We give them 6 to choose from This is a good idea that I've never seen anywhere.
- claudiulodro 9y agoNot to be super harsh, but this sounds awful. - First day is 4 interviews and a take-home project. - Second day is an interview in front of a panel followed by an indeterminate amount of further interviews. - Third day is a "culture fit" interview. 3 separate days of interviews and a take-home assignment? What professional has time for that?! EDIT: I guess it depends on the length of the interviews. Is the total interview time for a candidate more like one all-day interview split into multiple days, or is it substantially more than that? If it's the former, why not just do it all in one day so that candidates don't have to use up a half week of vacation?
- 11thEarlOfMar 9y agoSo far the people who we've called have been ok with this process. I'm pretty flexible because I don't want to impose too much, so we have shortened it to two a couple of times. On the other hand, we need people who will stick around for a few years. Our tech is very domain specific and there are few candidates that can drop in and get to work. We have to spend a lot of time bringing them up to speed on the code base. So we don't want to pull the trigger too soon. And we definitely don't want to bring people in for subsequent interviews if it's obviously not going to work. Regarding cultural fit, the question I ask the team is "You're going to see this person every work day for years. Do you think you'd be Ok with that?" I think it's reasonable to assess that as part of the process. EDIT: Interviews are 2 hours each step. 1-1 interviews typically 1/2 hour. The code review is usually 1/2 - 1 hour, we don't put a time on it.
- Balgair 9y agoI'm curious, do you actually have people staying for years? If you have to be so cautious about working with someone, that may reflect more on you all/management and not the people coming in. All the same, this process is really deep and long, you guys better pay well.
- 11thEarlOfMar 9y agoAverage tenure of the SW team is >10 years.
- claudiulodro 9y agoOh OK. You are offering a legitimate long-term career, so this makes more sense. It's worth putting up with an extra interview or two when you won't have to worry about them for 10+ years. :) It's much more ridiculous when a web dev or phone app shop has hoops upon hoops to jump through.
- ramblerman 9y ago> So far the people who we've called have been ok with this process. I went through some of these. I had just come back from a 6 month trip and was effectively 'unemployed'. I was fine with it then as well. No way that I would have/make that time currently being a full time employee. Just keep in mind you may be selecting for a particular type of candidate with this strategy.
- DeonPenny 9y agoYou're going to get a lot of people dropping out of that funnel. If you only get 2 to 3 people who also have offers from 3 to 4 other places this kill your ability to hire. plus thats a huge time investment for the interviewer as well.
- 013a 9y agoIts a little ridiculous that you speak as if you know more about his hiring metrics than he does.
- perryh2 9y agoI'd interview at your company if you made your take-home assignment your first step and combined the interviews with engineers and management into a single day.
- lliamander 9y agoHere's our process: 1. quick phone-screen by recruiter. They ask some high-level job skills questions and inform the candidate of our process 2. take-home assignment. Should take only a few hours. We look at both general programming and software design skills, but the assignment also includes some data structures / algorithms stuff and thread-safety. Note that: a. The assignment is open-book (no need to memorize computer science trivia) b. The algorithms and data structures are actually used by us in production (it is relevant to the work being done) 3. Once the homework is complete, the hiring panel reviews the homework assignment and resume. I completely review the homework before even touching their resume, so that my appraisal of the code is as unbiased as possible. 4. The candidate is brought in for the interviews (assuming the panel approves). We do four 1-hour, 1-on-1 interviews (1 manager, 2 developers, 1 tester). The style is very conversational, and we want to make sure candidate can speak intelligently to different aspects of software engineering. The only white-boarding I may ask a candidate to do is to manually show the algorithm that they implemented as a part of the homework.
- TulliusCicero 9y agoThree days of interviewing sounds like a good way to pre-filter out strong candidates who are already gainfully employed enough to not put up with this crap.
- taysic 9y agoI can tell you as a candidate from a top university I never stick with interviews that are this involved! If it works for you that's good to hear but to me 1 day is enough.