We are seeking a highly skilled Senior Software Developer with extensive experience in software development and a strong emphasis on Node.JS. The ideal candidate will be responsible for designing, developing, and maintaining scalable applications while collaborating with cross functional teams to deliver high quality software solutions. This role requires a deep understanding of Node.JS and its ecosystem, along with a passion for coding and problem solving.
Responsibilities
- Design, develop, and maintain server side applications using Node.JS.
- Collaborate with front end developers to integrate user facing elements with server side logic.
- Write clean, maintainable, and efficient code while adhering to best practices.
- Participate in code reviews and provide constructive feedback to team members.
- Debug and troubleshoot application issues, ensuring optimal performance and responsiveness.
- Work closely with product managers and stakeholders to understand requirements and deliver solutions that meet business needs.
- Stay updated with emerging technologies and industry trends to continuously improve development processes.
- Mentor junior developers and contribute to team knowledge sharing.
Mandatory Skills
- Strong expertise in Node.JS and its frameworks (e.g., Express, Koa).
- Proficient in JavaScript and TypeScript.
- Experience with RESTful APIs and microservices architecture.
- Solid understanding of database technologies (e.g., MongoDB, PostgreSQL).
- Familiarity with version control systems, preferably Git.
- Experience with cloud platforms (e.g., AWS, Azure) is a plus.
Preferred Skills
- Knowledge of front end technologies (e.g., React, Angular, Vue.js).
- Experience with containerization and orchestration tools (e.g., Docker, Kubernetes).
- Understanding of CI/CD pipelines and DevOps practices.
- Familiarity with Agile methodologies and project management tools.
Qualifications
- Bachelor's degree in Computer Science, Software Engineering, or a related field.
- 7 10 years of professional experience in software development.
- Proven track record of delivering high quality software solutions on time.
- Strong analytical and problem solving skills.
- Excellent communication and teamwork abilities