Backend Engineer
Ordering Systems·Mid-level
Build the services and data flows that keep menus, baskets and restaurant orders correct and dependable.
The job
You will work on the systems behind an order: checking availability, validating prices, recording state changes and making information available to the right restaurant. These workflows must behave sensibly when requests are repeated, a service is slow or several updates arrive together. You will collaborate with frontend, payments and integrations engineers to make complex operational behaviour understandable through well-defined interfaces and useful diagnostic information.
What you would be doing
- Design APIs for order creation, availability, fulfilment status and partner operations.
- Model order lifecycles with clear rules for allowed transitions and concurrent updates.
- Use transactions, constraints and idempotency to preserve correctness under retries.
- Optimise PostgreSQL queries and indexes using measured performance evidence.
- Implement tenant-aware authorisation and validation at service boundaries.
- Create integration tests for important success, failure and recovery paths.
- Write operational documentation and investigate service issues alongside other engineers.
What we are looking for
- Production backend development experience with TypeScript, Node.js or a comparable stack.
- Strong SQL skills and understanding of relational database design.
- Experience designing APIs and handling validation, authentication and authorisation.
- Understanding of transactions, concurrency and reliable processing of repeated requests.
- Ability to explain service behaviour and debug problems across multiple components.
Useful, but not essential
- Experience with ordering, booking, inventory or other transactional systems.
- Familiarity with event-driven processing and asynchronous jobs.
- Experience with PostgreSQL row-level security or multi-tenant data access.
Tools you might use
- TypeScript
- Node.js
- PostgreSQL
- Drizzle
- REST APIs
- Structured logging
Your first 90 days
- Days 1–30Map the order lifecycle, run the service locally and deliver a small API improvement.
- Days 31–60Own a backend change with clear contracts, integration tests and migration planning.
- Days 61–90Release an improvement to correctness or performance and document how it is monitored.
The practical bits
- 3 days per week in the Derby office and 2 days working remotely within the UK.
- 37.5 hours per week, Monday–Friday. Core collaboration hours are agreed with the team.
- Occasional planned team or customer visits; approved expenses are reimbursed.
What we offer
- 30 days of annual leave plus public holidays
- A company pension contribution
- A £1,000 annual learning budget for courses, conferences or professional development
- A company laptop and role-appropriate equipment; engineering roles include a development setup
- Flexible start and finish times, agreed with your team around customer and collaboration needs
- Wellbeing support and regular development conversations with your manager
- Reimbursement of approved business travel and customer-visit expenses
Apply
Four fields. That is the whole application.
No account, no portal, and no covering letter unless you want to write one. A person reads every application and replies either way.
- Introduction, 25 minutesDiscuss your interests, the role, location, working arrangements and compensation expectations.
- Experience and problem-solving, 45 minutesWalk through relevant work and explain the decisions, trade-offs and lessons behind it.
- Practical conversation, 60 minutesWork through an order-submission scenario involving a repeated request and a concurrent menu-price change.
- Meet the team, 30 minutesMeet someone from another team, see how we work together and ask anything still open.