Some of you may know that I’m passionate about helping people from non-traditional computer science background enter our industry and have done quite a bit of work over the last few years towards that end through partnerships with immersive code schools like General Assembly and Code Fellows. In fact, at this point, nearly one third of my organization has come from one of those programs.
There are some inherent scale limits to hiring graduates of these programs however. Most notably, I don’t have nearly enough open roles at any point in time to match the number of candidates. Recently, in looking for alternate ways to continue engaging with and supporting up-and-coming graduates, we’ve discovered a new opportunity that I would like share you as I believe that it is something to replicate.
Every 6-8 weeks, we (initially my team but more recently other teams around the company) have been hosting students and program managers from Code Fellows for mock interviews. In order to provide a realistic developer interviewing experience, these are setup as a “loop” of 3 interviews, each designed to assess different competencies. Following the 3 rounds, the students meet with employees to discuss culture and ask questions while the interview panel meets to review each candidate. We then share the panel’s feedback with both the candidate and the Code Fellows program managers in order to provide future guidance to both the candidate and the program.
While our developers are interviewing the students, the Code Fellows program managers are also in the room, evaluating the interviewing experience. After the interviews, the program managers compile their own notes with feedback from the candidates and provide us with a report that can then help us better identify sources of bias and improve our interviewing experience going forward.
Perhaps a more unexpected discovery from the experience thus far has been that the mock interviews gave our developers an opportunity to develop interviewing skills in a safe environment (e.g. nobody’s future depended on the interview outcome). As we were planning the the initial event, I discovered that half of those who had volunteered to interview had never interviewed anyone – ever! Many others had interviewed a handful of people in the past, but didn’t have a tremendous amount of experience. And the group as a whole had no experience operating as a cohesive interview panel. In fact, the simple exercise of planning for mock interviews produced the following set of competencies which have already helped to form a more standardized foundation for our overall interview process.
- Curiosity - Is the candidate genuinely interested in understanding the topics discussed, even when they don’t know the answer themselves?
- Analytical - Can the candidate take an abstract or non-technical problem and translate it into a technical solution?
- Articulate - Can the candidate think out loud such that the interviewer is able to follow their reasoning?
- Persistence - How does the candidate handle getting stuck? Do they switch directions, ask questions, give up?
- Depth - Is the candidate able to go under the surface of a technology and understand how it works?
- Methodical - Does the candidate walk through their solution with example data? Do they write tests? There are many ways that this competency can present - the opposite, however, is that they fumble through a solution via trial and error.
- Breadth - Does the candidate have a basic familiarity with concepts in the field of software development. These may include topics such as data structures and algorithms, computer organization, and networking.
While I’m sure these competencies will evolve over time, they provide the team with a common vocabulary for assessing and discussing candidates - and this leads to a more consistent and equitable interview experience for candidates. Additionally, developers are learning to work together as a cohesive panel to both plan for and conduct interviews, yielding a stronger consensus for the overall findings of a candidate - again, creating a more consistent candidate experience.
As I hope you can see from this short description, hosting individuals for mock interviews is proving to be equally valuable to our development teams as it is to the candidates and as a result, we plan to continue the practice. Like I said at the beginning of this post, though, I don’t want your organizations to miss out on the opportunity either, and would encourage you to try out similar programs. There are a tremendous number of benefits, including:
- Early access to developing talent
- External feedback on your interview process – particularly from the standpoint of diversity and inclusion
- Real-world interview training for employees
- Standardization of interview process, competencies, and levels of difficulty for questions
In sum, this exercise has been one of the best examples of win-win that I’ve seen in a while, and I hope together, you can help us scale it more broadly in the future. Together, maybe this can be a small thing that we all do to add a little more equity to our industry.