We are seeking a highly skilled and experienced Senior Python Developer to join our dynamic team. The ideal candidate will have a strong background in designing, developing, and deploying robust and scalable Python applications. You will be responsible for leading complex projects, mentoring junior developers, and contributing to architectural decisions.This role requires a deep understanding of Python best practices, excellent problem-solving skills, and a passion for building high-quality software.
Key Responsibilities Development And Architecture
- Design, develop, and maintain high-performance, scalable, and secure Python applications.
- Lead the development of complex features and modules, ensuring adherence to architectural
best practices.
- Contribute to architectural discussions and decisions, providing technical leadership and guidance.
- Implement and optimize microservices architecture.
- Provide technical expertise in the selection and implementation of appropriate technologies and frameworks.
API Development And Integration
- Design and implement RESTful or GraphQL APIs for seamless integration with frontend and
other backend systems.
- Integrate with third-party APIs and services.
- Ensure API security and Management :
- Design and implement database schemas (SQL and NoSQL) to support application requirements.
- Write efficient SQL queries and optimize database performance.
- Integrate applications with various database systems (e.g., PostgreSQL, MySQL, MongoDB, Optimization and Troubleshooting :
- Identify and resolve performance bottlenecks and latency issues.
- Debug and troubleshoot complex Python systems.
- Conduct thorough performance testing and optimization.
- Implement robust monitoring and logging solutions.
Collaboration And Mentorship
- Collaborate with product managers, designers, and other developers to define andimplement
software solutions.
- Mentor and guide junior developers, providing technical guidance and support.
- Participate in code reviews, providing constructive feedback and ensuring code quality.
- Contribute to technical documentation and knowledge sharing.
Software Development Lifecycle
- Participate in agile development processes, including sprint planning, daily stand-ups, and retrospectives.
- Ensure proper documentation and maintain software development standards.
- Stay updated with the latest Python technologies and industry trends.
Deployment And DevOps
- Deploy and maintain applications on cloud platforms (e.g., AWS, Azure, GCP).
- Implement CI/CD pipelines for automated testing and deployment.
- Work with containerization technologies (Docker, Kubernetes).
Required Technical Skills Proficiency
- Extensive experience in Python 3.
- Strong understanding of Python design patterns and best practices.
- Experience with asynchronous programming (e.g., asyncio).
Backend Frameworks
- Proficiency in at least one Python web framework (e.g., Django, Flask, FastAPI).
API Development
- Strong understanding of RESTful or GraphQL API design principles and best practices.
- Experience with API documentation tools (e.g., Swagger, OpenAPI).
Databases
- Proficiency in SQL and NoSQL databases.
- Experience with database ORMs (e.g., SQLAlchemy, Django ORM).
Cloud Platforms
- Experience with cloud platforms such as AWS, Azure, or GCP.
- Experience with deploying and managing Python applications in cloud environments.
Version Control
- Proficiency in Git version control.
Testing
- Experience with unit testing, integration testing, and end-to-end testing.
- Proficiency in testing frameworks such as pytest or unittest.
DevOps
- Familiarity with CI/CD pipelines and tools (e.g., Jenkins, GitLab CI).
- Experience with containerization technologies (e.g., Docker, Skills :
- Experience with message queues (e.g., RabbitMQ, Kafka).
- Knowledge of serverless architecture.
- Experience with caching mechanisms (e.g., Redis, Memcached).
- Experience with performance monitoring and profiling tools.
- Knowledge of security best practices for Python applications.
- Experience with data science libraries (e.g., NumPy, Pandas).
Soft Skills
- Strong problem-solving and analytical skills.
- Excellent communication and interpersonal skills.
- Ability to work independently and as part of a team.
- Strong leadership and mentoring abilities.
- Ability to learn and adapt to new technologies.
- Strong attention to detail and a commitment to quality.
Education :
Bachelors or Masters degree in Computer Science, Engineering, or a related field(ref:hirist.tech)