JOB PURPOSE : We are looking for a capable and dynamic Python Engineer to lead the development of Python-related aspects. This individual will have the challenging responsibility of delivering, developing and maintaining the Python components of our products/services. This individual will leverage the latest technologies and best practices in this space to build a highly streamlined, user friendly, serviceable product which is easy to implement, use and maintain. The candidate should have experience with working with the latest python web frameworks and should have a very strong understanding of HTTP protocol and developing HTTP services. The Candidate should be strong with Object Oriented python and using Async features of Python. The Candidate should have experience with writing HTTP server and client based components. Experience with python based HTTP proxies will be a plus.
Education & Relevant Experience :
- B.E / B.Tech / M.E / M.Tech / MCA / M.Sc.IT (if not should be able to demonstrate required skills)
- 3 - 5 Years of Industry experience as Python Developer.
- Must have hands-on work experience in Python development using python 3.x. Should have excellent Object Oriented Python skills.
- Should have experience with using popular python libraries such as - re (regular expressions), HTTP Client and server libraries, UrlLib (HTTP Library), etc.
- Should also have experience in using popular Python Web frameworks such as Flask/aiohttp/Sanic.
- Should have a good hold of using async python.
- Experience with Python Test frameworks (unit & functional)
TechniclTechnical Knowledge & Skills
- Strong experience in developing Python software. Object Oriented Python software development skills is a must.
- Should be very comfortable with using Regular Expressions in Python for filtering and manipulating text.
- Good understanding of HTTP protocol. with firm hold of HTTP concepts such as sessions, cookies, HTTP headers etc is a must. Experience in using Python HTTP Libraries such as UrlLib/aiohttp/requests is a must. (Handling Cookies and Sessions)
- Good knowledge of Web frameworks such as Flask/aiohttp/Sanic
- Should have a strong knowledge of using Python with SQL servers (MySQL, PostGRESQL etc).
- Experience with working with exposing python software as REST/JSON API is a must.
- Should have working experience in writing async Python code
- Knowledge of web authentication schemes is a must (JWT authentication, OAuth, SAML, Session authentication)
- Should have a good understanding of security practices related to software development.
- Good understanding of python configuration management libraries
- Developing Python software with using Git-based workflow (or similar source code versioning software)
- Knowledge of writing Python unit and functional tests
- Nice to Have:
- Experience in Using Python for generating Reports (strong knowledge of writing SQL queries) is highly desirable
- Knowledge of web proxies and different types of proxies
- Experience in working with a team using Agile software development practices is highly desirable
- Experience with test-driven development (TDD) is highly desirable (unit and functional tests)
- Experience in using documentation tools during development is a bonus (Sphinx).
- Knowledge of working with “serverless” and cloud technology stacks is an added bonus
- Lead the development of python related software of our product/service offering (be responsible for planning, Architecting, developing, testing, troubleshooting and deploying of Python-based components of our software/service)
- Using Python Web frameworks to develop HTTP based server proxy related services
- Work with a team which uses multiple technologies and help move python components seamlessly into a “Dev-Ops” mode.
- Move Python development towards industry accepted standards (Agile software development, test-based development, documentation and continuous integration).
- Interact with stakeholders to determine requirements, discover solutions and troubleshoot problems