Whether we like it or not, part of being a technical leader is mastering the time-consuming, and sometimes painful recruiting and hiring process.
To be successful as a technical leader you need an exceptional technical team but the good news as a leader, is that you own the responsibility to build and grow that team.
While some companies have developed good processes for hiring technical teams, startup and small/mid-size companies often lack well-defined hiring strategies or use processes that aren’t effective for assessing technical hires.
We have all made hiring mistakes that proved costly and painful so I view it as business critical for technical leaders to establish and implement an effective hiring process for building high performance technical teams.
Earlier in my career as a senior software engineer, I was hired by the Peter Norton Computing Group, recently acquired by Symantec.
They had the largest concentration of technical talent that I had seen up to that point in my career so I found it exciting to work with a group of such experienced technical talent and strong motivation, something of a “dream team”.
While one of my childhood nicknames in elementary school was “the brain,” I was far from the smartest person in the room at Peter Norton. It was sufficient enough for my ego to believe that, in a small meeting, I might be a close second.
As a result of that experience I learned a few things about the technical teams I wanted to be a part of:
It also led me to a philosophy about hiring for technical teams.
Fundamentally, when hiring software engineers and all other things being equal, I value talent (i.e., innate ability) over skill (i.e., learned ability).
Borrowing from the Agile Manifesto, while there is value in skills, I value talent more.
As a technical leader, I’ve discovered and adopted 2 tools that I have found useful in hiring for technical talent:
As part of their hiring process the Peter Norton Group used a panel interview called the “firing squad”.
This was not your typical subjective panel interview, which I’ve never really liked.
The firing squad technical interview is different in that it is purely technical in content and more objective than the typical panel interview.
As I grew into becoming a technical leader and eventually CTO, I incorporated the firing squad technical interview into my own hiring process and found it to be effective in helping select intelligent and talented individuals.
Let me explain the process and objectives as it relates to interviewing technical candidates.
“Your Resume mentions that you have some experience with SQL. Would you tell us more about your work in this area?”
“Can you give us an example of an SQL query?”
“Ok, so it sounds like you’re familiar with SQL queries. Can you explain what a Join is?”
“How about a Left Outer Join?”
“Ok, so if a row from the first/left table doesn’t have a match, does it show up in the result?”
The firing squad technical interview is an unfair match-up by design.
No candidate comes out with a perfect score.
A key objective is to go beyond assessing the candidate’s learned skills and see how they think (i.e., innate ability).
The idea is NOT to beat up the candidate. Once it is clear the candidate is unable to effectively drill down further on a certain topic, move on to another topic rather than continue to ask questions they are unable to address.
In practice the firing squad takes more time with a more knowledgeable and more talented candidate.
IMPORTANT: Remember that while we have a need to assess the technical capability of the candidate, we want to do this in a professional and friendly manner. If we decide to hire the candidate, we don’t want them to decline because they think we are jerks.
Later in my career, I was introduced to an additional tool – an aptitude assessment test.
There are numerous aptitude assessment tests out there, but the one I’ve used is oriented toward software engineers.
The test describes a simple hypothetical computer language, and then asks multiple choice questions related to this hypothetical language.
The 20 questions on the timed test gradually introduce additional syntax, semantics, operators, etc. for this hypothetical language, and subsequent questions build upon prior information provided about the language.
While prior experience with computer languages would likely be advantageous, it is not required as the test itself provides everything needed to answer the questions. Which makes sense, since it is an aptitude test, not a skills or knowledge test.
Before using the aptitude assessment test with candidates, I wanted a better feel for what the scores might mean. I took the test myself and invited other members of our technical team to take it if they wanted to. The test scores from internal team members were very closely aligned with my own personal experience of their talent.
The person I considered to be the most talented member of the technical team achieved a perfect score. We also had a contractor working for us who was a retired military helicopter pilot, and more recently a retired database administrator (DBA) from a U.S. National Laboratory. His background and work experience were non-traditional for a software engineer, but I knew him to be very intelligent, talented, and an excellent problem solver.
He scored higher than many of the more traditional software engineers on our technical team, which I found consistent with his observed job performance.
Interestingly, he later told me that the military had pilot candidates take a similar aptitude assessment test to screen their helicopter pilots.
One aberration to the internal test results was a talented member of the team who scored lower than I expected, but I believe his higher anxiety personality likely made him a poor test taker. Whatever the reason, it’s important to note that a single metric can’t definitively determine future performance.
The firing squad technical interview and aptitude assessment test are just two ways to help gauge technical talent.
The extremely intelligent and talented team member who got a perfect score on the aptitude assessment test also went through our firing squad technical interview about 8 years previously. He had just recently graduated from a college of computer science and had some intern experience. We were looking for a Java developer, but his experience was primarily with C#.
On paper, he was an unremarkable candidate – a wild card candidate that I tend to bring in for interviews. Despite his minimal real-world software engineering experience, he worked through the technical questions and problems, often with educated guesses.
We observed his thought process as he figured out answers on-the-fly and correlated his C# knowledge to Java-specific questions. He knocked that interview out of the park and impressed us.
Despite some reservations from team members that he lacked Java experience, we hired for talent that day and found a “diamond in the rough.” He was one of the best hires I ever made.
Interviewing and hiring for technical teams is a challenge, made harder by the fact that resumes often lie.
The firing squad technical interview and aptitude assessment test are not silver bullets, nor are they the end-all-be-all in assessing candidates. You also need to consider other traditional factors when hiring for our technical teams, such as cultural fit.
Hiring for exceptional talent helps build exceptional teams.
The firing squad technical interview and aptitude assessment test are useful tools to have in the toolbox for building high performing technical teams.
CTO Academy provides leadership courses and coaching for technology leaders around the world.
90 Things You Need To Know If You Want to Become The CTO
We have all worked in places where the team doesn’t trust the leader.
Where the leader doesn’t trust the team.
It rarely ends well.
What if you could anticipate every problem, issue or obstacle in life before they occurred? Effective tech leaders are able to anticipate more than most.