Role Overview
We are looking for a Senior Backend Engineer to enhance and maintain our existing systems while driving the development of new services based on business needs. This role requires a deep technical background, strong architectural knowledge, and the ability to mentor junior engineers.
Key Responsibilities
Participate in software design discussions and problem-solving initiatives.
Manage and mentor junior engineers to support their professional growth.
Maintain, optimize, and scale existing projects based on evolving requirements.
Design and implement new backend services with high reliability and performance.
Qualifications
Bachelor’s degree in Computer Engineering or a related field.
3–5 years of experience in software engineering, with a strong focus on backend development.
Strong proficiency in Node.js, TypeScript, and NestJS.
Solid understanding of Object-Oriented Programming (OOP) principles.
Strong expertise in SQL databases (e.g., PostgreSQL).
Experience with NoSQL databases (e.g., MongoDB).
Hands-on experience with key-value databases (e.g., Redis).
Strong experience working with software architectures: monolithic, microservices, and modular monolithic.
Experience with message brokers (e.g., NATS, Apache Kafka, RabbitMQ, or STOMP).
Knowledge of design patterns such as Saga, Singleton, etc.
Practical experience with DDD, SOLID principles, and other software best practices.
Nice to Have (Not Required)
Experience with Docker and containerized environments.
Experience in decoding and encoding camera frames.