Lead Engineer - Python
Roles and Responsibilities
● Develop, update, and maintain new and existing applications, ensuring they meet specified requirements, scale efficiently, and maintain high performance.
● Analyze and interpret project requirements to independently design effective solutions while keeping the broader product architecture in mind.
● Design, develop, and deploy APIs and web services with a focus on reusable, testable, and efficient code.
● Implement low-latency, scalable applications with optimized performance.
● Create Docker files for containerization and deploy applications within a Kubernetes environment.
● Adapt quickly to a dynamic, start-up style environment, demonstrating strong problem-solving skills and a resourceful approach to driving results.
Qualifications Required
Skills and Experience Required
● Proficiency in Python: 8+ years of hands-on experience with Python, particularly with Fast API / Flask. Familiarity with other web frameworks like Django and web2py is beneficial.
● Web Development and API Design: Deep understanding of RESTful API design, as well as a working knowledge of HTTP, JSON, and other web protocols.
● Database Expertise: Experience with RDBMS databases (e.g., PostgreSQL, MySQL) and document-based databases (e.g., MongoDB). Skilled in database design, indexing, and optimizing queries.
● Design Patterns and Best Practices: Knowledge of fundamental design principles, including object-oriented programming (OOP) and design patterns, especially as they apply to Python.
● Containerization and Orchestration: Strong experience with Docker for containerization, and Kubernetes for deploying and managing containerized applications.
● Scalable Architecture Knowledge: Understanding of multi-process architecture, threading limitations of Python, and core principles behind building scalable and
maintainable applications.
● Unit Testing and Quality Assurance: Familiar with testing frameworks such as PyTest or UnitTest for building unit tests and ensuring code quality, as well as a TDD (Test-Driven Development) approach.
● Version Control: Proficiency with Git for source code management and collaborative development.
Preferred Skills:
● ETL Processes and Data Pipelines: Hands-on experience in building data pipelines
and workflows, using tools such as Apache Airflow or other ETL frameworks.
● Cloud Services: Experience working with cloud environments, especially AWS,
including knowledge of services like S3, EC2, and Lambda.
● Microservices Architecture: Familiarity with microservices design patterns and best
practices, as well as deployment in containerized environments.
● Continuous Integration/Continuous Deployment (CI/CD): Knowledge of CI/CD tools
such as Jenkins, GitLab CI, or GitHub Actions.
Why you'll love working with us:
● Opportunity to work on technical challenges with global impact.
● Vast opportunities for self-development, including online university access and sponsored certifications.
● Sponsored Tech Talks & Hackathons to foster innovation and learning.
● Generous benefits package including health insurance, retirement benefits, flexible work hours, and more.
● Supportive work environment with forums to explore passions beyond work.
● This role presents an exciting opportunity for a motivated individual to contribute to the development of cutting-edge solutions while advancing their career in a dynamic and collaborative environment.