Job Description
We are looking for a highly skilled Python Backend Developer to join our team. In this role, you will be responsible for developing and maintaining the server-side logic for web and mobile applications. You will collaborate with cross-functional teams to create efficient, scalable, and secure systems.
Key Responsibilities:
- Backend Development: Develop, maintain, and optimize server-side logic and APIs using Python. Design robust, scalable, and efficient backend systems. Strong experience with designing JSON schemas, CI/CD, DevOps, Docker containers and Kubernetes.
- Database Management: Create and manage databases, including designing schemas, writing queries, and optimizing performance. Familiarity with MongoDB, PostgreSQL, and ORM (Object Relational Mapper) libraries is essential.
- Architecture Design: Design and develop complex, modular, scalable architectures. Worked with complex architectures that support multiple APIs (e.g. REST, GQL, WebSockets) as well as async task and event processing frameworks.
· API Integration: Design, develop, and integrate customized APIs with strong experience creating APIs from scratch. Integrate third-party APIs and services.
· Cloud Services: Strong experience with AWS cloud services, CloudWatch, Lambda, API Gateway, S3, EC2, SES, SQS, SNS, and RDS.
- Microservices: Design, implement, and maintain microservices to improve modularity and scalability of the applications.
- Security: Implement security best practices to ensure data privacy and protection.
- Performance Optimization: Identify performance bottlenecks and improve application responsiveness through code optimization, caching, and load balancing.
- Testing and Debugging: Write unit tests and conduct thorough testing to identify and fix bugs and issues. Ensure the reliability and stability of backend services.
- Version Control: Use Git to manage the codebase, track changes, and collaborate effectively with team members.
- Documentation: Maintain clear and up-to-date documentation for code, APIs, and technical processes to aid teamwork and future development.
- Code Review: Participate in code reviews to maintain high coding standards and quality.
Requirements:
- Proficiency in Python and its frameworks (e.g., Django, Flask).
- Strong knowledge of database systems, including both MongoDB and PostgreSQL.
- Knowledge of Go, or Node.js is a plus
- Understanding microservices architecture and designing scalable microservices.
- Experience working in an Agile or Scrum development environment.
- Strong problem-solving and debugging skills.
- Excellent communication and teamwork skills.