Senior Python Developer

ASCENDING
Summary
Join our dynamic software development team as a Senior Python Developer! This pivotal role encompasses all phases of the software development lifecycle, from designing and developing high-performance applications to mentoring junior developers. You will lead the design and implementation of scalable Python-based web applications, integrate with third-party services, and collaborate with front-end developers. Responsibilities include optimizing back-end components, ensuring efficient data processing, and writing clean, well-tested code. You will also conduct code reviews, debug complex issues, and contribute to improving coding methods and software architectures. This position requires a Master's degree or equivalent experience and at least 5 years of backend development experience.
Requirements
- Master's degree in Computer Science, Engineering, or a related field, or equivalent practical experience
- Minimum of 5 years of proven experience as a Backend Engineer, Backend Developer, or similar role, with a strong track record of designing and implementing complex backend systems
- Proficiency in Python programming, with in-depth experience using frameworks such as Django, Flask, or CherryPy
- Solid understanding and practical experience with server-side development frameworks (e.g., Django, Flask, Express)
- Demonstrated experience with modular software design, integration of component applications, and back-end database design
- Experience with relational databases (e.g., MySQL, PostgreSQL) and NoSQL databases (e.g., MongoDB), including database design, querying, and optimization
- Strong understanding of RESTful APIs, microservices architecture, and asynchronous messaging patterns (e.g., RabbitMQ, Kafka)
- Familiarity with front-end technologies such as JavaScript, HTML5, and CSS3 to facilitate effective collaboration with front-end teams
- Proven experience in Agile development methodologies (e.g., Scrum, Kanban)
Responsibilities
- Lead the design, development, and implementation of scalable, high-performance, and low-latency Python-based web applications
- Develop and optimize back-end components, ensuring efficient data processing and robust application functionality
- Integrate applications with various third-party web services and APIs, ensuring seamless data flow and functionality
- Collaborate closely with UX/UI designers and front-end developers to effectively integrate user-facing elements with server-side logic
- Design and implement modular software, optimize database schemas (relational and NoSQL), and integrate diverse component applications for a cohesive, high-performance system
- Write clean, well-tested, readable, and maintainable Python code following best practices and design patterns
- Conduct comprehensive code reviews, providing constructive feedback and guidance to junior developers to ensure code quality and knowledge sharing
- Debug and troubleshoot complex application issues to ensure high availability and minimal latency
- Contribute to the continuous improvement of coding methods, software architectures, and test automation strategies
- Actively participate in Agile ceremonies (Scrum, Kanban) within a fast-paced development environment
Preferred Qualifications
- Contributions to open-source projects or active participation in developer communities
- Familiarity with cloud platforms and services (e.g., AWS, Azure, Google Cloud) and containerization technologies (e.g., Docker, Kubernetes)