Skip to Main Content

I wrote this guide as we started to spin up our Global Capabilities Center (GCC) in India.   For a long time I’ve had the point of view that the current model of “three interviews” for hiring is a terrible way to pick team members.  In contrast, a well developed, test-driven approach to hiring should give you insight into a candidate’s ability to, you know,  actually do the job you are hiring them for.  This guide is the process for that, lessons learned and how to knit it together with technology.

Traditional Interviews vs. Test-Driven Hiring

Let’s start with traditional hiring.  This typically uses unstructured, short interviews aimed at assessing “fit.” Here’s what I don’t like about it:

In contrast, a test-driven hiring process focuses on demonstration of skills and, ideally, drive:

The Process – How It All Works

1. Role Definition

Start with clear and detailed descriptions for each role.   Include in this quite a bit about HOW the person is expected to do the role.   Specifically, the technology we expect this person to use in the role or the technical environment we expect them to develop in.   How come?  Well, have you’ve ever taken a sales rep that’s only worked in Salesforce and dropped them into Hubspot? It’s like converting a buddhist to a catholic.  Not a trivial transition.   Doable but tough.  Switching technical environments is tough.   Unless it’s a really technically curious person, and those are rare, you’re signing up for a lot of training costs.   What we’re trying to do here is:

  1. Define what this person is responsible for – the final business result we want from them
  2. Define the system of record or technical stack they’ll be using to achieve that

Most job descriptions do an okay job of (1) and a lousy job of (2).   In my experience the best candidates, those that can jump in quickly and contribute in a meaningful way, need to meet both (1) and (2).

2. Screening

Screening is the process of taking all the potential candidates and finding the ones that are likely to be successful in the job based on readily available public (like their LinkedIn page) or semi-public information (like a resume). With that information in hand I screen candidates based on the following filters:

3. Work Relevant Exercise

We’ve got a candidate we think is a good match – now let’s test their skills.   Each job has its own testing approach that mimics the kind of job they’ll be doing on a daily basis. Here are some common examples:

Software Development (Engineering)

Administer a coding test and sample project.   The coding test will evaluate programming proficiency in relevant languages.   The sample project can be done over a 48 hour period (see below) and presented the following day.   Look for people that not only complete the project but focus on trying to solve the business problem the customer has in a compelling fashion.   I.e. they aren’t just taking a specification and implementing it.   They demonstrate some critical thought as it relates to the issue.

The testing platform you chose here will support timed coding problems, automated scoring, and plagiarism checks. Is that going to get you a perfect reflection of the candidate? No.  Is it going to be way better than just talking to them.   Definitely.

Quality Assurance (QA)

Present QA candidates with an old version of your application that’s got some bugs.   Task them with writing test cases for a few features and then executing those test cases.   The goal is to test their domain knowledge of QA processes, their ability to take a specification and turn it into a test plan, their attention to detail and their ability to ask for more information when the specification is (as it always is) unclear on certain points.

Product Management

Give them an exercise for a real world feature that you are currently considering.  Think: something in the backlog where there’s a degree of problem definition but that’s about it.   Have them come back with a well defined definition of the feature that matches whatever your internal feature definition structure is.  If you don’t have one you can use ours

For this scenario, I’d recommend more like 48 hours and have them think through the business problem, why it’s worth solving, how this makes sense in our competitive space, what we need to build and how we’d validate that we solved the problem.   We’re also evaluating their ability to communicate all that clearly in writing.

Content Generation

Assess content candidates with a writing and research assignment. For example, ask them to produce a short blog post on a relevant topic or to curate and summarize content from given sources.  As part of this give them your style guide and assess their conformance to it.   Expect that they’ll use an LLM to generate content – and that’s just fine.   We want them to leverage AI here.   We’re not testing for that.   We’re actually testing for how well they use AI.

Sales Reps

Use a role-play simulation focused on lead generation and deal progression tasks.  Key idea is that we’re having candidates run through several realistic sales scenarios – pitching, objection handling, and closing – to showcase their communication and persuasion skills.   Anyone can fake it once.   It’s more difficult to fake it many times in succession.

Testing Platforms and Scoring

There are are a variety of platforms for handling testing that are provided by various and sundry online applicant testing firms.  In my experience most tend to be structured around technical skills assessments.   In that camp I always like HackerRank – fellow JMI Equity investment.  A couple other recommendations I received from our People team at Level included Mercer | Mettl, Codility and CodePad.  For sales role assessments you’ll likely need a different platform to simulate rep interactions.   For example, Vervoe’s sales simulations put candidates in an immersive CRM environment where they must complete tasks such as writing a prospect outreach email, handling a customer objection, or leaving a voicemail pitch.

Across all platforms you’ll find that assessments are scored against a predefined rubric.  In general I’d just use the out of the box rubric as it’ll keep scoring as objective as possible.   The more you mess with the scoring the more you’re likely to introduce your own subjectivity into it.  If you perform an assessment independent of a platform you’ll want to write up a rubric (LLMs are great here) and then use an LLM to help you grade the output against that rubric.   You’ll then need to do a secondary pass on the LLM output to sanity check it against the rubric.

One final point: all these tests also serve as a motivation filter.   Only genuinely interested, driven candidates will put in the effort to complete them diligently.  Yes, we want to keep them short and not onerous.  That noted, we are also filtering out people that are overly cocky (“You want ME to take a test?”) or just plain lazy.

4. Asynchronous Project Assignment

After the initial skill tests, the most promising candidates proceed to a deeper project-based assignment. This is a longer, asynchronous exercise that simulates a real work deliverable and allows assessment of both skill and work ethic. The project assignment is typically sent via email or a platform, and candidates are given a reasonable timeframe (e.g. 3–5 days) to complete it on their own schedule. The nature of the project depends on the role: a developer might build a small app or add a feature to an open-source repo; a product manager might create a lightweight product roadmap or perform a competitor analysis; a content specialist could be asked to produce a short content calendar or writing portfolio piece; an SDR might need to research a target account and craft a multi-touch outreach plan. Crucially, these assignments mirror tasks the hire will eventually handle, providing a “preview” of their on-the-job performance. Candidates are expected to deliver a tangible output (code repository, document, presentation, etc.) that can be reviewed by the hiring team. 

What we’re testing for here:

The submissions from the project assignment should be reviewed by at least two people typically the hiring manager and another senior team member from the function.   As with the work relevant exercise it should use a scoring rubric to evaluate key criteria (e.g. for a coding project: code correctness, style, completeness of requirements; for content: clarity, accuracy, adherence to brief; etc.).  Only candidates who meet a predetermined quality bar move forward. It’s important to communicate expectations clearly to candidates at this stage – both to ensure fairness and to keep them engaged. 

To Pay or Not to Pay?

Paying people for the work they’re doing has the benefit of giving them (fair) compensation for value they are being asked to provide.   The catch is it runs the risk of creating an employment relationship which we definitively don’t want.   In general, if you have to pay, I’d consider a small stipend or honorarium for extensive projects, as a gesture of goodwill for the candidate’s time.  You wouldn’t do this for the early exercises but it likely would make sense for the more detailed take home test.

5. Deep Dive Interview (Top Grading)

Past performance is the single best predictor of future performance.  The catch is you’ll only get a clear read on past performance when you are forced to study it in painful detail. Top Grading is the only process I’ve seen that allows you to do that.  Here’s the basic top grading process:

Lessons Learned Running Hundreds of These

If Top Grading is so great why doesn’t everyone do it?

It’s painful.   It’s painful for the company because we’ve got to teach hiring managers a new way of doing things and enforce it.   It’s painful for all people involved as it takes a ton of time. 

Hiring managers, in particular, tend to reject it as a process unless they’re deeply indoctrinated into the religion of Top Grading.  Top Grading takes about two hours of prep and follow-up and three to four hours for the interview itself.   Be prepared, the “average” hiring manager will fucking hate it because they think it (i) takes them away from their “real” job and (ii) puts a lot of needless structure around something they’ve done a lot.  

In my experience hiring managers want to have a 45-minute polite, surface level chat and make a decision.   They’ll tell you they know what makes a good candidate.  “I’ve built teams before, I know what I’m looking for.”  “I can ‘read’ a candidate and just know.”   All of those statements are, in my experience, 100% bullshit.   They don’t have a well defined definition of what good looks like.  They have a rough idea of good.   They have no process for testing for good.  In fact they think tests aren’t helpful or that the role has some ineffable quality that can’t be tested for.

What’s happening here is that most hiring managers have a drastically oversimplified profile of the right person for the job.   Basically they’re taking a person that was successful in the role for them in the past (or a boss if a first time manager), picking some aspect of that person and then applying that to determine who is “good” at the job.   

The easiest example of this that comes to mind is hiring sales reps.   Ask a sales manager and they can tell you ten different things that make a good sales rep.  Lots of that will be items that no person could determine without a deep assessment: “great work ethic”, “ability to build relationships”, “grit”.   I guarantee in that list, though, you’ll get something like “they played a competitive team sport in high school or college.”  In the sales manager’s mind that means a few things:  (i) they’ve got a good work ethic (tough to be a student athlete), (ii) they can get along with others (they were on a team) and (iii) they’re competitive.    Well, shit, that’s three key things in selling – so they’ve got to be great?

The problem is the correlation between playing a competitive team support and success in a sales role is tenuous at best.   Do I like candidates that play a competitive team sport?  Sure, doesn’t hurt.   But there’s a lot of people that played competitive team sports that are terrible sales reps.   There’s also tons of sales reps that are very successful that didn’t play a competitive team sport.  Should we exclude those? Of course not.

My point here is that we wouldn’t have a single step hiring process that says: “Did the candidate play competitive team sports?  If yes, hire.  If no, pass.” That’d be insane.   And yet, that’s exactly what you’re hiring managers are doing unless you force a much more structured process.

6. References, Offer, and Closing

Congratulations – you made it – let’s close this candidate!   

As a final due diligence step, perform reference checks focusing on the candidate’s past performance and work ethic.  You asked for the right to call former supervisors in your top grading – now you’ve got to call them.  Ask about reliability, initiative, and areas of improvement. Since references can be biased, keep the conversation brief and factual – use it to validate what you’ve observed (e.g., “Did Jane often take on tough challenges proactively?”).   In practice I’ve never actually had a “bad” reference.  It’s very risky for someone to tell you “don’t hire this person” and if a candidate thinks someone will give them a bad reference  they’ll have bailed on the process well before now.  That noted, you will get some subtle ques about the person and how they handle situations.   So, yes, do the references checks.

I recommend background checks including credit checks, if allowed by the laws governing the hire.   While it’s rare you’ll find something in the background check it does happen from time to time and it’s way cheaper to address at this phase.   Once the decision is made, move fast to extend a verbal offer and a written offer letter. Top candidates are always juggling offers, so speed is crucial – a slow hiring process can cause you to lose talent to competitors.  

Best Practices for the Indian Talent Market

We’ve decided to place our GCC in India which means thinking about the specifics of hiring in India.    While this is in no way an exhaustive list, a couple of quick thoughts:

Retention Begins at Hiring: Indian talent market sees high attrition, partly due to fierce competition. To improve retention, make sure you’re selecting not just for skill but also for genuine interest in the role and company. During interviews, probe why the candidate wants to join your organization specifically and look for alignment with your mission. Also, use the hiring process to set realistic expectations – don’t oversell a “cushy” job if it’s actually demanding, but do share how it’s rewarding. When extending the offer, a personal touch can help (like a call from a future manager expressing excitement). After hiring, invest in onboarding and continuous engagement to fulfill the promises made during hiring. Early career folks in India especially value learning and recognition, so having mentorship and clear goals from day one will reinforce that they made the right choice.