Lead Python/Django Engineer
NorthBay Solutions
- Lahore, Punjab
- Permanent
- Full-time
- Expert in Python and Django/Flask: 7+ years’ experience of Python coding skills, 4+ years of hands-on experience with Django and Django REST framework
- Microservices/web services delivery using OAUTH2
- API gateway and queues experience is a must
- Experienced with some ORM (Object Relational Mapper) libraries specifically Django ORM
- Solid database skills in a relational database (i.e., MySQL, PostgreSQL, MariaDB, etc.
- Able to create database schemas that represent and support business processes.
- Optimizing database / query performance.
- Strong unit test and debugging skills.
- Knowledge of user authentication and authorization between multiple systems, servers, and environments.
- Understanding of the threading limitations of Python, and multi-process architecture, and building and using RESTful APIs.
- Extensive knowledge of modern Python packages and libs.
- Knowledge about container technology, mainly Docker.
- Understanding of fundamental design principles behind a scalable application.
- Proficient understanding of code versioning tools (i.e git/github, bitbucket etc).
- Experience delivering with an agile methodology.
- Basic understanding of front-end technologies, such as JavaScript, HTML5, and CSS3.
- Amazon Web Services (AWS) infrastructure knowledge is an added advantage.
- A strong portfolio to showcase a variety of problem solving solutions
- Develop and maintain robust, scalable Python/Django applications.
- Design and implement microservices and web services using OAuth2 for authentication.
- Utilize API gateways and queues for efficient communication between services.
- Work with ORM libraries, particularly Django ORM, for database operations.
- Create database schemas that align with business processes and optimize database/query performance.
- Develop and maintain unit tests to ensure code quality and reliability.
- Implement user authentication and authorization mechanisms across multiple systems and environments.
- Leverage threading and multi-process architecture for efficient application performance.
- Stay updated on modern Python packages and libraries to enhance application functionality.
- Utilize container technology, primarily Docker, for application deployment and management.
- Implement scalable application design principles to support business growth.
- Collaborate with version control tools like Git/GitHub, Bitbucket for code management.
- Work within an Agile development methodology to deliver features iteratively.
- Possess a basic understanding of front-end technologies (JavaScript, HTML5, CSS3).
- AWS infrastructure knowledge is preferred, though not mandatory.
- Showcase problem-solving skills through a strong portfolio of past projects.