Backend Developer – Node.js
ODI Technologies Inc.
ABOUT THE ROLE
We are a software development and consulting firm building high-throughput, cloud-native backend systems on
AWS for enterprise clients in fintech, SaaS, and e-commerce. This role is for engineers who ship production
Node.js services — built with NestJS or Express — and own the full AWS backend stack from API Gateway and
Lambda to RDS, DynamoDB, SQS, and beyond. You will architect event-driven microservices, enforce API
contracts, and deliver observable, secure, and cost-efficient systems that scale to millions of requests.
RESPONSIBILITIES
• Design, build, and maintain production Node.js (NestJS / Express) backend services following clean
architecture and SOLID principles.
• Architect and deploy RESTful and event-driven APIs on AWS Lambda (serverless) or ECS Fargate
(containerised), fronted by API Gateway.
• Model and manage data across PostgreSQL (RDS/Aurora) and DynamoDB — choose the right store for
each access pattern.
• Implement async and event-driven workflows using SQS (queues), SNS (pub/sub), and EventBridge (event
routing).
• Secure APIs using JWT, OAuth2, API keys, Cognito authorisers, and IAM-based access control on API
Gateway.
• Write infrastructure-as-code for all backend resources using AWS CDK (TypeScript) or Terraform.
• Instrument full observability: structured logging to CloudWatch, distributed tracing with X-Ray, and custom
CloudWatch metrics.
• Enforce API contracts with OpenAPI/Swagger; design versioned, backward-compatible APIs consumed by
frontend and third-party clients.
• Implement caching strategies using ElastiCache (Redis): response caching, rate limiting, session storage,
and pub/sub messaging.
• Manage database migrations with TypeORM migrations or Prisma Migrate; configure RDS Proxy for Lambda
connection pooling.
• Write comprehensive tests: Jest unit and integration tests, Supertest for API contract testing, and AWS SDK
mocking with aws-sdk-mock.
• Participate in on-call rotation; lead post-incident reviews and drive reliability improvements.
• Conduct code reviews, define backend engineering standards, and mentor junior developers.
• Engage directly with clients to gather API requirements, demo backend capabilities, and present technical
designs.
REQUIRED QUALIFICATIONS
• 4+ years of backend Node.js development experience with at least 2 years in production.
• Strong TypeScript proficiency: generics, decorators, type guards, utility types, and strict mode.
• NestJS expertise: modules, providers, guards, interceptors, pipes, middleware, and custom decorators.
• Deep understanding of Node.js concurrency: event loop, libuv, async/await, streams, and Worker Threads.
• Hands-on AWS experience: Lambda, API Gateway, ECS Fargate, RDS (PostgreSQL/Aurora), DynamoDB,
SQS, SNS, EventBridge, S3, Secrets Manager, IAM.
• PostgreSQL skills: schema design, indexing, EXPLAIN ANALYZE, transactions, and ORM usage (TypeORM
or Prisma).
• DynamoDB data modelling: single-table design, GSIs, LSIs, and access pattern-driven schema design.
• Docker containerisation for local development and ECS Fargate production deployments.
• CI/CD pipeline ownership with GitHub Actions: lint → test → build → deploy across multiple environments.
• Strong understanding of REST principles, HTTP semantics, idempotency, and API security best practices.
NICE TO HAVE
• AWS Developer Associate or Solutions Architect Associate certification.
• AWS CDK (TypeScript) for type-safe infrastructure provisioning colocated with application code.
• GraphQL API design with Apollo Server or AWS AppSync.
• gRPC service design and Protobuf schema management for internal microservice communication.
• AWS Step Functions for multi-step workflow and saga orchestration.
• Kinesis Data Streams for high-throughput real-time event ingestion.
• Experience with the Serverless Framework or SST (SST Ion) for Lambda-first architectures.
• OpenTelemetry instrumentation for vendor-agnostic distributed tracing.
• Consulting or professional services background with direct client delivery experience.
• Familiarity with AI/ML integration: AWS Bedrock, OpenAI API, or LangChain.js in production.