The loop at a glance
Six rounds, one bar. Everything below is how to clear each one.
- Screens first. Recruiter and hiring manager check motivation, fit, and a two-minute project story. Rehearse that story out loud before you ever get on the call.
- Coding is practical. Medium LeetCode, not competitive tricks. They want compiling, tested code and clear narration far more than a clever one-liner.
- Machine-coding is the signature round. Build a small working system in 60 to 90 minutes. Clean classes, runnable code, and one or two tests beat an elegant half-built thing.
- System design is Toast-flavored (mid/senior). The offline POS question is the one most likely to decide your loop. Design for the network dropping, because it does.
- Behavioral is a real screen. Values, ownership, and conflict with numbers attached. Hospitality counts, including how you treat the junior engineer on the panel.
1Snapshot, read this first#
| Thing | What to know |
|---|---|
| Roles | Software Engineer, Senior, Staff. Backend (Kotlin/JVM heavy), full-stack (React/TypeScript), Android/iOS, platform/infra |
| Levels | SWE I/II, Senior, Staff, Principal |
| Process length | Usually 3 to 5 weeks start to offer. Faster if they are hot on you |
| Rounds | Recruiter screen, hiring manager, 1 technical screen, then an onsite loop (coding, machine-coding/LLD, system design for mid/senior, behavioral) |
| What wins | Clean working code under time pressure, clear tradeoff talk, real stories about shipping to restaurants, treating the interviewer like a teammate |
| What fails | Silent coding, over-engineering a simple task, no questions about the business, weak "tell me about a conflict" answers |
Comp (base + target bonus + equity/year, rough 2026 ranges):
| Region | SWE II / Mid | Senior | Staff |
|---|---|---|---|
| US | $150k to $200k total | $210k to $300k | $320k to $430k+ |
| Canada (CAD) | C$130k to C$175k | C$185k to C$250k | C$270k+ |
| India (INR) | ₹25L to ₹45L | ₹45L to ₹75L | ₹80L to ₹1.3Cr+ |
| Ireland/UK (EUR/GBP) | €75k to €105k | €110k to €150k | €160k+ |
Where the teams are.
- US (Boston HQ) and Chennai/Bengaluru in India are the biggest engineering hubs, with growing teams in Ireland.
The one thing to internalize: Toast is a restaurant company that happens to run on software.
- Payments that settle real money.
- Android hardware that has to survive grease, heat, and a line cook's elbow.
- Ordering that keeps working when the wifi in a strip-mall taqueria drops mid-rush.
Why this matters in the room.
- If your answers never mention the restaurant on the other end, you sound like you are interviewing for a generic tech job.
- That reads as a weak fit here, and interviewers feel the gap in the first ten minutes.
Would I want you next to me when a POS goes down during the Friday dinner rush? Code quality, design calls, and behavioral stories all roll up to that. Answer like someone who has carried a pager for real users, not like someone performing an interview.
2Getting the call (the part most guides skip)#
The cold-apply math is brutal.
- Toast gets a flood of resumes, and the cold hit rate is low single digits for most non-referred applicants.
- A referral from a current engineer is worth ten cold applications, full stop.
If you know someone there.
- Ask them to submit you through their internal referral portal, not just forward your PDF.
If you do not know anyone, spend a week fixing that.
- Find Toast engineers on LinkedIn who work on an area you care about (payments, POS, Toast Capital, order and pay).
- Send a short honest note and ask one specific question about their team.
- Do not ask for a referral in line one. People refer folks who were curious and easy to talk to, not folks who opened with "can you refer me."
Your resume needs numbers, not adjectives.
- Weak: "Worked on backend services to improve performance and reliability."
- Strong: "Rebuilt the order-sync service in Kotlin, cut p99 latency from 900ms to 180ms, and kept it serving during a 3x Friday-night traffic spike across 2,000 locations."
- The strong one names the scale, the tech, the metric, and that you think about peak load. That is a Toast-shaped engineer.
- Every bullet should name what you built, the stack, and a number that moved. No number means it is a summary, not an accomplishment, and it gets skimmed.
ATS keywords that help (do not stuff, just make the real ones visible).
- Backend/full-stack: Kotlin, Java, JVM, Spring, microservices, Kafka, PostgreSQL, React, TypeScript, REST, event-driven, AWS, Kubernetes, CI/CD.
- Mobile: Android, Kotlin, Swift, offline-first, sync.
- The first pass is often an automated screen that filters on exactly these terms.
How people actually get shortlisted, in order of weight.
- A referral.
- A resume that shows you shipped something real with scale and a metric.
- A clean recruiter call where you explain your top project in two minutes without rambling.
Most people have never said their best project story out loud, and it shows the instant the recruiter asks. Record yourself once. Scale, stack, the hard decision, the number. If it runs long, cut the setup, not the result.
3The loop at a glance#
| Round | Length | What it tests |
|---|---|---|
| Recruiter screen | 30 min | Motivation, comp expectations, basic fit, why Toast |
| Hiring manager | 30 to 45 min | Your background, a project deep-dive, team fit |
| Technical phone screen | 45 to 60 min | One medium DSA problem, live coding, communication |
| Machine-coding / LLD | 60 to 90 min | Build a small working program or model a system in code |
| System design (mid/senior) | 45 to 60 min | Designing a real Toast-flavored service at scale |
| Behavioral / values | 45 min | Toast values, conflict, ownership, cross-team work |
How the loop flexes by level.
- Junior roles run lighter: sometimes two technical rounds plus behavioral.
- Senior and staff get two design-flavored rounds and a deeper values conversation.
- Expect a skip-level manager or a cross-functional partner (a PM or a staff engineer from an adjacent team) checking how you work with people outside your own pod.
4The coding or technical rounds#
Toast coding is practical.
- Think medium LeetCode, occasionally medium-hard, rarely the obscure competitive stuff.
- Nobody here is going to ask you for a segment tree with lazy propagation.
- They care far more that you write real, compiling, tested code than that you spot some clever trick.
Patterns they reuse, and why each shows up.
- Hash maps and frequency counting. Counting order items, grouping menu modifiers, tallying sales by category. The single most common shape.
- Two pointers and sliding window. Scanning a sequence of orders or a time window of events in one pass.
- Trees and graphs: traversals, topological sort. Menu dependencies and modifier groups map here, since a "combo" depends on its parts.
- Intervals: merging and overlap detection. Table reservations or kitchen time slots that cannot double-book.
- Basic dynamic programming, nothing brutal. Coin-change and longest-common-subsequence comfortably is enough. Coin-change literally shows up as "make this change amount with these bill and coin denominations."
- Design-y warmups: LRU cache, a rate limiter, an in-memory key-value store with expiry. These double as a bridge to the machine-coding round.
Language choice sends a signal.
- You usually code in your own language.
- Backend candidates who pick Kotlin or Java score a quiet bonus, because that is the house stack and it signals you could be productive on day one.
- Strongest in Python? Use Python, but know the JVM world conceptually: what the garbage collector does for you, why immutability and
data class-style value objects matter, how threads and futures work.
How to actually win the round (what moves the needle while you code).
- Clarify first. Restate the problem in your own words. Ask about input size, edge cases, whether the input is sorted, what empty or null should do, whether values can be negative. Thirty seconds of this signals seniority and saves you from solving the wrong problem.
- Talk while you think. Not a monologue, and not narrating every keystroke. Say what approach you are weighing and why. The interviewer is really checking whether you can name the invariant: the thing that stays true every iteration.
- State complexity out loud before you are asked. "This is O(n log n) time, O(n) space, and I think I can get time down to O(n) with a hash map." That one sentence shows you think about cost.
- Write code that runs. Compile it in your head. Handle the empty case. Off-by-one errors on an otherwise confident candidate are forgivable. Code that was never going to run is not.
- Test it yourself. Walk a small concrete example through line by line. Find your own bug before the interviewer points at it. That is the single biggest separator between a hire and a no-hire, and most people skip it because they run out of nerve, not time.
Practice target.
- 60 to 80 problems across those patterns is plenty.
- Do them timed (set 35 minutes), out loud, and type the full solution. Do not just read the editorial and nod.
- Re-solve the ones you failed a week later, cold, without looking. The second pass is where the pattern sticks.
Reveal the answer
5The machine-coding and low-level-design round#
This is the round people underestimate, and it is very Toast.
- Instead of a LeetCode puzzle, you get a small real-world task and 60 to 90 minutes to build a working thing.
- Prompts look like: model a restaurant order system with menu items, modifiers, and a bill calculator. Build a parking-lot allocator. Build a split-the-check feature. Build an in-memory inventory service with stock decrements and low-stock alerts.
- The prompt is deliberately open so they can watch you make engineering decisions in real time.
What they are grading is how you write software, not whether you know an algorithm.
- Clean class design. Sensible objects (Order, LineItem, Modifier, Payment), clear responsibilities, no god class. One class, one job.
- Working code. It should run and produce correct output for the demo cases by the end. A finished, correct, plain solution beats a half-built elegant one.
- Extensibility. Can you add a new discount type or payment method without rewriting everything? A
DiscountStrategyinterface beats a 12-branch switch. - Readability. Good names, small methods, no dead code, no commented-out experiments left lying around.
- Tests. Even a couple of hand-written assertions show maturity: "a bill with two items and a 10 percent discount totals X."
A framework that works under time pressure.
- Spend 5 minutes writing the requirements as bullets and confirming them. Pin down scope. Say out loud what you are leaving out: "I am not handling partial refunds today, I will mention where they would plug in."
- Sketch the core entities and their relationships. Two minutes, on screen or paper. Name the nouns first.
- Build the happy path first, end to end, so something always runs. Do not perfect one class while the program as a whole does nothing. Aim for a runnable skeleton by minute 25.
- Then harden: edge cases, one or two abstractions where they clearly pay off, a few tests. Add abstraction only when a second concrete case forces it, not before.
- Leave 5 minutes to run it, walk through your design, and name what you would do with more time (persistence, concurrency, a real payment gateway). Naming the gaps yourself is a senior move.
Candidates build a factory for a factory on a 90-minute task and finish with nothing that runs. Simple and working beats clever and broken every single time here. If you catch yourself writing an abstract base class in the first ten minutes, stop and ship the concrete version first.
For senior and staff, a true system design round joins the loop.
- Design the order and payment flow for a POS that must keep taking orders when the internet drops, then sync when it comes back. (Offline-first, idempotency, conflict resolution. This is the signature Toast question and the one most likely to decide your loop.)
- Design a menu service serving thousands of restaurants, each with their own items and modifiers, with fast reads and safe edits.
- Design the payment processing path, including retries, idempotency keys, and handling a third-party processor timeout where you do not know if the charge went through.
- Design real-time order routing to the kitchen display system so a cook sees a new ticket within a second.
Use the standard flow, then go deep on the hard part.
- Clarify requirements and scale (how many locations, reads per second, how long can we be offline).
- Define the API, sketch data models, draw the high-level components.
- For Toast, the hard part is almost always offline sync, idempotency, or consistency during payment.
- Talk tradeoffs out loud: local-first write with a sync queue versus server-authoritative, at-least-once delivery with dedupe versus the exactly-once fantasy. There is no perfect answer. They want to see you reason and name what you are trading away.
A POS that assumes the network is always up is useless in a strip-mall taqueria. Designing this question as if the wifi never drops tells the interviewer you did not think about who actually uses this. Lead with the failure case, not the happy path.
6Behavioral and culture fit#
Toast is a genuinely values-driven place, and this round is not a formality.
- It can and does sink otherwise strong engineers.
- The culture leans on a bias toward action (ship and learn rather than debate forever), real ownership, operating with hospitality (treat teammates and customers the way a great restaurant treats a guest), and being customer-obsessed about actual restaurants, not abstract users.
- They also prize humility and working across teams without ego.
Prepare 6 to 8 STAR stories.
- A shipped project, a hard bug in production, a conflict with a teammate or another team, a time you owned a mistake, a time you influenced without authority, a time you dealt with ambiguity.
- Lead with action and results, keep the situation to two sentences, and always land a number. The number turns a nice anecdote into evidence.
One full worked example (ownership plus bias to action).
- Situation: Our checkout service started returning duplicate charges during a holiday traffic spike, about 40 complaints in an hour.
- Task: I was on call. I owned getting it stopped and finding the root cause, even though the bug was in a service another team mostly maintained.
- Action: I shipped a feature flag to disable the risky retry path within 20 minutes to stop the bleeding, then traced it to a missing idempotency key on a payment retry. I wrote a fix that keyed retries on the client request ID, added a test that reproduced the double-charge, and paired with the owning team so they understood it rather than just handing them a patch.
- Result: Duplicate charges dropped to zero, we refunded the 40 affected customers that day, and the idempotency pattern I added became the default for that service, preventing roughly 12 similar incidents the team had been seeing per quarter.
Why that story works.
- It shows I did not wait for permission.
- It shows I owned something outside my lane.
- It shows I left the system better for the next person.
- That is the Toast reflex: act fast, fix the class of bug not just the instance, and bring the other team along.
"We shipped it" tells the interviewer nothing about what you did. Say "I" for your decisions and actions, and reserve "we" for genuine team context. Behavioral scores track what you personally owned, not what your team happened to be near.
7Your prep plan#
4-week plan.
- Week 1: Refresh data structures. Do 20 to 25 medium problems across hash maps, trees, graphs, intervals. Type full solutions, timed at 35 minutes each.
- Week 2: Machine-coding. Build 4 or 5 small systems from scratch (order system, parking lot, LRU cache, rate limiter, split-the-check). Focus on clean classes and a couple of tests per build.
- Week 3: System design. Study offline-first sync, idempotency, consistency models, caching, and queues. Do 4 mock designs out loud, including the offline POS one twice.
- Week 4: Write your STAR stories, do 2 full mock loops with a friend who will push back, research Toast's product, and re-solve everything you failed earlier.
2-week plan.
- Days 1 to 5: 30 medium DSA problems, timed and out loud.
- Days 6 to 9: 3 machine-coding builds and 3 system design mocks.
- Days 10 to 12: 6 STAR stories, product research, one full mock.
- Days 13 to 14: Re-solve your weak spots, rest the night before.
2-day crash plan.
- Day 1: 10 medium problems hitting the core patterns (hash map, intervals, graph traversal), plus one machine-coding build (an order or inventory system) start to finish, runnable.
- Day 2: One system design walkthrough (offline POS), write 4 STAR stories, read Toast's values page and skim their product and recent earnings talk. Sleep.
8Why people get rejected at Toast#
- They coded in silence and finished something the interviewer could not follow. No narration, no complexity talk, so there was no way to tell if the right answer was luck or understanding.
- They over-engineered the machine-coding task and ran out of time with nothing running. The abstract factory was beautiful and the program printed nothing.
- Weak behavioral answers: vague stories, no numbers, no real conflict, no ownership of a mistake. "We all worked together" is not a story.
- Zero curiosity about the restaurant business. Never asked a question, never mentioned the customer, could not say why Toast over any other payments company.
- They designed the offline POS question as if the network never drops. That misses the entire point of Toast and signals they did not think about who uses this.
- Rude or dismissive to the interviewer, especially talking down to a junior engineer on the panel. Hospitality is a real screen here, and the junior engineer's debrief vote counts the same as everyone else's.
9The offer, comp and negotiation#
The equity is real, which changes the math.
- Comp by region is in the snapshot table above.
- Equity at Toast is RSUs (public company, ticker TOST), so the number is real and liquid-ish, unlike a private startup where the equity is a lottery ticket.
- Target bonus is typically 10 to 15 percent for ICs.
Negotiation tips specific to Toast.
- Negotiate base and equity as separate levers. Recruiters often have more room on the equity refresh and the sign-on bonus than on base salary. Ask for both, not just a bigger base.
- Get a competing offer if you can. Toast benchmarks against Boston and broader tech comp, and a real alternative offer in hand moves the number more than any argument you can make without one.
- Push on level, not just dollars. Landing Senior instead of SWE II is worth far more over the next three years than squeezing $5k out of a base, because every future raise and refresh compounds off the higher band. If your loop went well, ask the recruiter directly whether Senior is on the table before you accept.
10FAQ#
"Do I need to know Kotlin?"
"Is the machine-coding round really that common?"
"How hard is the DSA?"
"Does Toast hire remote?"
"What is the number one thing that gets people hired?"
What you can now explain in the room
- How the six-round loop maps to one question: would they want you on call during the dinner rush.
- Why a referral and a metric-driven resume beat a cold application every time.
- How to win the coding round by naming the invariant and the complexity before you are asked.
- How to ship a clean, runnable machine-coding solution in 90 minutes without over-engineering.
- Why offline-first, idempotency, and payment consistency are the hard part of every Toast design prompt.
- How to tell a STAR story with a clear "I," a real conflict, and a number that proves the result.
When you are ready, block out your real interview dates and build a day-by-day plan around your own weak spots, then work it backward from your loop so the hard rounds get the most practice.
Get a prep plan built around your Toast interview
Tell us the role and your interview date. We will send back a dated, day by day plan. Free.