Location: Putney Office, Putney, Greater London, SW152TG
Salary up to: Competitive
Software Engineer – Rust (Mid-Level)
- A bit about us
- At Nando's, we're on a mission to Create Lasting Happiness, and technology plays a huge part in making that happen.
- Behind every great Nando's experience is a lot of clever technology. From the moment a customer places an order to the moment their food arrives, our engineering teams build the systems that make it all possible.
- We're looking for a Software Engineer to join our Orders & Fulfilment team, working on the technology that powers our online ordering platform across the UK and Ireland.
- This is a great opportunity for an engineer with Rust experience who enjoys solving interesting technical challenges, building reliable systems and seeing the real-world impact of their work.
- You'll join a collaborative team where you'll have the freedom to contribute ideas, take ownership of meaningful projects and continue developing your skills alongside experienced engineers who genuinely enjoy what they do.
- What's the team all about?
- Our Orders & Fulfilment team sits at the heart of Nando's digital ecosystem, building and maintaining the technology that keeps orders moving smoothly from our customers to our restaurants.
- We work on systems that support millions of customer journeys, making sure orders are processed accurately, reliably and efficiently.
Our team looks after several important areas
- Online Ordering Platform: Building and maintaining the core services that power our digital ordering journeys, from placing an order through to fulfilment.
- Event-Driven Systems: Developing scalable, high-throughput systems that process large volumes of orders and events in real time.
- Third-Party Integrations: Connecting our technology with delivery partners such as Deliveroo, making sure orders flow seamlessly between platforms.
- Restaurant Operations: Building tools and services that help our Nandocas manage and fulfil orders efficiently.
- APIs & Engineering Platforms: Creating reliable services and APIs that other engineering teams can build upon to deliver great customer experiences.
- There's plenty of variety here. You'll work on existing services, help improve how our systems perform and get involved in new engineering challenges as our digital platforms continue to evolve.
- As a mid-level engineer, you'll have the opportunity to own meaningful pieces of work while learning from experienced engineers and developing your technical expertise.
- The tech you'll get to work with
- We believe in choosing the right technology for the problem, and we're always looking for sensible ways to improve how we build software.
Our engineering environment includes
- Backend: Rust and Go
- Frontend: TypeScript and React
- Architecture: Event-driven systems, APIs and third-party integrations
- Engineering Practices: Automated testing, CI/CD, monitoring, observability and production support
- Rust is an important part of this role, so we're looking for someone who already has hands-on experience with the language and wants to continue developing their skills.
- You don't need to have worked with every technology listed above. We're much more interested in engineers with strong fundamentals, curiosity and a willingness to learn.
What you'll be getting up to
This is a hands-on engineering role where you'll get involved in the full software development lifecycle, from understanding requirements and designing solutions through to building, testing, deploying and supporting software in production.
You'll be
- Designing, developing, testing and maintaining reliable software that supports our online ordering and fulfilment platforms.
- Building and improving backend services using Rust, with opportunities to work across other technologies.
- Working on event-driven systems, APIs and integrations that connect our digital platforms with restaurant operations and delivery partners.
- Taking ownership of features and services, with support from Technical Leads and other experienced engineers when needed.
- Collaborating with engineers, Product Managers and other teams to understand challenges and deliver practical technical solutions.
- Writing automated unit and end-to-end tests, helping improve the quality and resilience of our codebase.
- Contributing to technical discussions, backlog refinement and planning, helping break down requirements and estimate engineering work.
- Working with CI/CD pipelines, supporting deployments and helping troubleshoot build or release issues.
- Supporting services in production, including investigating issues, monitoring performance and improving reliability.
- Pairing with other engineers, participating in code reviews and sharing knowledge across the team.
- Looking for opportunities to improve existing code, automate repetitive tasks and make our engineering processes more effective.
- We believe in an "if you build it, you run it" approach, so you'll have the opportunity to see how your work performs in production and help keep the services you build running smoothly.
- We also want you to feel comfortable asking questions, challenging ideas and suggesting better ways of doing things. You won't just be here to pick up tickets and write code.
What we're looking for
We're looking for someone who's already built a solid foundation as a Software Engineer and is excited about continuing to develop their skills.
You'll ideally bring
- Hands-on experience developing software using Rust.
- Professional software engineering experience, ideally building and maintaining backend services or applications.
- A good understanding of software engineering fundamentals and writing clean, maintainable, well-tested code.
- Experience working with APIs, backend services or distributed systems.
- An understanding of automated testing and why it matters when building reliable software.
- Experience working in an agile engineering environment, collaborating with others to deliver features and improvements.
- A practical approach to problem-solving, debugging and understanding how systems work.
- The ability to contribute to technical discussions, break down work and provide input into estimates.
- Good communication skills and the confidence to share ideas, ask questions and learn from others.
- A genuine interest in technology and a willingness to explore different languages, tools and approaches.
- It would also be great if you have experience with:
Go
- TypeScript or React
- Event-driven architectures or high-throughput systems
- Third-party integrations or eCommerce platforms
- CI/CD pipelines and cloud infrastructure
- Monitoring, observability and supporting production services
- We're not expecting you to be an expert in everything. What matters most is that you have a good foundation in Rust, enjoy solving problems and are keen to keep growing as an engineer.
- What your first few months could look like
- When you join, we'll give you the time and support to get familiar with our technology, products and ways of working.
- You'll start by getting to know the team, understanding how our ordering and fulfilment systems fit together and contributing to features and improvements within our Rust codebase.
- You'll work alongside experienced engineers, getting involved in technical discussions, pairing sessions and code reviews as you build confidence in our systems.
- As you settle in, you'll take greater ownership of features and services, contribute to technical decisions and work on increasingly complex challenges.
- There's real opportunity to broaden your experience here, whether that's deepening your Rust expertise, learning more about Go, working with event-driven architectures or developing your understanding of building and operating reliable systems at scale.
- We want you to grow with us, and we'll support that through mentorship, collaboration, training and plenty of opportunities to learn by doing.
- Why Nando's?
- We're a restaurant business at heart, but there's a lot more technology behind Nando's than you might expect.
- Our engineers work on real problems, build products that customers and Nandocas use every day and have the opportunity to see the impact of what they create.
- We're big believers in collaboration, learning from each other and giving people the freedom to do their best work.
- And while we take engineering seriously, we don't believe work has to feel overly corporate. We want people to enjoy being part of the team, bring their personalities to work and feel comfortable being themselves.
- Our values of Pride, Passion, Integrity, Courage and Family aren't just words on a wall. They're part of how we work together and how we treat each other.
- If you're a Software Engineer who enjoys working with Rust, wants to keep learning and likes the idea of building technology that helps millions of customers enjoy Nando's, we'd love to hear from you.
- Everyone is Welcome
- At Nando's, everyone is welcome. Inspired by our Southern African heritage, we know and value the richness that diversity brings to Nando's.
- We're committed to creating an inclusive and respectful culture for everyone, including our existing and future Nandocas, partners, suppliers, customers and the communities we're part of.
- We work hard to create an environment where every individual is valued, respected and able to flourish, regardless of who they are, their background or their outlook on life.
- We welcome applications from people of all backgrounds and will consider reasonable adjustments to help candidates perform at their best throughout the recruitment process.
- #LN-DNI
Job description provided by Nando's.
View the original posting