Full Stack Developer
We are seeking an experienced Full Stack Developer to lead the design, development and maintenance of complex Python applications.
The ideal candidate will have a deep understanding of web technology, constraints, UI/UX and the ability to choose the best architecture decision.
* Design, develop and maintain scalable applications using frontend and backend technologies.
* Collaborate with stakeholders to define technical requirements and deliverables.
* Write clean, efficient and self-documented code.
* Implement automation tests and participate in code reviews.
* Monitor application performance and provide optimization recommendations.
* Stay up-to-date with the latest technologies and industry trends.
This role requires strong problem-solving skills, excellent communication and collaboration skills, as well as a proactive approach to continuous technological improvement.
Key Responsibilities:
1. Design and Development: Lead the design, development and maintenance of complex Python applications.
2. Collaboration: Collaborate with product management and other stakeholders to define technical requirements and deliverables.
3. Code Quality: Write clean, efficient, and self-documented code.
4. Testing: Implement automation tests.
5. Performance Monitoring: Monitor application performance and provide optimization recommendations.
6. Tech Knowledge: Stay up to date with the latest technologies and industry trends.
Requirements:
* 5+ years of experience developing scalable applications using both frontend and backend technologies.
* 5+ years of experience with Python.
* 3+ years of experience with React, including State Management libraries like MobX, redux.
* Extensive hands-on experience with MongoDB and MySQL at an expert level.
* Deep expertise in message queues, especially RabbitMQ, for building scalable, message-driven systems.
* Experience both with AWS and Azure.
* Ability to understand the pros and cons of different architecture decisions and choose the best option.
* Experience scaling services to millions of users.
Responsibilities include but not limited to:
1. Lead the design, development and maintenance of complex Python applications.
2. Collaborate with product management and other stakeholders to define technical requirements and deliverables.
3. Write clean, efficient and self-documented code.
4. Implement automation tests.
5. Participate in code reviews to ensure code quality and maintainability.
6. Monitor application performance and provide optimization recommendations.
7. Stay up to date with the latest technologies and industry trends.