About the role
Responsibilities:
- Write clean, efficient, and testable code, owning complex features and services from design to deployment.
- Work closely with your squad (PMs, engineers, and QAs) to refine requirements, scope technical solutions, and deliver great software.
- Champion automated testing and CI/CD. You'll write unit, integration, and contract tests and help make our systems robust and reliable.
- Build, deploy, and monitor services in AWS using tools like Terraform, Kubernetes, and GitHub Actions.
- Take responsibility for the health, performance, and maintainability of the code you ship.
- Help evolve our engineering standards and practices by sharing knowledge, reviewing code, and learning from incidents.
- Champion observability. You'll be using DataDog to monitor services and debug production issues.
- Be a mentor and teacher to less experienced engineers.
- Develop in an Agile environment using tools like Git, Jira, and Confluence, with a mindset of collaboration and continuous improvement.
Requirements:
- 5+ years of experience in software development with a strong focus on TypeScript (Node.js and React) and excellent knowledge of JavaScript fundamentals.
- Experience building and running production systems in AWS using tools like EKS, Lambda, and RDS.
- Skilled in designing and building GraphQL and RESTful APIs, with practical knowledge of MongoDB, PostgreSQL, and Kafka.
- Comfortable developing software within an event-driven architecture.
- Deep knowledge of writing automated tests with Jest, Pact, and the principles of TDD.
- Comfortable building and maintaining CI/CD pipelines (we use GitHub Actions) for code deployment primarily using Terraform.
- Experience using DataDog (or similar) to monitor services and debug production issues.
- Experience working in Agile environments using tools like Git, Jira, and Confluence, with a mindset of collaboration and continuous improvement.
- Able to take a problem and run with it, bringing a pragmatic, product-focused approach to software delivery.
- Demonstrated continuous use of AI-assisted tooling to optimize productivity, architectural decisions, and code robustness.