Six question sets for employers hiring a developer without a CTO or an HR department: screening, code quality and debugging, scoping and delivery, owner fit and handover, a paid work sample brief, and a weighted scorecard. Every question comes with why it is worth asking and what a strong answer sounds like. Download as DOCX.
The first developer interview I ever ran, I asked almost nothing that mattered. I asked about frameworks, nodded at answers I could not evaluate, and hired the person who sounded most confident. Six months later I learned the difference between a developer who ships and a developer who talks well about shipping, and it cost a great deal more than a better interview would have.
At FirstHR, we build for small businesses that hire without an HR department, and the developer hire is the one owners most often tell me they felt unqualified to run. You do not need to read code to interview well. You need the right questions, a way to recognize a strong answer, and a scorecard so the decision rests on evidence instead of on whoever interviewed most smoothly.
This page gives you six question sets covering screening, code quality and debugging, scoping and delivery, owner fit and handover, a paid work sample brief, and a weighted scorecard with red flags. Every question comes with why it is worth asking and what a strong answer contains.
TL;DR
Interview a developer on five things: shipped experience, debugging method, code quality habits, scoping and delivery, and plain-language communication. Ask the same core questions of every candidate for the role, push on each answer once or twice, and pair the conversation with a short paid work sample scored against published criteria. If you cannot read code, grade specificity under follow-up rather than the code itself. Download six question sets and a weighted scorecard as DOCX.
What to Assess in a Developer
Assess five things: shipped experience, problem-solving method, code quality habits, scoping and delivery, and communication with non-technical people. Everything else, including the specific language or framework on the resume, is secondary to whether this person has built real software that real people used and can tell you honestly how it went.
Small businesses tend to over-weight the stack and under-weight the last two. A developer who writes elegant code but cannot estimate, cannot explain the work to you, and disappears until the deadline will be far more expensive than one who is merely competent and completely transparent. The sets below are ordered so the highest-signal questions come first.
Shipped experience
Names a system they built and owned
Knows what happened after release
Separates their own work from the team’s
Problem-solving method
Gathers evidence before changing code
One hypothesis at a time
Measures, then confirms the fix
Communication
Explains the work in plain language
Writes short updates without being chased
Says no with a reason and an option
Red flags
Vaguer under follow-up, not more specific
Rewrite proposed before understanding
Resists company ownership of accounts
Notice how much of that list is about behavior rather than knowledge. That is deliberate. Knowledge questions are easy to prepare for and easy to fake in a conversation; habits show up in the specifics, which is why the follow-up question matters more than the original one.
How to Interview When You Cannot Read Code
Grade method, specificity, and honesty rather than code. Every one of those is visible to a non-technical interviewer, and together they separate strong developers from confident talkers more reliably than a technical quiz you cannot score.
The practical technique is simple: ask an open question, then push twice. Ask how they debugged something hard, then ask what the first piece of evidence was, then ask how they knew the fix worked. A developer with real experience gets more concrete each time. Someone reciting a pattern they read about gets vaguer and starts using terminology instead of detail.
If you cannot judge
Judge this instead
Whether the code is good
Whether they can explain their choices in plain language
Whether the architecture is right
Whether they named a tradeoff and what they gave up
Whether the framework fits
What they have shipped with it and what broke
Whether the estimate is realistic
Whether they give a range and flag the uncertain parts
Whether the test coverage is enough
What they chose not to test, and why
If the role is senior or business-critical, borrow one hour of a developer you trust to review a work sample. One hour of outside review at the end of a structured process is worth far more than an extra interview round, and it costs less than the first month of a wrong hire.
Junior, Mid-Level, and Senior
Level is scope of independence, not years on a resume. A junior finishes well-defined tasks with review, a mid-level developer takes a feature from description to production alone, and a senior scopes ambiguous problems and makes decisions that are hard to reverse. Decide which you need before you write the questions, because the same answer can be excellent from one level and disqualifying from another.
Level
Owns
Interview mostly for
Junior
Defined tasks, with review
Learning speed, curiosity, how they handle being stuck
Mid-level
A whole feature, end to end
Delivery, debugging method, code quality habits
Senior
Ambiguous problems and tradeoffs
Judgment, decisions rejected and why, times they were wrong
Contractor or agency
A scoped engagement
Scoping, communication cadence, and handover
A small business hiring its only developer usually needs at least mid-level, because there is nobody to review the work. If the budget only reaches junior, plan for outside review from the start and be honest about that in the job description and the interview. Hiring a junior into an unsupervised role and hoping is the most common way this goes wrong.
Which Question Set to Use
Use core screening for every developer candidate, then add the sets that match the role. The six sets below are five of questions plus a scorecard, and each one carries the reason each question is worth asking alongside what a good answer contains.
Core Screening
Did they really ship?
The opening set for any developer hire: real systems built and owned, honest depth in named tools, and how they get up to speed in an unfamiliar codebase. Start here.
Code Quality and Debugging
Working habits
Version control, code review, what they choose to test, and the first three steps on a production bug nobody can reproduce. Habits, not trivia.
Scoping and Delivery
Can you plan around them?
Turning a two-sentence request into a plan, estimating in ranges, raising slippage early, and getting code in front of real users.
Owner Fit and Handover
Plain language and continuity
Explaining technical work to a non-technical manager, plus documentation, account ownership, and what happens the day they leave.
Paid Work Sample
Evidence, not opinions
A fill-in brief with a time cap, published criteria, and the debrief questions that turn a submitted task into real evidence you can score.
Scorecard and Red Flags
Score, do not guess
A weighted 1-to-5 rubric with space for written evidence, plus the red-flag checklist. The asset most developer question lists leave out.
Match the Sets to the Hire
Hiring your only developer: use all six and weight handover, communication, and delivery heavily, because nobody else will know how the system works. Adding a developer to an existing team: weight core screening and the work sample, since the judgment layer already exists. Hiring a contractor or agency: scoping, communication, and handover tell you the most in the least time. Junior hire: weight learning speed and how they handle being stuck, and plan for outside review. When in doubt, start with core screening plus the scorecard.
6 Free Question Sets to Download
Download all six as a single Word document, or copy the sets you need. Each question carries a short note on why it is worth asking and what a strong answer contains, plus a what-to-listen-for summary and space for notes. Fill in the details and use them as they are.
Download All 6 Developer Question Sets
Core screening, code quality and debugging, scoping and delivery, owner fit and handover, a paid work sample brief, and a weighted scorecard with red flags. All in one DOCX.
Set 1: Core Developer Screening Questions
The opening set for any developer hire: real systems built and owned, honest depth in named tools, how they get up to speed in an unfamiliar codebase, and when they ask for help. Start here for every candidate.
Core Developer Screening Questions
CORE DEVELOPER SCREENING QUESTIONS
Candidate: __
Role / level: __
Interviewer: __
Date: _
HOW TO USE THIS SET
This is the opening set for any developer hire, junior through senior, employee
or contractor. Ask 6 to 8 of these and use the same ones for every candidate for
the same role. You are not grading code here. You are checking that the person
has actually built and shipped software, and that their claimed experience holds
up under two or three follow-up questions.
QUESTIONS
1. Walk me through something you built end to end. What did you own personally?
Why ask: separates people who shipped from people who were nearby when
something shipped.
Good answer: names the problem, the choices they made, what they personally
wrote, and what happened after release. Uses "I" for their own work and "we"
for the team, without blurring the two.
2. What is still running in production that you wrote? Who maintains it now?
Why ask: code that survived contact with real users is the strongest signal
you can get in an interview.
Good answer: a specific system, roughly how long it has run, and an honest
account of what they would change about it today.
3. Which languages, frameworks, and tools are you strongest in, and what have you
actually done in each?
Why ask: tests depth against the resume list.
Good answer: two or three tools described with real tasks. A candidate who
claims equal expertise in ten things usually has depth in none.
4. Tell me about a technical decision you got wrong. What did it cost, and what
did you do?
Why ask: engineering maturity shows up in how someone handles being wrong.
Good answer: a real mistake, owned plainly, with the fix and the lesson.
5. How do you get up to speed in an unfamiliar codebase?
Why ask: at a small business the new developer usually inherits an existing
codebase, not a blank page.
Good answer: a method. Read the tests, trace one request end to end, make a
small safe change first, ask specific questions.
6. When do you ask for help, and when do you keep going on your own?
Why ask: the most expensive developer habit at a small company is silent
struggle for a week.
Good answer: a concrete threshold, such as stuck for more than a set time
with no new information, then ask.
7. What do you do to keep your skills current?
Why ask: technology moves and your only developer has no team to learn from.
Good answer: something specific and recent, not a generic claim about loving
to learn.
8. Why this role, at a company this size?
Why ask: a developer used to a large engineering org may struggle as the only
technical person, and the reverse is also true.
Good answer: they understand the tradeoff and want the breadth.
WHAT TO LISTEN FOR
•Specifics that get more detailed when you push, not vaguer
•Clear separation of what they did from what the team did
•Honest boundaries around what they have and have not done
•Real shipped work, with users, not only coursework or tutorials
NOTES
__
__
Set 2: Code Quality, Testing, and Debugging Questions
The habits you will live with: version control, code review, what they choose to test, and the first three steps on a production bug that nobody can reproduce. Ask them to reason out loud.
Code Quality, Testing, and Debugging Questions
CODE QUALITY, TESTING, AND DEBUGGING QUESTIONS
Candidate: __
Role / level: __
Interviewer: __
WHEN TO USE THIS SET
Use this set for anyone who will write code you have to live with. These
questions test working habits rather than trivia, so a non-technical interviewer
can still judge the answers: you are listening for a repeatable method and for
specifics, not for the right textbook term.
QUESTIONS
1. Walk me through how you use version control day to day.
Why ask: version control is the difference between a recoverable mistake and
a lost weekend.
Good answer: small, frequent commits with readable messages, branches for
work in progress, and a review step before anything reaches production.
2. How do you decide what to test, given you cannot test everything?
Why ask: a small business needs judgment about risk, not total coverage.
Good answer: prioritizes the paths where a failure costs money or data, and
can name what they would leave untested and why.
3. A bug appears in production that you cannot reproduce. What are your first
three steps?
Why ask: this is the single most common real day for a small-company
developer.
Good answer: gather evidence first (logs, the exact user path, recent
deploys), form one hypothesis at a time, and reproduce before fixing. A weak
answer starts changing code immediately.
4. Something is slow and there is no error. How do you find the cause?
Why ask: performance problems reward method over cleverness.
Good answer: measure before guessing. Narrow the layer, then the query or the
call, then confirm the fix with the same measurement.
5. How do you review another developer’s code, and how do you take a review of
your own?
Why ask: a developer who cannot receive feedback will be expensive on a small
team.
Good answer: reviews for correctness and clarity, not style preference, and
treats comments on their own work as normal.
6. Tell me about the worst code you inherited. What did you do about it?
Why ask: shows whether they can improve things incrementally or only rewrite.
Good answer: stabilized first, improved in small steps, and did not propose a
full rewrite as the opening move.
7. How do you handle secrets, credentials, and customer data in the code you
write?
Why ask: your developer will hold the keys to everything.
Good answer: secrets never in the repository, access limited to what the job
needs, and a clear sense that customer data is not test data.
WHAT TO LISTEN FOR
•Evidence before action when debugging
•A named, repeatable process rather than instinct
•Comfort improving existing code instead of only rewriting
•Security habits treated as routine, not as an add-on
NOTES
__
Still Using Spreadsheets for Onboarding?
Automate documents, training assignments, task management, and track onboarding progress in real time.
Set 3: Scoping, Estimating, and Delivery Questions
For anyone who will turn your two-sentence request into working software: breaking work down, estimating in ranges, raising slippage early, and getting a change safely in front of real users.
Scoping, Estimating, and Delivery Questions
SCOPING, ESTIMATING, AND DELIVERY QUESTIONS
Candidate: __
Role / level: __
Interviewer: __
WHEN TO USE THIS SET
At a small business the developer often decides what gets built, in what order,
and how long it takes, with no product manager in between. This set tests whether
they can turn a rough request into scoped work and give you an estimate you can
plan around. Weight it heavily for a first or only developer, and for contractors.
QUESTIONS
1. I describe a feature in two sentences. How do you get from there to a plan?
Why ask: this is exactly how requests will arrive from you.
Good answer: asks clarifying questions about the user and the edge cases,
proposes the smallest useful version first, and confirms before building.
2. How do you estimate work, and how often are your estimates right?
Why ask: honesty about estimating is more useful than confidence.
Good answer: breaks work into small pieces, gives a range rather than a
single number, and flags what is uncertain. Anyone who says their estimates
are always accurate is telling you something.
3. You are halfway through and it is clearly going to take twice as long. What
do you do?
Why ask: the answer predicts how much unpleasant surprise you will absorb.
Good answer: raises it immediately with options, such as cutting scope,
shipping a smaller version, or moving the date. Not silence until the
deadline.
4. How do you decide between doing it quickly and doing it properly?
Why ask: both answers are sometimes correct, and you want to see judgment.
Good answer: ties the choice to the stakes and the reversibility, and is
explicit about the tradeoff rather than deciding silently.
5. Walk me through how code you write reaches real users.
Why ask: shipping is a separate skill from coding.
Good answer: a repeatable path with a review step, a way to check the change
worked, and a way to undo it.
6. What would you do in your first thirty days here?
Why ask: reveals whether they think about the business or only the stack.
Good answer: learn the system, ship something small and useful early, and ask
what actually hurts before proposing big changes.
7. Tell me about a project that failed or was cancelled. What was your part?
Why ask: every experienced developer has one, and the answer shows ownership.
Good answer: specific, non-defensive, with a clear account of what they would
do differently.
WHAT TO LISTEN FOR
•Clarifying questions before solutions
•Estimates given as ranges with named uncertainty
•Early escalation of slippage instead of end-of-deadline surprises
•Interest in the business problem, not only the technology
NOTES
__
Set 4: Working With a Non-Technical Owner and Handover Questions
The set most developer question lists skip: explaining technical work in plain language, saying no with a reason, documentation, account ownership, and what happens the day this person leaves.
Working With a Non-Technical Owner and Handover Questions
WORKING WITH A NON-TECHNICAL OWNER AND HANDOVER QUESTIONS
Candidate: __
Role / level: __
Interviewer: __
WHEN TO USE THIS SET
Use this whenever the developer will report to someone non-technical, work
remotely, or be your only technical person. These questions test communication
and continuity: whether you will understand what is happening, and whether the
business survives the day this person leaves. Most question lists skip both.
COMMUNICATION QUESTIONS
1. Explain something technical you built to me as if I have no background.
Why ask: this is the single most useful question for a non-technical hiring
manager, and it is scored on clarity, not on the technology.
Good answer: plain language, an analogy that fits, and a check that you
followed. Weak answers retreat into jargon or talk down to you.
2. How do you keep a non-technical manager informed without a daily meeting?
Good answer: a short written cadence, plus a clear rule for what gets
escalated immediately.
3. How do you say no, or not yet, to a request from the owner?
Why ask: a developer who agrees to everything will quietly miss everything.
Good answer: explains the cost in time or risk and offers an alternative.
4. How do you work with people outside engineering, such as sales or support?
Good answer: real examples of translating between a business need and a
technical change.
HANDOVER AND CONTINUITY QUESTIONS
5. If you were hit by a bus tomorrow, what would we need to keep running?
Why ask: for a business with one developer this is the largest single risk on
the whole hire.
Good answer: treats it as a fair question, names documentation, access, and
deployment steps, and has done a real handover before.
6. What documentation do you write, and who is it for?
Good answer: enough for the next person, written as they go, not a promise to
document later.
7. How should accounts, domains, hosting, and repositories be owned?
Why ask: registering critical accounts in a personal name is a common and
painful mistake.
Good answer: everything in the company name with the owner holding
administrative access. Anyone who resists this is a red flag.
8. For contractors: what happens to the code, the accounts, and the credentials
when the engagement ends?
Good answer: a clean handover as a normal part of the work, with ownership of
the code assigned to the company in writing.
WHAT TO LISTEN FOR
•Plain language under pressure, without condescension
•Proactive written updates rather than silence
•Comfort with company ownership of accounts and code
•A real, previously practiced handover, not a hypothetical one
NOTES
__
Companies Using FirstHR Onboard 3x Faster
Join hundreds of small businesses who transformed their new hire experience.
Set 5: Paid Work Sample Brief and Debrief Questions
A fill-in brief with a time cap, a payment line, and published criteria, plus the debrief questions that turn a submitted task into evidence you can actually score.
Paid Work Sample Brief and Debrief Questions
PAID WORK SAMPLE BRIEF AND DEBRIEF QUESTIONS
Candidate: __
Role / level: __
Reviewer: __
HOW TO USE THIS BRIEF
A short, paid, job-realistic task tells you more than any set of questions,
especially if you cannot evaluate code yourself, because the debrief conversation
is where the evidence appears. Keep it small, pay for the time, give every
candidate for the role the same brief, and publish the criteria in advance.
THE BRIEF (FILL IN)
Task: _
(Something close to real work: a small feature, a bug fix in a sample
repository, or a review of an existing piece of code.)
Time cap: ______ hours. Do not exceed it. Submit what you have at the cap.
Payment: $______ , paid on submission regardless of the outcome.
Deadline: _
Provided: repository or sample code, sample data, access instructions.
Not provided: production access or real customer data.
Criteria the work will be scored on (share these with the candidate):
[ ] Does it do what was asked
[ ] Is it readable by someone else
[ ] Are the risky parts handled or flagged
[ ] Were the assumptions and open questions written down
[ ] Was the time cap respected
DEBRIEF QUESTIONS (ASK AFTER SUBMISSION)
1. Walk me through your solution. Why this approach and not another one?
2. What did you assume, and what would you have asked if you could?
3. What did you leave out because of the time cap? What would you do next?
4. Where is this most likely to break, and how would you find out?
5. If a teammate had to change this in six months, what would help them?
6. What part are you least happy with?
WHAT TO LISTEN FOR
•Named tradeoffs and assumptions, written down rather than hidden
•Honest self-critique of their own submission
•Respect for the time cap and the stated criteria
•An answer that gets more specific under follow-up, not less
FAIRNESS NOTES
•Same brief, same time cap, and same criteria for every candidate for the role
•Pay for the time. Unpaid multi-day projects screen out good candidates who
have jobs and caring responsibilities
•Do not use candidate work in your product unless you have agreed and paid for
that separately
•Keep the task job-related and score it against the published criteria
NOTES
__
Set 6: Developer Interview Scorecard and Red Flags
A weighted 1-to-5 rubric with space for written evidence, plus the red-flag checklist. Use it with any of the sets above so the decision rests on a record rather than a memory.
Developer Interview Scorecard and Red Flags
DEVELOPER INTERVIEW SCORECARD AND RED-FLAG CHECKLIST
Candidate: __
Role / level: __
Interviewer: __
Date: _
HOW TO SCORE
Score each area from 1 to 5 immediately after the interview, while it is fresh,
and anchor every score to something the candidate actually said. If more than one
person interviews, each scores independently before the group talks. Use the same
rubric and the same weights for every candidate for the role.
Rating scale:
5 = Strong, specific evidence 4 = Solid evidence 3 = Some evidence
2 = Weak or mixed evidence 1 = No evidence or red flags
SCORING AREAS AND SUGGESTED WEIGHTS
Shipped experience: real systems built, owned, and maintained Weight x3
Score [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ]
Evidence: ______
Debugging and problem-solving method: evidence before action Weight x3
Score [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ]
Evidence: ______
Code quality habits: version control, review, testing judgment Weight x2
Score [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ]
Evidence: ______
Scoping and delivery: estimates, early escalation, shipping Weight x2
Score [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ]
Evidence: ______
Communication with non-technical people Weight x2
Score [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ]
Evidence: ______
Handover, documentation, and account ownership Weight x1
Score [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ]
Evidence: ______
Work sample result (if used) Weight x3
Score [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ]
Evidence: ______
RED FLAGS (WEIGH CAREFULLY)
[ ] Cannot describe any system they personally built and shipped
[ ] Answers get vaguer under follow-up instead of more specific
[ ] Blames every past problem on other people or on old code
[ ] Proposes a full rewrite before understanding the existing system
[ ] Uses jargon to avoid a plain-language explanation
[ ] Resists company ownership of accounts, domains, and repositories
[ ] Dismisses testing, review, or documentation as unnecessary overhead
A strong developer answer is specific, names a real tradeoff, and gets more detailed when you push. A weak answer does the opposite: it stays general, presents one option as the only option, and retreats into terminology when questioned. That pattern holds regardless of the language or the stack, which is what makes it usable by a non-technical interviewer.
Walk me through something you built end to end. What did you own personally?
Strong answer: Names the problem the software solved, the choices they made and rejected, the part they personally wrote, and what happened once real people used it. Distinguishes clearly between what they personally wrote and what the team delivered, and gets more specific when you ask a follow-up.
Weak answer: Describes a project in the passive voice with no personal contribution, or lists technologies instead of decisions. If the detail thins out when you push, the ownership probably was not theirs.
A bug appears in production that you cannot reproduce. What are your first three steps?
Strong answer: Gathers evidence first: the logs, the exact steps the user took, what was deployed recently. Forms one hypothesis at a time and reproduces the problem before changing anything. Mentions telling you what is happening while they work on it.
Weak answer: Starts editing code immediately, guesses at causes in no particular order, or says they would restart the server and see. Method matters more than the specific answer here.
Explain something technical you built as if I have no background.
Strong answer: Plain language, one analogy that actually fits, no jargon, and a check that you followed. This is scored on clarity rather than on the technology, which is why a non-technical interviewer can grade it confidently.
Weak answer: Retreats into acronyms, talks down to you, or gives up and says it is complicated. A developer who cannot do this will be hard to manage when you are the one deciding priorities.
The most useful follow-up in the whole interview is some version of what happened next. Real projects have consequences, and a candidate who owned the work remembers them. Ask what broke, what users said, and what they would change now, and listen for whether the story survives the detail.
Why a Paid Work Sample Beats a Puzzle
A short, paid, job-realistic task produces better evidence than an algorithm puzzle, because it tests the work the person will actually do. Keep it to a few hours with a hard time cap, give every candidate for the role the same brief, and publish the criteria in advance so the score is not a matter of taste.
Pay for the time. Unpaid multi-day projects screen out strong candidates who already have jobs or caring responsibilities, which means they filter on availability rather than on skill. A few hours, paid on submission regardless of outcome, gets you a much better pool and a much cleaner conscience.
A Coding Exercise Is a Selection Procedure
Any test you use to decide who advances is a selection procedure, and the EEOC guidance on employment tests is clear that it should be job-related and consistent with business necessity, applied the same way to everyone, and open to a reasonable accommodation on request. The federal Uniform Guidelines on Employee Selection Procedures set out the same expectation. In practice: same brief, same time cap, same published criteria, every candidate for the role. This is general information, not legal advice.
The debrief is where most of the signal is. Ask why they chose that approach, what they assumed, what they cut because of the cap, and where it is most likely to break. A candidate who talks honestly about the weakest part of their own submission is showing you exactly how they will behave on your codebase.
Handover, Access, and Who Owns the Code
If this is your only developer, continuity is a real part of the evaluation, not a formality. Ask directly what you would need to keep the business running if they left tomorrow, and treat the reaction to the question as informative as the answer itself.
Accounts in the company name
Domains, hosting, app stores, and repositories registered to the business, with the owner holding administrative access. A candidate who resists this is telling you something.
Written ownership of the code
For employees and especially contractors, put in writing that the work product belongs to the company. Agree it before the engagement, not at the end of it.
Documentation as they go
Enough for the next person to deploy, restore, and change the system. Ask what they document today, not what they promise to document later.
A rehearsed handover
Ask about a handover they have actually done. Someone who has run one describes access, deployment steps, and known weak points without hesitation.
The account-ownership question is worth asking of every candidate, employee or contractor. Domains, hosting, app store listings, and repositories registered in a developer's personal account is one of the most common and most damaging mistakes a small business makes, and it is almost always discovered at the worst possible moment. A good candidate will agree immediately and often raise it before you do.
For contractors, settle intellectual property in writing before work begins, alongside the usual employee or contractor classification questions. A clean handover at the end of an engagement should be part of the scope, not a favor you negotiate afterwards.
Scoring a Developer Interview
Score every area from 1 to 5 immediately after the interview, with written evidence for each number, and weight the areas that matter most for the role. Scoring from memory a week later is barely better than a coin toss, because what you remember is how the conversation felt rather than what was said.
Scoring area
Weight
What a 5 looks like
Shipped experience
x3
Names systems built, owned, and still running
Debugging and problem-solving
x3
Evidence before action, one hypothesis at a time
Work sample result
x3
Does what was asked, readable, risks flagged
Code quality habits
x2
Version control, review, judgment about testing
Scoping and delivery
x2
Ranges, early escalation, a real path to production
Communication
x2
Explains the work plainly to a non-technical manager
Handover and ownership
x1
Documents as they go, company owns the accounts
Have every interviewer score independently before anyone discusses, so a strong opinion does not anchor the group. Compare the written evidence first and the impressions second. That single habit is most of what separates a structured interview from a conversation, and it feeds a much cleaner interview feedback step before you decide.
Keep the completed scorecards for every candidate for the role together in one place, alongside the work sample submissions and the notes. That record is what lets you compare a candidate you met on Monday with one you meet three weeks later, and it is what you will want if a decision is ever questioned. Applicant tracking is coming soon to FirstHR.
What Developers Cost
Developer pay varies widely by seniority, location, and specialty, so use federal survey data as the baseline and adjust from there. Salary is also only part of the cost: payroll taxes, benefits, equipment, and software licenses all sit on top of it.
Median $135,980 for Software Developers (BLS, May 2025)
According to the Bureau of Labor Statistics Occupational Employment and Wage Statistics survey (May 2025), software developers had a median annual wage of $135,980, with the lowest 10 percent under $82,460 and the highest 10 percent above $214,670. Related occupations sit lower: web developers at a median of $92,650, computer programmers at $100,390, and software quality assurance analysts and testers at $104,300. Employment of software developers, quality assurance analysts, and testers is projected to grow 15 percent from 2024 to 2034, with about 129,200 openings a year on average (U.S. Bureau of Labor Statistics).
Those national medians run above what many small businesses expect, which is worth confronting before you post the role rather than after three candidates decline. If the number does not work, the honest options are a narrower scope, a part-time arrangement, a contractor, or a more junior hire with outside review budgeted in. Adjusting the title while keeping senior expectations is not one of them.
Where the work is closer to sites and interfaces than to systems, the web developer benchmark is usually the better anchor. Write the level and the pay range into the posting, and keep the interview questions matched to the level you are actually paying for.
Fair, Legal, and Structured Interviewing
A fair interview and an effective one are the same interview. Asking every candidate for a role the same job-related questions, scored on the same rubric, is what makes the comparison meaningful, and it happens to be the simplest way to keep the process defensible.
Ask about the job, not the person
Federal anti-discrimination law, enforced by the EEOC, prohibits basing hiring decisions on protected characteristics, and questions that touch them create risk even when they are asked as small talk. Keep away from age, race, religion, national origin, sex, pregnancy or family plans, disability, and genetic information. Developer interviews have their own traps: do not ask what year someone graduated, whether they can keep up with younger engineers, where they are originally from, or how they will manage childcare with on-call work. Ask instead whether they can perform the essential functions of the job. This is general information, not legal advice.
Same questions, same order, every candidate
A structured interview, where every candidate for a role answers the same job-related questions and is scored against the same rubric, predicts on-the-job performance far better than a free-flowing technical chat, and it also makes your process easier to defend. Technical interviews drift more than most, because a conversation between two engineers naturally follows whatever the candidate is strongest at, which quietly gives some candidates an easier interview than others. Write the questions in advance, ask them in the same order, and keep the improvisation to follow-ups.
Treat a coding exercise as a selection test
Any coding challenge, take-home task, or online assessment you use to decide who advances is a selection procedure, and it should be job-related, applied consistently, and scored against criteria you set in advance. In practice that means the same brief, the same time cap, and the same published criteria for every candidate for the role, plus a willingness to offer a reasonable adjustment if a candidate with a disability requests one. Unpaid multi-day projects also screen out strong candidates who already have jobs. This is general information, not legal advice.
Be careful with code, profiles, and searches
Public code repositories and professional profiles are a legitimate way to see real work, but they also expose age, national origin, and other protected characteristics, and they favor candidates with free time over candidates with caring responsibilities. Look at code as one input among several rather than as the filter, and never treat the absence of public code as a negative. Keep general web and social searching out of the process, or run it late and consistently for every finalist, so it never becomes the informal step where bias enters.
Same Questions, Scored on a Rubric, Predict Better Hires
A structured interview, where every candidate answers the same questions scored against a consistent rubric, predicts on-the-job performance more reliably than an unstructured conversation, and asking the same job-related questions of everyone also keeps you within the EEOC rules against basing decisions on protected characteristics. Structure is both the fairer and the more effective approach.
Technical interviews drift more than most, because two engineers talking naturally follow whatever the candidate is best at. Write the questions down and keep the improvisation to the follow-ups, and read up on the questions you cannot ask before the first call. This is general information, not legal advice.
Interviewing a Developer Without HR
At a large company a developer runs a gauntlet of coordinated panels with a recruiter managing the scorecards. At a small business the owner runs the whole thing alone, usually without the background to grade the technical answers and without a team to compare notes with. Here is how to make one founder's interview as rigorous as a full hiring team's.
You are hiring a developer and you cannot read code yourself
Most owners making this hire have no way to grade a code sample, which is why so many small businesses fall back on the resume and a friendly conversation. You do not need to evaluate code. You need to evaluate method, specificity, and honesty, which anyone can do. Ask how they debug something they cannot reproduce, ask them to explain a past project in plain language, and push on every answer once or twice. Strong candidates get more concrete under follow-up; weak ones get vaguer. Then use a small paid work sample and score it against criteria you published in advance, so the evidence is on paper rather than in your memory.
Your first developer is a single point of failure
At a large company a developer joins a team that already knows the system. At a small business the first developer often becomes the only person who understands how anything runs, which turns an ordinary resignation into a crisis. Interview for that risk directly. Ask who would need what to keep the business running if they left tomorrow, ask what they document as they go, and insist that domains, hosting, and repositories sit in the company name with you holding administrative access. A good candidate treats all three as normal and reasonable. Anyone who bristles at company ownership of accounts has just answered a different question for you.
The interview is the easy part; the offer and the first month are where hires are lost
Developers usually have options, so a slow, silent process after a good interview loses the candidate you wanted. Decide quickly, put the offer in writing, and give the new hire a first month that is planned rather than improvised. FirstHR fits that part of the job: send the offer and the confidentiality and intellectual-property agreement for e-signature, run the new hire paperwork, and use task workflows for system access, repository permissions, and policy sign-off, with the signed documents stored on the employee profile. FirstHR is an onboarding and HR platform, not a code hosting service or a payroll provider, so connect those separately. Applicant tracking is coming soon to FirstHR.
What you get
Unstructured technical chat
Structured set plus work sample
Same questions for every candidate
Written evidence to compare
Evaluates real, job-realistic work
Usable by a non-technical interviewer
Defensible if a decision is questioned
None of that requires an HR department or a recruiter. It requires the questions written down before the first call, one hour of preparation, and the discipline to score before the next conversation starts. If you are still filling the pipeline, our guide on where to find developers covers the step before this one, and how to conduct an interview covers the mechanics that apply to every role.
From Interview to Onboarding
The interview is step one. Once you choose someone, the job becomes hiring them well and quickly, because developers usually have options and a silent week after a good final round loses the candidate you wanted. Put the offer in writing, run the new hire paperwork, and plan the first month rather than improvising it.
Offer, NDA, and IP assignment
Confirm role, level, and pay in writing, and have the developer sign a confidentiality and intellectual-property agreement before the first commit.
Access with the company in control
Repository, hosting, and tool access granted from company-owned accounts, with the owner holding administrative rights from day one.
A first task that ships
Give the new developer something small and real in the first week. Shipping once beats a fortnight of reading, and it tests the whole path to production.
Documentation from day one
Ask the new hire to write down what confused them while it is still fresh. That becomes the onboarding guide for whoever comes next.
A developer's first month has extra moving parts: a confidentiality and intellectual-property agreement, repository and hosting access granted from company-owned accounts, and a small real task that ships in week one. Our guides on developer onboarding and onboarding remote developers cover the sequence in detail.
FirstHR connects the offer, the agreements, e-signatures, the new hire paperwork, and the access and policy checklist in one place, and stores the signed documents on the employee profile so the record is there when you need it. FirstHR is an onboarding and HR platform, not a code hosting service or a payroll provider, so connect those separately. Applicant tracking is coming soon to FirstHR. You can browse the rest of the hiring templates for the offer, the reference-check script, and the rest of the process.
Key Takeaways
Assess a developer on shipped experience, debugging method, code quality habits, scoping and delivery, and plain-language communication.
If you cannot read code, grade method and specificity: strong candidates get more concrete under follow-up, weak ones get vaguer.
Level is scope of independence, not years, and a small business with only one developer usually needs at least mid-level.
A short paid work sample with a time cap and published criteria beats both puzzles and unpaid multi-day projects.
Interview for continuity: documentation, a rehearsed handover, and company ownership of domains, hosting, and repositories.
Score each area 1 to 5 with written evidence immediately, weighting shipped experience, debugging, and the work sample most heavily.
Use BLS data as the baseline: software developers reported a median of $135,980 a year in the May 2025 survey.
Frequently Asked Questions
What questions should I ask a developer in an interview?
Ask questions that produce evidence rather than opinions, grouped into five areas: shipped experience, debugging and problem-solving method, code quality habits, scoping and delivery, and communication with non-technical people. The highest-value openers are walk me through something you built end to end and what did you own personally; a bug appears in production that you cannot reproduce, what are your first three steps; how do you estimate work and how often are your estimates right; and explain something technical you built as if I have no background. Add continuity questions if this is your only developer: what would we need to keep running if you left, and how should accounts and repositories be owned. Ask the same core questions of every candidate for the role, then score them on a rubric. The six downloadable sets on this page pair every question with why it is worth asking and what a strong answer contains.
How do I interview a developer if I am not technical myself?
You do not have to grade code to run a good developer interview. Grade method, specificity, and honesty instead, all of which a non-technical interviewer can judge. Ask how they would approach a production bug nobody can reproduce and listen for evidence gathering before code changes. Ask them to explain a past project as if you have no background, and score the clarity rather than the technology. Then push on every answer once or twice: strong candidates get more concrete under follow-up while weak ones get vaguer and reach for jargon. Back the conversation with a short paid work sample scored against criteria you publish in advance, and if the role is senior or business-critical, borrow a trusted developer for one hour to review the submission. The question sets here include good-answer notes for exactly this situation.
What is the difference between a junior, mid-level, and senior developer?
The difference is scope of independence, not years on a resume. A junior developer completes well-defined tasks with review and needs someone to break the work down; interview them for learning speed, curiosity, and how they handle being stuck. A mid-level developer takes a feature from description to production without hand-holding; interview them for delivery, debugging method, and code quality habits. A senior developer scopes ambiguous problems, makes tradeoffs that are hard to reverse, and improves how the team works; interview them for judgment, for the decisions they rejected and why, and for the times they were wrong. A small business hiring its only developer usually needs at least mid-level, because there is no one to review the work, and often benefits from senior judgment even at a smaller scope.
Should I give a coding test or a take-home project?
A short, paid, job-realistic task is usually the best evidence you can get, and it beats both whiteboard puzzles and unpaid multi-day projects. Keep it to a few hours with a hard time cap, base it on work the person would really do, give every candidate for the role the same brief, and publish the scoring criteria in advance. Pay for the time, because unpaid multi-day projects screen out strong candidates who already have jobs or caring responsibilities rather than screening for skill. Treat the exercise as a selection procedure: it should be job-related, applied consistently, scored against criteria set in advance, and open to a reasonable adjustment if a candidate with a disability requests one. The debrief conversation afterwards is where most of the signal appears, so always pair the task with questions about tradeoffs, assumptions, and what they left out.
What are the biggest red flags in a developer interview?
The clearest red flag is an answer that gets vaguer under follow-up instead of more specific, because real experience always has detail behind it. Watch for a candidate who cannot describe any system they personally built and shipped, who blames every past problem on other people or on legacy code, or who proposes a full rewrite before understanding the existing system. Using jargon to avoid a plain-language explanation is a practical problem as well as a warning sign, since you will be the one setting priorities. Dismissing testing, code review, or documentation as unnecessary overhead predicts exactly the kind of fragile system a small business cannot afford. Finally, treat resistance to company ownership of domains, hosting, and repositories as serious, because it puts your business continuity at risk. The scorecard on this page includes the full red-flag checklist.
How much does it cost to hire a developer?
According to the Bureau of Labor Statistics Occupational Employment and Wage Statistics survey (May 2025), software developers had a median annual wage of about $135,980, with the lowest 10 percent under $82,460 and the highest 10 percent above $214,670. Related occupations sit lower: web developers had a median of about $92,650, computer programmers about $100,390, and software quality assurance analysts and testers about $104,300. Total cost is higher than salary once payroll taxes, benefits, equipment, and software are included, and pay varies widely by location, stack, and seniority. A small business that does not need a full-time developer often starts with a part-time employee or a contractor, which changes the interview: weight scoping, communication, and handover far more heavily, because the engagement will end. This is general information, not financial advice.
What questions are illegal to ask a developer in an interview?
Avoid any question that probes characteristics protected under federal law, which the EEOC enforces: age, race, color, religion, national origin, sex, pregnancy or family plans, disability, and genetic information. Technical interviews have their own recurring traps, so do not ask what year someone graduated, whether they can keep up with younger engineers, where they are originally from, whether they are a citizen (ask instead whether they are authorized to work in the United States), or how they will handle on-call duties with young children. Several states and cities also restrict asking about salary history, so check your local rules before raising pay. You may ask whether the candidate can perform the essential functions of the job with or without a reasonable accommodation. Asking the same job-related questions of every candidate is the simplest way to stay both fair and consistent. This is general information, not legal advice.
How long should a developer interview process take?
Two or three steps is usually right for a small business: a short screening call, a main interview of 60 to 90 minutes covering the core question sets, and a paid work sample with a debrief. Anything longer starts costing you candidates, since developers with options drop out of slow processes, and a five-round gauntlet borrowed from a large tech company rarely produces a better decision at your size. Move quickly between steps, tell candidates the timeline up front, and give feedback fast. Score each stage immediately while the answers are fresh rather than saving it for the end. If you want more confidence without more rounds, spend it on the work sample and on reference checks rather than on an extra conversation that repeats what you already know.