Job Description

Backend Developer: As a Backend Developer, you will work closely with cross-functional teams to drive the development of new features, optimize existing functionalities, and ensure the stability of our live production environment. Your expertise in backend technologies, microservices architecture, and programming principles will be critical to maintaining the performance and scalability of our applications. You will also contribute to code reviews, mentoring junior developers, and implementing industry-standard processes for version control (Git) and API testing.Key ResponsibilitiesFeature Development and Optimization:Design, develop, and deploy new features for our mature products running in multi-client live production environments.Optimize existing backend systems to improve performance, scalability, and maintainability.Collaborate with product managers and frontend developers to translate business requirements into technical specifications.Backend Development with NestJS and Node.js:Build and maintain RESTful API endpoints using NestJS and Node.js .Implement clean, modular, and reusable code following SOLID principles, Dependency Injection (IoC), and DRY methodology.Ensure secure coding practices to protect against vulnerabilities such as SQL injection, XSS, and CSRF.Database Management:Design and optimize database schemas and queries for MariaDB.Write efficient SQL queries and stored procedures to support application logic.Monitor and troubleshoot database performance issues during development and staging environments.Microservices Architecture:Develop and maintain microservices-based architectures to ensure scalability and fault tolerance.Implement service-to-service communication using protocols like gRPC or message brokers (e.g., SQS, RabbitMQ).Ensure proper logging, monitoring, and error handling across all services.Strong understanding of AWS Lambda and other microservices related products by AWS will be a plus.Version Control and CI/CD:Utilize advanced Git branching strategies (e.g., Git Flow, Trunk-Based Development) to manage codebase changes effectively.Participate in code reviews to enforce quality standards and share knowledge within the team.Automate deployment pipelines using CI/CD tools to streamline releases to EC2 instances running Nginx .API Testing and Quality Assurance:Use API testing frameworks and tools like Postman, Bruno , or Insomnia to validate API functionality and performance.Write automated tests for APIs, including unit tests, integration tests, and end-to-end tests.Collaborate with QA engineers to identify and resolve bugs before they reach production.Production Support and Incident Management:Monitor production systems to proactively detect and address issues.Troubleshoot and resolve incidents affecting live environments, ensuring minimal downtime.Document root cause analyses and implement preventive measures to avoid recurrence.Code Reviews & Collaboration:Review and provide feedback on code submissions via pull requests to ensure code quality, maintainability, and adherence to team standards.Collaborate with fellow developers to identify improvements and share best practices.Participate in regular code walkthroughs and technical discussions.Help maintain a culture of continuous learning and code quality across the development team.Mentorship and Knowledge Sharing:Mentor junior developers and provide guidance on best practices for backend development.Conduct workshops or training sessions to upskill the team on emerging technologies and methodologies.Contribute to internal documentation and knowledge repositories. Required QualificationsBachelor’s degree in Computer Science, Software Engineering, or a related field (or equivalent experience).2.5+ years of professional experience in backend development using Node.js and frameworks like NestJS.Proven track record of working on large-scale, multi-client production environments.Expertise in relational databases, specifically MariaDB, including schema design, query optimization, and indexing.Strong understanding of microservices architecture, including inter-service communication, load balancing, and containerization.Proficient in Git workflows, including advanced branching strategies and conflict resolution.Familiarity with API testing tools like Postman, Bruno, or similar frameworks. Preferred SkillsExperience with containerization technologies like Docker and orchestration tools like Kubernetes.Knowledge of message brokers such as SQS, RabbitMQ or Redis for asynchronous processing.Familiarity with observability tools like Prometheus, Grafana, or ELK Stack for monitoring and logging.Demonstrated ability to apply programming principles like SOLID, IoC, and DRY in real-world projects.

Job Application Tips

  • Tailor your resume to highlight relevant experience for this position
  • Write a compelling cover letter that addresses the specific requirements
  • Research the company culture and values before applying
  • Prepare examples of your work that demonstrate your skills
  • Follow up on your application after a reasonable time period

You May Also Be Interested In