Want to See Their Skills? Just Have Them Do a Code Review
Today, we’re thrilled to announce the launch of our new Code Review question type. Code Review questions give industry candidates a real-world task that takes less than one hour: review code written by someone else and provide feedback on it. This task is ideal for candidates with existing industry experience and can be used to provide signals on a variety of skills. Depending on what you have the candidate review, and the comments they provide, you can get a signal on candidates’ technical knowledge in any domain.
Take the candidate experience a test drive with this sample test.
Code Review questions enable the entire hiring team to evaluate candidate expertise firsthand. Written comments from the candidate provide a strong signal of their insight and collaborative capabilities—all with minimal time investment from the candidate.
With this release, we are adding five new questions to our library. These questions are “dirty” code files that senior candidates can mark up with suggested improvements. Using this new question type, you can also create your own custom questions and make it as realistic as you want. For example, you could start with a recent pull request from your repro to give the candidate a taste of the code they’d be contributing to.
The challenge with screening senior engineers
HackerRank is the de facto standard to screen recent graduates and software developers early in their career. Our automated test cases make it possible for candidates to solve coding challenges and implement functionality in their language of choice. In a pool of applicants with similar resumes, you can easily filter down to those who have the skills you need.
But screening senior candidates presents a new set of challenges:
Basic coding tests don’t assess the right skills
When assessing a senior candidate, you want to screen them for the skills they need in a more senior role, like design, performance, maintainability, security, and mentoring.
Asking candidates to write basic functions, for example, gives a limited signal on those skills. But making the test more challenging—like adding trick questions or more laborious tasks—makes for a poor candidate experience.
Screening tasks take too much time
One of the other challenges in screening senior candidates? Senior screening tests take a significant amount of time to complete. Giving a candidate a real app to build or a framework to work on, for example, might help you better screen a senior candidates’ skills. But completing those projects can take a candidate hours to complete—so it’s not a welcoming first step. If your screening test is longer than one hour, you will face candidate drop-off and will lose out on great talent who are too busy to spend the time on your project.
The alternative? Screen based on resumes, or skip the screening step and give them a live interview as a first step. With the first approach, you open the team to bias by focusing on resumes instead of proven skills. And with the second, you risk taking excessive time from your engineering team to interview unproven candidates.
A real-world task in less than an hour
For senior candidates, the ideal screening step is one that a candidate would be expected to do on the job, but can be done in less than an hour. It provides strong signals for the candidate's skill and experience, and provides a great candidate experience for the candidate.
Enter the Code Review question.
Introducing the Code Review question type
Code reviewing is a common day-to-day task amongst engineering teams—just one of many checks that teams conduct before pushing code to a production service. In this process, the developer creates a pull request. After that, other members of the team give feedback on the pull request, and suggest changes as needed. That helps make sure the code is not just technically correct, but will be maintainable long term. For someone to be a reviewer, they must have a level of maturity and possible mastery of the code they are reviewing. There is generally a strong positive correlation between the best reviewers and high performing engineers.
This day-to-day task can now be simulated through HackerRank with Code Review questions. Using Code Review, you can ask a candidate to review existing code, adding comments and suggestions as though they’re already on the team. You can use it to get feedback on new files, or to simulate a change to existing code.
Once they’ve finished their review, you can look at the comments the candidate raised and compare it to a grading rubric created by the question creator.
How to use Code Review in your hiring process
The goal isn’t just to test if a candidate has reviewed code in the past. Instead, by analyzing the depth of comments, you can get a better signal on exactly how senior they are.
A more junior candidate, for example, might only call out syntax, spacing, or naming. A senior candidate, on the other hand, might raise more probing questions about long-term readability, maintainability, security concerns, and scalability.
The Code Review question type can also be used for non-senior roles. For example, at HackerRank, we use Code Review questions screen for DevOps internship candidates. In that process, we provide the candidates with a Kubernetes YAML configuration file and ask them to add comments and give advice for any potential problems or improvements.
We’re excited to help you transform your senior hiring with this new question type, and look forward to seeing how you use it!
Dan Somrack is the Senior Director of Product Management at HackerRank. As leader of the HackerRank for Work team, Dan is passionate about crafting seamless, effective end-to-end hiring experiences. He uses his combined background across computer science, product, and engineering to help customers spend less time on hiring—and more time innovating. Dan has previously worked at Microsoft, AtHoc, Blackberry, and has served as an advisor to several early startups.