Backend Developer – TypeScript/Node.js, NestJS & Kafka
Senior Software Engineer working on the AVA Modernization program, building cloud-native services using NX monorepo, NestJS, TypeScript/Node.js, Kafka, and MongoDB/Snowflake data patterns. The role involves developing microservices, event ingestion systems, and contributing to data-layer design in a hybrid work environment.
- Compensation
- Not disclosed
- Location
- Toronto, Canada
- Work setup
- Hybrid
- Seniority
- Senior
- Employment
- Contract
- Experience
- 5+ years
- Category
- Backend
- Posted
Skills
Must have
- 5-10 years of backend engineering experience
- Strong hands-on expertise with NestJS (modules, DI, guards, interceptors, pipes, validation, Swagger/OpenAPI)
- Practical experience with NX monorepos (shared libs, dependency graph, affected builds/tests)
- Advanced TypeScript/Node.js skills and API/event contract design
- Experience with event-driven systems (Kafka or equivalent), including retries, idempotency, and schema/version evolution
- Experience building BFF/API orchestration layers across multiple upstream services
- Solid MongoDB experience for low-latency operational workloads
- Strong communication and collaboration skills in cross-functional delivery teams
Nice to have
- Ability to navigate and analyze C# and/or Java codebases at a working level
- Experience with Azure Entra ID and OAuth/OBO flows
- Exposure to GraphQL supergraph integrations from BFF layers
- Snowflake or similar analytical platform experience
- Experience migrating legacy services to containerized/cloud-native architectures
- Kubernetes/OpenShift delivery exposure
Full description
Senior Software Engineer – NX, NestJS, TypeScript/Node.js, Kafka & MongoDB
Toronto, ON - Hybrid (4 Days WFO)
Experience: 8+ years in software engineering| with strong hands-on experience in TypeScript/Node.js| NestJS| and NX monorepo delivery
Role Summary
We are hiring a senior engineer to help deliver the AVA Modernization program| moving a legacy platform to a cloud-native architecture using NX monorepo| NestJS services| event-driven integration| and MongoDB/Snowflake data patterns. This is a hands-on role with architecture influence across BFF| microservices| ingestors| and workers.
Key Responsibilities
- Build and scale services within a single NX monorepo using shared libraries and dependency-aware CI/CD.
- Develop and evolve a NestJS BFF Gateway for multiple frontends| including JWT validation and OBO token exchange with Azure Entra ID.
- Implement internal NestJS microservices with clear domain ownership and independent deployment.
- Build ingestion services that consume external events| transform payloads| persist operational data| and publish internal domain events.
- Develop async workers that process internal events for side effects (notifications| indexing| jobs) without tight service coupling.
- Contribute to data-layer design:
- MongoDB for operational/current-state reads
- Snowflake for analytical/reporting workloads
- Create and maintain shared libs/ contracts (DTOs| event payloads| auth utilities| API clients| validation rules).
- Ensure strong testing| observability| performance| and production reliability standards.
Required Qualifications
- 5-10 years of backend engineering experience.
- Strong hands-on expertise with NestJS (modules| DI| guards| interceptors| pipes| validation| Swagger/OpenAPI).
- Practical experience with NX monorepos (shared libs| dependency graph| affected builds/tests).
- Advanced TypeScript/Node.js skills and API/event contract design.
- Experience with event-driven systems (Kafka or equivalent)| including retries| idempotency| and schema/version evolution.
- Experience building BFF/API orchestration layers across multiple upstream services.
- Solid MongoDB experience for low-latency operational workloads.
- Strong communication and collaboration skills in cross-functional delivery teams.
Preferred Qualifications