About the Role
Agoda is building next-generation backend systems that handle millions of user requests daily across our global travel platform. We're looking for a Staff Backend Engineer to lead distributed systems architecture, mentor engineering teams, and drive technical strategy across our backend organization. In this role, you'll work on mission-critical systems: APIs serving millions of search requests, real-time booking infrastructure, and high-performance microservices powering the world's largest travel marketplace.
Responsibilities
- Own end-to-end backend platform architecture — design scalable microservices and distributed systems across critical domains from vision through production.
- Drive architectural decisions and establish REST API design standards that influence multiple teams and system domains.
- Lead large-scale technical initiatives that improve service reliability, high availability, and performance at scale.
- Identify and resolve performance bottlenecks in high-throughput systems, surface technical debt, and build credible prioritized plans to address it.
- Lead development of complex features and systems with full ownership.
- Mentor engineers at multiple levels, coach them to grow, and review code and designs in a way that builds capability.
- Translate complex architectural trade-offs (cloud infrastructure, scalability, fault tolerance) into clear narratives for leadership and stakeholders.
- Lead incident response in production, find root causes, mitigate impact, and keep stakeholders updated.
- Exemplify technical excellence, build team culture rooted in feedback and continuous improvement, and serve as a role model for the backend organization.
Requirements
- At least 7 + years of experience building performance-critical applications in production environments using Scala, Java, Kotlin, Python, Go, or C#.
- Demonstrate proven track record designing and evolving distributed systems architecture at massive scale (millions of requests/day).
- Demonstrate strong foundation in microservices, REST APIs, SQL/NoSQL databases, algorithms, and system design.
- Lead large-scale technical initiatives with deep cross-team ownership and influence through quality of thinking.
- Show passion for software craftsmanship, mentor and elevate engineering teams, and communicate complex system design to all audiences.
- Excellent communication: can articulate complex system design to engineers and non-technical stakeholders alike.
Great If You Have
- Experience with Scrum/Agile development methodologies.
- Experience building large-scale distributed products.
- Core engineering infrastructure tools like Git for source control, TeamCity for Continuous Integration and Puppet for deployment.
- Hands-on experience working with technology like queueing systems (Kafka, RabbitMQ, ActiveMQ, MSMQ), Spark, Hadoop, NoSQL (Cassandra, MongoDB), Play framework, Akka library.