Company Description
Dananeer is revolutionizing the world of card and board games by creating a versatile platform that caters to both offline and online players. Our mission is to unite people through the timeless joy of these games, providing seamless play across all modes in a single app. We meticulously design and develop our games in-house to ensure quality, cultural authenticity, and innovation. With a growing portfolio of classics and modern experiences, Dananeer is becoming the go-to destination for card and board game enthusiasts in the Middle East and beyond.
Role Description
We are looking for a highly skilled Senior Backend Engineer to lead backend development for our large-scale real-time multiplayer gaming platform. This role is critical in ensuring that our systems are robust, scalable, and performant, supporting thousands of concurrent players across multiple card and board games.
The ideal candidate is an experienced backend developer with deep expertise in Node.js (NestJS), distributed systems, and real-time applications. While a dedicated DevOps team manages infrastructure, the candidate must have a strong understanding of AWS services and cloud-native architectures to design backend systems that integrate seamlessly with production deployments.
Responsibilities
Backend Architecture & Development
- Design and implement backend services and APIs using NestJS/Node.js 22.x.
- Build scalable real-time systems for multiplayer game sessions, competitions, leaderboards, and transactions.
- Apply design patterns (Repository, Strategy, Observer, State Machine) for modular and maintainable code.
Database & Data Management
- Design and optimize schemas in PostgreSQL 16 (JSONB, MVCC, window functions, GIN indexes).
- Implement efficient transactional queries, loaders, and pagination strategies.
- Manage migrations and versioning for evolving database structures.
Real-Time & Distributed Systems
- Develop and maintain Socket.IO/WebSocket event systems for real-time gameplay.
- Use Redis for caching, matchmaking, presence management, and WebSocket scaling.
- Manage BullMQ queues for delayed jobs, scheduled system events, and workers.
Cloud Awareness & Collaboration with DevOps
- Work closely with the DevOps team to ensure backend services are production-ready.
- Understand how AWS ECS, ALB, RDS, Redis Cluster, SQS, and Kafka integrate with backend systems.
- Provide backend requirements and collaborate on scaling, monitoring, and deployment strategies.
Game Logic Implementation
- Build session management systems for players, bots, watchers, and tournaments.
- Handle edge cases like reconnections, inactive players, and auto-bot moves.
Collaboration & Documentation
- Work closely with frontend engineers.
- Write clear technical documentation (system design, onboarding guides, release notes).
Qualifications
- 5+ years of backend development experience in NodeJS.
- with at least 2 years in TypeScript and NestJS.
- Strong expertise with PostgreSQL and Redis in production.
- Experience with real-time applications and distributed systems.
- Solid understanding of AWS services (ECS, RDS, Redis, ALB, SQS, Kafka) from an integration perspective.
- Familiarity with Docker, CI/CD, monitoring tools.
- Strong problem-solving skills and ability to debug complex systems.
- Excellent communication skills and ability to work in cross-functional teams.