- Design, document, and implement new systems and enhancements and modifications of existing software that meet customer requirements.
- Define and implement software architecture, ensuring that solutions are scalable, maintainable, and secure.
- Collaborate with cross-functional teams, including developers, product managers, and stakeholders, to define and prioritise software requirements.
- Develop technical specifications and lead the implementation of software systems, including working with development teams to ensure they are following the architecture and design patterns.
- Stay current with industry trends and emerging technologies and make recommendations on incorporating them into the software solutions.
- Mentor and train junior developers to help them grow their skills and advance their careers.
Requirements
- 10+ years of strong experience in full-stack software product development, with a strong focus on Software architecture and design.
- Strong knowledge of software design patterns, architecture principles, and methodologies such as Agile.
- Good command over NodeJs and its internals is expected.
- Experience in RESTful web services/ APIs using ExpressJS.
- Experience with server-side technologies as well - Python, Node.js, Docker, Kubernetes, Git, etc.
- Positive command of cloud infrastructure: AWS (preferred), MS Azure, or Google Cloud.
- Experience working with Product Managers and UX Designers.