Job Responsibilities:
- Software Development:
- Write clean, efficient, and maintainable Python code.
- Develop back-end components and connect applications with third-party web services.
- Application Design:
- Design and implement high-availability and performant applications.
- Create reusable, testable, and efficient code.
- Database Management:
- Develop and manage database schemas and queries.
- Ensure the optimal performance and reliability of databases.
- API Development:
- Develop and integrate RESTful APIs.
- Ensure seamless communication between front-end and back-end systems.
- Testing and debugging:
- Conduct thorough testing (unit, integration, and system tests) to identify and fix bugs.
- Debug and resolve application issues.
- Documentation:
- Document development processes, code, and APIs.
- Create technical specifications and user manuals.
- Collaboration:
- Work closely with front-end developers, designers, and other team members.
- Participate in code reviews and team meetings.
- Performance Optimisation:
- Identify bottlenecks and improve application performance.
- Implement security and data protection measures.
- Continuous Improvement:
- Stay updated with the latest Python frameworks and libraries.
- Implement best practices in coding and software development.
- Deployment and Maintenance:
- Deploy applications in production environments.
- Monitor and maintain applications post-deployment.
Required Skills:
- Proficiency in Python and related frameworks (e.g., Django, Flask).
- Strong understanding of object-oriented programming.
- Experience with front-end technologies (HTML, CSS, and JavaScript) is a plus.
- Knowledge of databases (SQL, PostgreSQL, MySQL).
- Familiarity with version control systems (Git).
- Understanding of RESTful APIs and web services.
- Excellent problem-solving skills and attention to detail.
- Ability to work collaboratively in a team environment.