Vendomo Interview¶
Welcome, and thanks for taking the time to interview with us. This page explains the format so there are no surprises. Have a read before we start — you're welcome to ask questions at any point.
What you'll be working on¶
Vendomo is a vending-machine fleet-management app: a single place for an operations team to see where every machine is, what state it's in, and what's been serviced recently, plus tooling to onboard new machines.
The stack is:
| Layer | Tech |
|---|---|
| Frontend | React + Vite + TypeScript + Leaflet |
| API | FastAPI (Python 3.12) |
| Database | PostgreSQL 16 |
| Cache/bus | Redis 8 (cache, streams, GEO, query engine) |
| Worker | Async revenue-event generator |
See the Environment page for how to run it and what's provided.
Format¶
This is a pair-programming interview in three phases. Modern engineers code with an AI agent every day, so this loop is designed around that reality — we want to see how you work, both with and without an assistant.
| Phase | Focus | AI assistance |
|---|---|---|
| 1 | Bug bash | Unassisted — no AI |
| 2 | Implementation | AI-assisted — use your agent |
| 3 | Optimization | AI-assisted — use your agent |
There's a short intro at the start and a short wrap-up at the end. Throughout, we're most interested in how you think — your reasoning, how you scope a problem, and how you evaluate the work in front of you. A clear, well-narrated investigation matters more to us than racing to a finished pull request.
Ground rules¶
Phase 1 is unassisted. No coding agent, no LLM autocomplete. You may:
- read the code,
- run the app,
- hit the API / Swagger,
- read logs,
- use a debugger,
- and use plain documentation.
We just want to see you reason about an unfamiliar system with your own debugging skills.
Phases 2 and 3 are AI-assisted. Use your coding agent freely — in fact, please do. Share your screen and think out loud as you go. We're watching how you direct the agent, how you review what it produces, and how you integrate it — as much as the final code itself. Treat the agent like a fast teammate whose work you're responsible for.
Where to go next¶
- Environment — run the app, ports, the API surface, and everything the app provides that you'll build on.
- Phase 1 — Bug bash
- Phase 2 — Implementation
- Phase 3 — Optimization