Key Responsibilities:
1. Design and Development: Lead the design and development of web
applications using Python and Flask, ensuring code quality, scalability, and
performance.
2. Architecture: Collaborate with the architecture team to design and implement
robust, maintainable, and scalable software solutions.
3. API Development: Develop RESTful APIs using Flask to support front-end
applications and external integrations.
4. Database Management: Design and optimize database schemas, write efficient
SQL queries, and work with databases like PostgreSQL, MySQL, or NoSQL
solutions.
5. Testing and Debugging: Write unit tests and perform code reviews to maintain
code quality. Debug and resolve complex issues as they arise.
6. Security: Implement security best practices, including data encryption,
authentication, and authorization mechanisms.
7. Performance Optimization: Identify and address performance bottlenecks in
the application, making improvements for speed and efficiency.
8. Documentation: Maintain clear and comprehensive documentation for code,
APIs, and development processes.
9. Collaboration: Collaborate with cross-functional teams, including front-end
developers, product managers, and QA engineers, to deliver high-quality
software.
10. Mentorship: Provide guidance and mentorship to junior developers, sharing your
knowledge and best practices.
Qualifications:
Bachelor's or Master's degree in Computer Science, Engineering, or a related
field.
Proven experience (4-5 years) as a Python developer, with a strong emphasis on
Flask.
Solid understanding of web development principles, RESTful APIs, and best
practices.
Proficiency in database design and SQL, as well as experience with database
systems like PostgreSQL or MySQL.
Familiarity with front-end technologies (HTML, CSS, JavaScript) and related
frameworks is a plus.
Strong problem-solving skills and the ability to work in a fast-paced, collaborative
environment.
Excellent communication skills and the ability to work effectively in a team.
Knowledge of containerization and deployment tools (e.g., Docker, Kubernetes)
is a plus.