Design, develop, and implement scalable and maintainable full-stack applications using a variety of technologies (JavaScript, ReactJS, NodeJS, MongoDB or other NoSQL databases, Python, etc.).
Collaborate with the Engineering Lead Analyst and other team members to translate business requirements into technical specifications and deliver high-quality solutions.
Implement and adhere to rigorous quality standards throughout the software development lifecycle, from initial concept to final implementation.
Write clean, well-documented, and efficient code, adhering to industry best practices.
Collaboration & Communication:
Participate actively in agile development processes, including daily stand-ups, sprint planning, and retrospectives.
Communicate effectively with team members and stakeholders, providing regular updates on progress and addressing any technical challenges.
Contribute to a positive and collaborative team environment by sharing knowledge and supporting colleagues.
Continuous Learning & Improvement:
Stay abreast of emerging technologies and industry best practices, particularly in areas such as automation, AI, and cloud computing.
Proactively identify opportunities for improvement within existing systems and processes.
Demonstrate a commitment to continuous learning and professional development.
Qualifications:
Technical Skills:
5+ years of proven experience as a Full Stack Developer.
Strong proficiency in JavaScript, including experience with ReactJS and NodeJS.
Experience with NoSQL databases, such as MongoDB.
Solid understanding of RESTful APIs and microservices architecture.
Familiarity with cloud native environments (Google Cloud, AWS) and API Gateway technologies is a plus.
Experience with CI/CD pipelines and DevOps practices is highly desirable.
Experience with Python and relevant libraries.
Knowledge of version control systems like Git.
Familiarity with agile development methodologies.
Soft Skills:
Excellent problem-solving and analytical skills.
Strong communication and interpersonal skills.
Ability to work independently and as part of a team.
Ability to manage multiple tasks and prioritize effectively.
Passion for technology and a desire to learn and grow.
Education:
Bachelor’s degree/University degree or equivalent experience