Olo is a leading SaaS platform accelerating digital transformation in the restaurant industry, by helping customers deliver more personalised and profitable guest experiences. As a result, our digital ordering, payment, and guest engagement solutions enable brands to do more with less and make every guest feel like a regular.
While our roots are in NYC, we’re intentionally investing in Belfast and Northern Ireland as a key hub, with an established leadership presence, a local team, and community for the long term. This role is fully remote, offering you flexibility to work from anywhere within NI.
Your new role
In this role, you’ll join as an intermediate Front End Software Engineer on the ‘Serve’ team, which is part of the wider ‘Order’ engineering group. ‘Serve’ refers to our dynamic web ordering platform that powers many of the biggest restaurant brands in the US, like Five Guys, Nandos, Shake Shake, plus 750+ more!
This team builds consumer facing experiences that delight millions of customers while handling the complexity of providing customised experiences per brand. You'll have the support of a highly experienced engineering team consisting of 14 engineers, split into two squads, and who are based across the UK, Europe and the US. On a management level, the team is led by a dedicated Engineering Manager.
How you’ll make an impact
Demonstrate a solid understanding of the ‘Serve’ team's domain and technology stack, contributing to discussions and development decisions with growing independence.
Handle small-to-medium features independently and begin taking ownership of moderately complex tasks with some guidance.
Write clean, maintainable code and actively participates in peer code reviews, providing constructive feedback and adhering to coding standards.
Collaborate closely with Product to refine requirements, helping to shape solutions that meet business needs.
Focus on delivering high-quality software solutions within established timelines.
Engage in troubleshooting and debugging efforts, showing an ability to resolve common and moderately complex issues with minimal support.
Assist in the deployment and monitoring of services, learning how to manage and troubleshoot issues in production environments.
Contribute to building and maintaining reliable distributed systems, implementing resilience mechanisms as appropriate.
Participate in team ceremonies and demonstrate initiative by taking ownership of tasks and helping to unblock others when possible.
Engage in continuous learning and self-improvement by exploring new technologies and best practices relevant to the team's work.
What will set you up for success
Bachelor’s Degree in Computer Science, Software Engineering or equivalent practical experience.
3+ years of experience in Software Engineering.
Programming Skills: Proficient in React, TypeScript and NextJS and capable of implementing moderately complex features and algorithms.
Version Control & CI/CD Pipelines: Experience using version control tools (e.g., GitHub) and participating in CI/CD pipelines (e.g., GitHub Actions, TeamCity).
Testing Practices: Proficient in writing and maintaining unit and integration tests, demonstrating an understanding of test-driven development (TDD) principles (e.g., Vitest, Playwright, Jest).
Distributed Systems Knowledge: Familiarity of distributed systems, including building scalable and resilient services (e.g., Redis, Kafka, AWS infrastructure).
Problem-Solving & Collaboration: Strong problem-solving skills and effective collaboration with immediate and cross-functional team members.