Technology - Python Developer


Responsibilities

  • Understand the business requirements/use-cases and convert them into technical requirements

  • Analyze both the business and technical requirements for a software program and develop design solutions and task specifications to meet those needs

  • Design and implement scalable, maintainable, well documented and high-quality solutions to solve business requirements

  • Write unit tests with complete code coverage. Perform dev testing to ensure minimal bug slippages to QA

  • Work closely with other team members, project managers and stakeholders to ensure that all requirements are met and work as per specification

  • A willingness to learn new technology, whatever lets you deliver the best product

  • Provide support for UAT activities as well as production support including fixing any defects

  • Ability to build a feature from scratch & drive it to completion

  • Mentor new as well as junior team members in the team

Technical skills for Python:

  • Expert in Python, with knowledge of at least one Python web framework such as Django

  • Must have knowledge of Django rest framework

  • Best practices of API design, development and security of API.

  • Solid database skills in a relational database (i.e. PostgreSQL, MySQL, PL/pgSQL etc.

  • Knowledge of database caching

  • Able to integrate multiple data sources and databases into one system

  • Good understanding of Microservice Architecture.

  • Understanding the threading limitations of Python, and multi-process architecture

  • Good understanding of server-side templating languages

  • Basic understanding of front-end technologies, such as JavaScript, HTML5, and CSS3

  • Understanding of accessibility and security compliance

  • Knowledge of user authentication and authorization between multiple systems, servers, and environments

  • Understanding of fundamental design principles behind a scalable application

  • Familiarity with event-driven programming in Python

  • Understanding the differences between multiple delivery platforms, such as mobile vs desktop, and optimizing output to match the specific platform

  • Able to create database schemas that represent and support business processes

  • Strong unit test and debugging skills

  • Proficient understanding of code versioning tools

  • Experience in Machine Learning and Artificial Intelligence is another Great Plus!!


Previous
Previous

Technology - Senior UI/UX Designer

Next
Next

Technology - React.js Developer