Skip to content
Hardmode

// · 13 min read

A practical guide to Hardmode's interview rounds

How to use Hardmode's interview rounds: pick a round or a full loop, choose a difficulty, and turn feedback and recordings into your next session.

Stop treating every interview round the same

The number that matters most in interview practice is often one: the one round that doesn't feel ready yet. You might solve coding problems comfortably, for example, but lose momentum when asked to explain a production incident, design a rate limiter, or answer "Why this role?" without a clear story.

That's why "just do more mock interviews" is incomplete advice. Useful preparation means practising the right round, at the right difficulty, against the expectations of a specific role.

Hardmode runs AI-led practice sessions for single rounds or complete interview loops. Paste a job posting (and, if you like, add your CV) and it builds the loop that role is likely to run: a recruiter screen, live coding, a technical deep dive, system design, a leadership and behavioral conversation, salary negotiation, and more.

This guide walks through how to use it well: not just how to start a session, but how to turn every recording and piece of feedback into a better next session.

First, choose the right practice format

Before starting a session, decide what you want to improve. The best option depends on how close your real interview is and where your confidence drops.

Practice approachBest forTrade-off
Single roundWorking on one specific area, such as system design communication or behavioral storiesDoesn't test your stamina across several rounds
Full interview loopPreparing for onsite or virtual-loop conditionsFeedback covers more ground, so you may want follow-up sessions on single rounds
Easy or MediumLearning a new round format, or building a clean baselineFewer curveballs than a demanding loop
HardStress-testing your reasoning, trade-offs, and depth with a bar-raiser-style interviewerMore useful once you have a baseline to work from
Generic question practiceRepetition on a narrow skillUsually lacks the job context and back-and-forth of a real round
Practice built from a job postingPreparing for a specific role and explaining your actual experienceWorks best with an accurate posting, and your CV if you choose to add it

See all Hardmode interview rounds to map them to your upcoming process. In general, use single rounds when you know what you want to work on, and a full loop when you want to rehearse transitions, energy management, and consistency.

How to get the most from each session

Follow these steps before each important interview stage.

  1. Collect the role materials. Have the job posting ready, and your current CV if you want the interviewer to draw on it. Read the posting once for recurring signals: backend ownership, distributed systems, APIs, data infrastructure, leadership, customer empathy, or stakeholder communication. These themes should shape your practice. For more on this, see how to prepare from the job description.
  2. Choose a goal for the session. Skip vague goals like "get better at interviews". Pick one observable result instead: explain one past project with a clear architecture and outcome; produce a system design answer with requirements, estimates, bottlenecks, and trade-offs; or give a concise answer about salary expectations.
  3. Select a single round or a full loop. If you have an interview in two days and expect a system design round, focus there. If you have a five-round virtual onsite next week, run the broader loop and note which round you want to revisit.
  4. Pick a difficulty that creates useful pressure. Easy, Medium, and Hard are all first-class choices, and every level costs the same credits. Start where you can explain your reasoning without freezing, then move up when your answers feel predictable. The point isn't to "win" a mock; it's to see how you respond when requirements change, assumptions are challenged, or time gets tight.
  5. Treat the AI interviewer like a real interviewer. Say your assumptions aloud. Ask clarifying questions. Pause before you answer if you need to structure your thoughts. Interviewers care about the path to your answer, not only the final answer.
  6. Read the feedback straight after the session. It covers what went well, two or three focus areas, concrete things to try, and how a strong candidate might have approached the question. Look for patterns across sessions, not one-off moments.
  7. Turn feedback into one or two drills. Choose a small number of changes for the next session. For example: "State functional and non-functional requirements before proposing an architecture", or "Use Situation, Task, Action, Result for every behavioral answer".
  8. Repeat the round under a changed condition. Run it again at a different difficulty, with a variation, or for a different job posting. This shows whether you've built a transferable skill rather than memorised one answer.
  9. Use the recording to check your communication. You can download a recording of each session to keep (Hardmode never uploads or keeps it). Watching it back shows things written feedback can't fully capture: long pauses, rushed explanations, unexplained acronyms, filler words, or moments where you stopped engaging with the interviewer.

Match the session to the round you're facing

Recruiter and initial screens

A recruiter screen isn't a formality. It often decides whether your experience, motivations, logistics, and expectations fit the role. Use the recruiter screen round to practise a concise career narrative.

Prepare answers to questions such as:

  • "Walk me through your background."
  • "Why are you looking now?"
  • "Why this company and this role?"
  • "What kind of work do you want next?"
  • "What are your salary expectations?"

A useful target is a 60- to 90-second introduction that connects your experience to the role. For a backend engineer, that might mean leading with relevant systems work, scale, reliability ownership, and the problems you want to solve next, rather than reciting every job on your CV. Our guide to what to expect in a recruiter screen goes further.

Live coding interviews

In live coding, correctness matters, but communication is usually the multiplier. Many candidates know an algorithm but don't make their process easy to follow.

Use this sequence:

  1. Restate the problem in your own words.
  2. Ask about inputs, constraints, and expected output.
  3. Propose a simple approach before optimising.
  4. Explain time and space complexity.
  5. Test normal, boundary, and invalid cases.
  6. Narrate changes when your first idea needs revising.

If thinking aloud feels unnatural, make it a practice constraint. This guide on thinking aloud in a coding interview has practical ways to talk through your reasoning without filling every second with noise. Then rehearse it for real in Hardmode's live coding round, and read the guide to preparing for a live coding interview for more on the format.

Technical deep dives

A deep dive checks whether you truly understand the work on your CV. It's less about textbook answers and more about engineering ownership: what you built, why you made a choice, what went wrong, and what you learned.

Use the technical deep-dive round after reviewing your CV. Be ready to discuss:

  • System context and your personal role
  • Constraints, dependencies, and alternatives considered
  • Metrics such as latency, error rate, throughput, cost, adoption, or delivery time
  • Incidents, trade-offs, and what you would redesign now
  • How you collaborated across teams

A strong answer separates "the team did this" from "I owned this decision". You don't need to claim sole credit; you do need to be precise about your contribution. See how to prepare for a project deep dive.

System design interviews

System design is where generic practice is most limiting. A senior backend role may expect different depth from a product-focused role, while a platform role may put more weight on reliability, internal APIs, observability, or multi-tenancy.

Use the system design round to practise responding to follow-up questions, not just drawing a familiar architecture. A dependable structure:

  1. Clarify the problem and users.
  2. Define functional and non-functional requirements.
  3. Estimate scale where it affects design choices.
  4. Propose a high-level architecture.
  5. Go deep on critical components.
  6. Address failure modes, data consistency, security, and observability.
  7. Explain trade-offs and future evolution.

For more detail, read the system design interview framework. During the session, make your assumptions explicit. Saying "I'll assume 10,000 requests per second and explain how the design changes at 10 times that" is far stronger than pretending the numbers don't matter.

Leadership and behavioral rounds

Behavioral interviews are often mistaken for soft, unstructured conversations. In reality, they look at decision-making, self-awareness, collaboration, and how you learn from imperfect outcomes.

The leadership and behavioral round is useful even if you don't manage people. Leadership can mean influencing a technical decision, unblocking a teammate, handling disagreement, taking ownership during an incident, or making a difficult trade-off.

Build a story bank of six to eight examples covering:

  • A challenging project
  • A technical disagreement
  • Something that didn't go to plan, and what you changed
  • A conflict or a difficult stakeholder
  • A time you improved a process
  • A time you led without formal authority
  • A project you're proud of
  • A difficult prioritisation decision

Use the STAR structure (Situation, Task, Action, Result), and spend most of your answer on the Action. That's where the interviewer learns how you think. The STAR method for software engineers has worked examples.

Salary negotiation

Negotiation deserves practice because it feels high-stakes and unfamiliar. The salary negotiation round lets you rehearse calm, professional responses before a real offer conversation.

Practise stating your target range, asking clarifying questions about total compensation, and responding when an offer doesn't match your expectations. Keep the conversation collaborative: you're gathering information and advocating for yourself, not issuing an ultimatum. More in how to negotiate a software engineer offer.

Build a feedback loop instead of collecting sessions

The biggest trap is treating mock interviews like a question generator. A session only becomes valuable when it changes what you do next.

After every round, write three notes:

  • One thing that went well: "I asked clarifying questions before designing."
  • One focus area: "I jumped into components before defining requirements."
  • One concrete drill: "Run two system designs where the first five minutes are only requirements and estimates."

Then plan the next session around that drill. A focused cycle might look like this:

SessionFocusWhat progress looks like
1Baseline system designYou know which parts of your structure to work on
2Requirements and estimatesYou state assumptions before architecture
3Bottlenecks and trade-offsYou defend two design decisions clearly
4Harder follow-up questionsYou adapt calmly when constraints change
5Full loopYou stay clear across different round types

Hardmode's feedback is written, specific, and never reduced to a number or a label. The aim is to know what to keep, what to adjust, and what to work on next.

What effective practice looks like

  • Use the target job posting (and your CV, if you choose) so practice reflects the role you actually want.
  • Choose a single round to work on a known area; choose a full loop for realistic pacing and broader readiness.
  • Start every session with one specific goal, such as clearer requirement gathering or a stronger leadership story.
  • Move up a difficulty once you can explain a sound baseline approach clearly and consistently.
  • Treat every session as a live conversation: clarify, explain your reasoning, discuss trade-offs, and respond to follow-ups.
  • Review feedback and your downloaded recording for repeated communication patterns, not just whether the final answer was technically right.
  • Turn feedback into one or two drills, then run another session to check the change carries over to a new problem.
  • Practise technical, behavioral, and negotiation rounds separately. Strong coding alone doesn't make a strong loop.

Questions candidates ask before starting

Should I practise one round or a full interview loop?

Choose a single round when you know what needs work. If distributed systems discussions keep feeling shaky, focus on system design. Choose a full loop when your real process has several rounds and you want to rehearse switching between technical and behavioral conversations while managing your energy.

How should I choose a difficulty?

Medium is the default and a good starting point. Easy is ideal for learning a new round format; Hard plays a demanding bar-raiser who changes constraints mid-answer. Every level costs the same, so pick the one that teaches you the most right now, and move up when you can clarify requirements, explain trade-offs, and handle standard follow-ups with consistency.

What should I prepare before a session?

Have the job posting for the role you're targeting, and your CV if you want the interviewer to use it (it's optional). Also write down the interview stage, the likely format, and one goal for the session. The more specific your input and goal, the more targeted the practice.

How often should I practise?

Consistency matters more than marathon sessions. With several weeks to go, two to four focused sessions a week gives you time to read feedback and work on it between sessions. In the final week, combine single rounds with one or two full-loop rehearsals, and leave time to rest.

What if the feedback lists several focus areas at once?

Don't try to change everything in one session. Pick the one with the biggest effect on how you come across. For many candidates that's answer structure, communication, or requirement gathering. Work on that, then reassess.

Does it help with behavioral and negotiation interviews?

Yes. Technical preparation is only part of an engineering hiring process. You can practise communicating your impact, handling conflict stories, explaining your motivations, and navigating compensation conversations. These rounds benefit from repetition, because clear, concise answers come from practice rather than improvisation.

Put your first practice plan on the calendar

Start with a short session this week. Pick the round that makes you least comfortable, use a real job posting, and set one clear goal before you begin.

If you're preparing for a backend or systems-focused role, a practical first sequence is:

  1. Run one system design session to set a baseline.
  2. Read the feedback and watch your recording for missing structure or unclear trade-offs.
  3. Run a technical deep dive based on a project from your CV.
  4. Practise one leadership or behavioral story that shows ownership.
  5. Finish with a full interview loop once you've worked on the individual rounds.

New accounts get 20 free credits, no card required: enough for two short rounds or one technical round. After that, credits come in packs or a monthly plan, and they never expire. Start on Hardmode to build a loop around the rounds and difficulty that match your goals.

For more on making mock practice productive, read how to run a useful mock interview. Bring a clear goal, take the feedback seriously, and make each session deliberately different from the last.

Practise the interview you're actually going to have

Hardmode works best as a deliberate feedback system, not a one-off confidence boost. Target the role with the job posting, choose the round that matters most, explain your reasoning in real time, and turn each piece of feedback into a small, testable change.

The goal isn't to sound rehearsed. It's to become adaptable: able to clarify an ambiguous prompt, explain a technical decision, recover from a difficult follow-up, and tell the story of your work with confidence. That's the kind of practice that carries into the real interview.