Job Description
Summary
You will
- Design and implement scalable backend services using NestJS and Node.js
- Work with relational databases and designing normalized schemas (PostgreSQL)
- Implement asynchronous processing and inter-service communication (e.g., via RabbitMQ)
- Build and maintain RESTful and GraphQL APIs
- Write unit and integration tests
- Follow best practices in code structure, error handling, logging, and configuration management
- Apply principles of Domain-Driven Design (DDD) to organize and model complex business logic
- Use common architectural and design patterns (e.g., Factory, Strategy, Adapter, Dependency Injection) to structure the codebase and improve maintainability
You have
- Strong understanding of TypeScript and modern JavaScript
- Deep understanding of DDD principles and how to apply them in real-world projects
- Understanding of fundamental cryptographic concepts (e.g., hashing, digital signatures, asymmetric encryption)
- Ability to write clean, maintainable, and self-documented code
- Proactive communication and ownership mindset
Tech stack
- Programming Language: TypeScript (Node.js)
- Framework: NestJS
- Database: PostgreSQL, Redis
- Messaging: RabbitMQ
- API: REST, GraphQL (optional)
- CI/CD & Infrastructure: Docker, GitHub Actions (optional)
- Monitoring: Prometheus, Grafana
- Other: Jest / Node.js native test runner, ESLint, Prettier
Skills
- Communications Skills
- Development
- Software Engineering
- SQL
- TypeScript