Amanda, what a great topic! Thank you for bringing this up!
I'm a software engineer with over 35 years of experience. I have owned a hardware/devops shop. I have worked as Principal Software Architect, Principal Software Engineer, Tech Lead, and Line Programmer over the course of my career.
I've lived through the mindset of a lot of the responses that I've read in these great follow up posts, and I relate.
There are some steps that I'd like to bring up that I didn't see mentioned (or missed) in the follow up posts.
So, the first step in this process is someone who has the say-so and need defines a personnel requirement for a resource to help with a project that is just getting started, or has grown to the point where additional resources are needed. The requirements for this new resource need to be clearly defined. Once this is done, a personnel search for candidates must be exercised through whatever resources the company has at it's disposal to do so. The result of this effort will be a resume list of possible candidates that satisfy the requirement. The senior technical resource at the company might whittle this down to a "short list" of resumes. These resumes should contain relevant experience that addresses the requirements. This will make that technical screener's job easier.
Picking up where this wonderful topic kicks in, finding the best from this short list...
Let's define some goals for the person(s) doing the initial technical screening.
1) First, and most important, end with the candidate having a "positive experience". You are representing your company, and the company's owner(s). Remember that.
2) Go over the candidate's resume, and discuss the individual projects that they have participated in, and especially their contribution to the project. Lead them into discussing in detail the contribution that they made, the problems that they faced, how they addressed those problems, and what they learned during the project. As the selected subject matter expert to do the technical screen, you should be able to make assumptions about the details in their description of their contribution to the project, and glean the depth of their technical experience during this conversation.
3) Lead the candidate though a "soup to nuts" discussion about software engineering in general. Their experiences. The processes that they've used. The projects that they've worked on that were disasters, and get their 20/20 hindsight on lessons learned. The projects that they've worked on that were golden, on-time, on-budget deliveries. The lessons that they learned.
4) Discuss the non-relevant technical experience on their resume. Any side projects that they've done, including self-funded development efforts (like making an iOS game, etc.).
By the time this conversation ends, you should have established common ground with the candidate, and they should have a good feeling about you, the company that you represent, and a good feeling about their accomplishments. You will also have a clear understanding of the depth of the technical knowledge, and be able to describe that in detail to the other members of the search team.
If the first step that I described has been done effectively, you should wind up with over an 80% success rate on your technical screens.
If you aren't, then it is time to look inward.
I haven't mentioned the HR processes associated with this that makes the candidate work from an HR perspective. Happy to follow up if anyone is interested...
Again, really enjoyed this... -Jeff
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.