About the role
As a Lead Software Engineer, you will play a key role in designing, developing, and maintaining both backend and front end systems that are critical to the growth of our platform. You will work closely with product and engineering teams to build reliable, scalable, and efficient systems that handle large-scale data and high throughput.
The ideal candidate will have a strong background in TypeScript/JavaScript and Node.js, experience working with distributed systems, GCP, Pub/Sub, and a solid understanding of observability principles and tools.
What you’ll do
- Architect, design, and implement highly scalable and resilient backend systems using Node.js, TypeScript, and JavaScript.
- Leverage GCP services (such as Pub/Sub, Cloud Functions, Kubernetes Engine, Compute Engine, Cloud Storage) to build and deploy cloud-native applications.
- Implement robust monitoring, logging, and tracing solutions to ensure end-to-end visibility into application health and performance. Utilize observability tools (e.g., SumoLogic, OpenTelemetry) to provide actionable insights into system performance.
- Troubleshoot, optimize, and maintain systems to ensure performance at scale, including monitoring and alerting using GCP tools and observability platforms.
- Maintain a positive and constructive relationship between yourself and your product peers.
- Working with your peers in Product and your team, assist in the development roadmaps and plans which effectively and efficiently deliver business outcomes.
- Maintain a current knowledge of engineering technologies used in the development of Xero’s software applications. Stay up-to-date with emerging engineering practices, techniques and frameworks.
- Work with engineers and CX teams to troubleshoot and resolve production issues, where appropriate. Ensure that post-incident learnings are collected and actioned.
What you’ll bring with you
- Strong proficiency in TypeScript and JavaScript, with experience in building server-side applications using Node.js.
- Proven experience working with distributed systems and microservices architectures.
- Experience with cloud platforms, particularly Google Cloud Platform (GCP).
- Hands-on experience with Google Cloud Pub/Sub and other GCP services (e.g., Cloud Functions, Kubernetes Engine, Compute Engine).
- Strong understanding of observability concepts (monitoring, logging, tracing) and practical experience with observability tools (e.g., Prometheus, Grafana, OpenTelemetry, Stackdriver).
Nice to have