Lead Software Engineer (Python/Django)
Islamabad
Engineering – Backend /
Full-time
/ Hybrid
We are looking for a Python/Django Web Developer responsible for managing the interchange of data between the server and the users. Your primary focus will be the development of all server-side logic, ensuring high performance and responsiveness to requests from the front-end.
Requirements
- Expert in Python and Django: 6+ 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
Responsibilities
- Technical Leadership: Provide technical expertise and guidance to the development team, lead code reviews, and set coding standards to ensure the team delivers high-quality, maintainable, and scalable solutions.
- Architecture and Design: Design and implement robust, efficient, and scalable software architectures using Python and Django, taking into consideration system performance, security, and maintainability.
- Code Development: Hands-on coding and development of complex features or modules using Python and Django framework. Write clean, reusable, and efficient code, and ensure the team follows best practices and coding standards.
- Team Collaboration: Foster a collaborative and productive work environment, encouraging effective communication, knowledge sharing, and teamwork within the development team and cross-functional teams.
- Technical Problem Solving: Proactively identify and address technical challenges, troubleshoot issues, and provide solutions to ensure smooth project progress.
- Code Reviews and Quality Assurance: Conduct thorough code reviews to maintain code quality and ensure compliance with coding standards and best practices. Implement automated testing and continuous integration processes to improve code quality.
- Mentoring and Coaching: Provide mentorship and guidance to junior developers, aiding their technical growth and professional development.
- Performance Optimization: Optimize the performance of applications and databases, identifying bottlenecks and implementing solutions to enhance speed and efficiency.
- Security: Ensure that software and systems are developed with security best practices in mind, protecting against potential vulnerabilities and threats.
- Documentation: Create and maintain comprehensive technical documentation, including architecture designs, API documentation, and system diagrams.
- Stay Updated with Technology: Keep abreast of the latest advancements and trends in Python, Django, and related technologies, and advocate for their adoption when relevant.
- Collaborate with Product Managers: Work closely with product managers and stakeholders to understand business requirements, provide technical insights, and contribute to product roadmap planning.
- Code Refactoring and Maintenance: Continuously improve existing codebases through refactoring and optimization to enhance maintainability and adaptability.
- Performance Evaluation: Participate in performance evaluations and performance management processes for team members.
What We Offer
· Consulting environment with a hyper-growth company
· Multi-cultural environment
· An opportunity to solve complex business challenges and problems for large corporations
· International Exposure and Experience.
· Competitive salary and benefits
· Paid holidays and vacations
· Medical OPD & Health Insurance
· Fuel Allowance
· Employee Life Insurance
· GYM/Health Club Fee Reimbursement
· Mobile & Internet Allowance
· Opportunities to make a difference in a highly productive environment