Lead design and implementation of backend features and services that align with product strategy, security requirements, and quality standards.
Champion AI-assisted development within the team and research the bleeding edge of best practice to keep evolving your knowledge that you share with the team.
Author and review technical designs/RFCs; provide clear trade‑off analyses and decision records.
Develop clean, maintainable, and well‑tested code with appropriate automated tests (unit, integration, contract, performance).
Improve service reliability through SLOs, alerting, logging, and tracing; participate in on‑call with a blameless approach to incidents.
Collaborate closely with Product, Security, SRE, and Support to plan releases, manage risk, and deliver measurable customer value.
Contribute to architecture within team scope (API boundaries, data models, messaging patterns, failure handling).
Drive security‑by‑design practices (threat modelling, secure authZ/authN, secrets management, least privilege).
Mentor engineers through code reviews, pairing, and design walkthroughs; help raise the bar on engineering practices.
Continuously improve CI/CD pipelines, developer experience, and testing effectiveness.
Contribute to sprint ceremonies, provide dependable estimates, and deliver on commitments with transparency.
Essential
Strong experience building backend services and APIs in a modern language (TypeScript/Node.js preferred).
Solid understanding of API design (versioning, idempotency), request/response lifecycles, and integration patterns (REST/JSON, async messaging).
Proficiency with relational databases (PostgreSQL): schema design, indexing, query optimisation, transactions, and safe migrations.
Experience with containers and cloud-native development (Docker, Kubernetes) and CI/CD practices.
Hands-on with automated testing across the pyramid; familiarity with contract testing and test data management.
Practical knowledge of secure coding, authentication/authorisation, and secrets management.
Ability to investigate and resolve production issues methodically; familiarity with observability tooling (metrics, logs, traces).
Clear communication, cross-team collaboration, and mentoring skills.
Bachelor’s degree in computer science/software engineering or equivalent practical experience.
Desirable
Deep TypeScript backend experience (type-driven development, dependency injection, modular architecture).
Familiarity with microservice and event-driven architectures (service boundaries, API gateways, asynchronous workflows).
Experience with messaging (e.g., Kafka, NATS, SNS/SQS) and outbox/transactional messaging patterns.
Infrastructure-as-Code and cloud platforms (e.g., Terraform, AWS/Azure/GCP) and serverless components where appropriate.
Advanced performance and cost optimisation of services and databases.
Experience with security reviews, threat modelling, and compliance considerations.
Experience improving developer workflows and CI/CD pipelines at team scale.