Engineer

Full Stack Engineer · Mid · Full Time

CAN: VAN (333 Seymour St)CAD 130k – 150k2d ago
Apply for this role

Opens Xero's application page

Role

What you'll do.

Join Xero as a Full Stack Engineer to build robust, scalable cloud-based accounting software serving millions of small businesses globally. You'll work on infrastructure reliability, API development, and modern engineering practices while collaborating with a high-performing team that values code quality, security, and continuous learning. This role offers hands-on technical challenges across the development lifecycle, from architecture and implementation to production support and on-call responsibilities.

Responsibilities

  • Full Lifecycle Software Development: Transform complex, ambiguous problems into robust, high-quality software solutions. Participate in shaping technical architecture, writing production-grade code, implementing comprehensive testing strategies, and troubleshooting issues across the entire development lifecycle to ensure customer reliability.
  • Cloud Infrastructure Reliability & Scalability: Strengthen the reliability and scalability of Xero's cloud-based infrastructure. Work on improving system performance, implementing resilience patterns, and ensuring the platform can handle millions of concurrent users managing their accounting operations.
  • API and Service Development: Design, develop, and maintain APIs and microservices that power Xero's wider product ecosystem. Ensure APIs follow RESTful principles, maintain backward compatibility, and provide clear documentation for internal and external developers integrating with the platform.
  • Production Operations and On-Call Support: Participate in an on-call rotation sharing responsibility for keeping Xero's products running 24/7. Respond to production incidents, troubleshoot system failures, implement emergency fixes, and conduct post-incident analysis to prevent recurrence.
  • Engineering Practices Improvement: Contribute to evolving team engineering standards and developer efficiency practices. Share knowledge freely with teammates, conduct code reviews with empathy, and advocate for process improvements such as test-driven development and trunk-based deployment strategies.
  • AI and Developer Tooling Integration: Explore practical applications of AI-powered tools to streamline engineering workflows and boost team productivity. Mentor teammates on effective AI tool usage, implement automation opportunities, and stay current with emerging developer productivity technologies.
  • Security and Risk Assessment: Proactively identify and mitigate application and infrastructure security vulnerabilities before they impact customers. Implement security best practices across the codebase, conduct security-focused code reviews, and stay informed about emerging security threats in cloud platforms.
  • Cross-Functional Collaboration: Work closely with product managers, designers, and other engineering teams to understand customer needs and technical requirements. Participate in design discussions, provide technical feasibility assessments, and ensure alignment on quality standards and timelines.

Qualifications

What we look for.

Technical

  • Multi-Language Programming Proficiency

    Demonstrated hands-on experience with one or more modern programming languages. Strong ability to debug complex issues across different technology stacks and write maintainable, performant code that follows best practices.

  • Full Stack Development Capability

    Competency across frontend, backend, and infrastructure layers. Experience designing and building web applications, REST APIs, and working with cloud platforms. Ability to understand system interactions from database to user interface.

  • Test-Driven Development (TDD)

    Regular practical experience writing tests before implementation. Proficiency with testing frameworks and a mindset that prioritizes test coverage, automated testing, and continuous integration to ensure code quality and regression prevention.

  • Trunk-Based Development

    Experience with modern version control workflows using trunk-based development or continuous integration patterns. Comfortable with feature flags, automated deployments, and rapid iteration cycles rather than long-lived feature branches.

  • Cloud Platform Experience

    Hands-on experience working with cloud infrastructure and services. Familiarity with concepts like containerization, microservices, serverless architectures, or managed databases. Understanding of cloud security and cost optimization.

  • Security Awareness

    Proactive mindset around application and infrastructure security. Knowledge of common vulnerability types, secure coding practices, authentication/authorization patterns, and ability to identify and escalate security risks during code reviews.

  • AI Tools Proficiency

    Practical experience leveraging AI-powered development tools such as code assistants, automated testing generators, and documentation tools. Ability to effectively prompt AI systems and critically evaluate their outputs for production use.

Education

  • Computer Science or Related Field

    Bachelor's degree in Computer Science, Software Engineering, or related discipline. Alternatively, equivalent professional experience demonstrating strong fundamentals in algorithms, data structures, and software design principles.

  • Continuous Learning Mindset

    Demonstrated commitment to ongoing professional development through certifications, conference attendance, open-source contributions, technical blog writing, or self-directed learning in emerging technologies and best practices.

Experience

  • Production Software Development

    Track record of developing, deploying, and maintaining software in production environments. Experience responding to production issues, implementing monitoring, and iterating based on real-world customer feedback and usage patterns.

  • Scalable Systems Development

    Experience building or maintaining systems handling significant scale. Understanding of performance optimization, caching strategies, database query optimization, and architectural patterns for reliable, scalable applications.

  • On-Call and Incident Response

    Comfort participating in on-call rotations and responding to production incidents. Experience with incident triage, root cause analysis, and post-incident reviews. Demonstrated reliability and ownership when critical systems require immediate attention.

  • API Design and Development

    Experience designing and building RESTful or GraphQL APIs. Understanding of API versioning, documentation, deprecation strategies, and considerations for external developers consuming your APIs.

  • Cross-Functional Collaboration

    History of working effectively with product, design, and other engineering teams. Ability to translate requirements into technical solutions and communicate technical constraints and tradeoffs to non-technical stakeholders.

Skills

Required

  • Object-Oriented Programming (OOP)

    Strong grasp of OOP principles including encapsulation, inheritance, polymorphism, and SOLID design principles. Ability to design and implement well-structured, maintainable code using these concepts.

  • Database Design and Optimization

    Understanding of relational database design, SQL query optimization, and indexing strategies. Experience working with both relational and non-relational databases. Ability to identify and fix N+1 query problems and performance bottlenecks.

  • API Development and Integration

    Proficiency designing and building RESTful APIs with proper HTTP semantics, error handling, and authentication. Experience integrating third-party APIs and building resilient client code that handles network failures gracefully.

  • Software Testing and QA

    Hands-on experience writing unit tests, integration tests, and end-to-end tests. Familiarity with testing frameworks, mocking libraries, and test automation. Understanding of testing strategies and coverage metrics.

  • Version Control (Git)

    Proficiency with Git and collaborative development workflows. Comfortable with branching strategies, pull requests, code reviews, and resolving merge conflicts. Understanding of commit hygiene and meaningful commit messages.

  • Linux/Unix System Administration Basics

    Comfortable working in Unix/Linux environments. Familiarity with command-line tools, shell scripting, file permissions, and basic system administration concepts needed to debug and deploy applications.

  • Problem Debugging and Troubleshooting

    Strong analytical skills to systematically debug complex issues across full technology stacks. Experience using debuggers, logging frameworks, monitoring tools, and applying scientific troubleshooting methodologies.

  • Security Best Practices

    Working knowledge of secure coding practices including input validation, output encoding, CSRF protection, secure authentication, and handling sensitive data. Awareness of OWASP Top 10 vulnerabilities.

Preferred

  • Microservices Architecture

    Nice to have

    Experience designing, building, or maintaining microservices-based systems. Understanding of service boundaries, inter-service communication patterns, distributed tracing, and challenges of distributed systems.

  • Containerization (Docker, Kubernetes)

    Nice to have

    Hands-on experience with Docker for containerizing applications. Familiarity with Kubernetes orchestration, container networking, and deployment strategies in containerized environments.

  • Cloud Platform Services (AWS, Azure, GCP)

    Nice to have

    Experience working with major cloud providers' managed services. Familiarity with compute options (EC2, App Service, Compute Engine), databases (RDS, Cosmos DB, Cloud SQL), and serverless offerings.

  • CI/CD Pipeline Implementation

    Nice to have

    Experience designing and implementing continuous integration and continuous deployment pipelines. Familiarity with tools like Jenkins, GitHub Actions, GitLab CI, or similar. Understanding of automated testing in CI/CD contexts.

  • Monitoring and Observability

    Nice to have

    Experience implementing application monitoring, logging, and distributed tracing. Familiarity with tools like Prometheus, ELK Stack, Datadog, or New Relic. Understanding of SLIs, SLOs, and error budgets.

  • SaaS Product Development

    Nice to have

    Background building or maintaining Software-as-a-Service applications. Understanding of multi-tenancy, subscription billing, feature flagging, and the operational challenges of maintaining always-on platforms.

  • FinTech or Accounting Domain Knowledge

    Nice to have

    Familiarity with accounting principles, financial software requirements, or fintech operations. Understanding of compliance requirements, data integrity concerns, and regulatory considerations in financial applications.

  • Open Source Contributions

    Nice to have

    Active participation in open-source projects. Demonstrated ability to work in collaborative environments, understand existing codebases, and contribute quality code aligned with project standards.

Tech stack

Languages

PythonJavaScript/TypeScriptC#/.NETJavaGo

Frameworks

ReactNode.jsDjango/FlaskSpring/Spring Boot.NET Core

Databases

PostgreSQLMySQLRedisMongoDBElasticsearch

Tools

DockerKubernetesGitJenkins/GitHub ActionsTerraform

Other

RESTful API DesignMicroservices ArchitectureDevOps and Infrastructure AutomationTest-Driven Development (TDD)Cloud Computing (AWS/Azure/GCP)

Compensation

Pay and benefits.

Base·CAD 130,000 – 150,000

Full posting

Original listing.

The role / impact

You'll take on complex, sometimes ambiguous problems and turn them into robust, high quality software that customers can rely on. Your work will span the full lifecycle, from shaping technical solutions and writing quality code through to testing, troubleshooting and keeping systems running smoothly in production. Every decision you make will be grounded in customer outcomes and a genuine care for doing things properly.

Beyond the code, you'll help shape how the team works. You'll share feedback with empathy, support others as they grow, and contribute ideas that improve engineering practices across the wider team. You'll also take part in an on call roster, sharing responsibility for keeping our products running around the clock.

The team / how they connect

You'll join a close knit engineering team that works across the full stack to build and maintain software our customers depend on every day. The team collaborates closely with product, design and other engineering groups, sharing knowledge freely and holding each other to a high standard of quality. Decisions are made together, with a strong bias towards clarity and getting the right things done quickly.

The team is currently working on / Initially, you will focus on

  • Strengthening the reliability and scalability of our cloud based infrastructure

  • Improving engineering practices and developer efficiency across the team

  • Exploring practical ways to use AI tools to streamline everyday engineering work

  • Building and maintaining APIs and services that support our wider product ecosystem

Where and how you can work

We support flexible, hybrid working, with time together in the office balanced against the flexibility to work in the way that suits you best. We know good work happens in different places and at different times, so we focus on outcomes rather than hours at a desk. Specific office expectations and any regular in person days will be discussed with you as part of the hiring process.

Here are some of the things we are looking for

  • You'll bring hands on experience with one or more programming languages, along with the confidence to debug across a technology stack

  • Practical use of AI tools to boost your own productivity and streamline how you work comes naturally to you

  • A specialism in a particular area of the development stack, paired with genuine curiosity to keep learning, is part of who you are

  • Test driven and trunk based development are practices you use regularly, not just concepts you know about

  • Spotting application and infrastructure security risks before they become problems is something you actively look out for

  • Taking part in an on call roster and sharing in the responsibility for reliable products is something you're comfortable with

Apply even if your experience isn't a perfect match! At Xero, we hire based on your skills, passion, and the unique perspective you can bring to enhance our culture and team.

Redirects to Xero's application page.

Other roles

More at Xero.

View all 27 roles