Expert in Python, with knowledge of at least one Python web framework such as Django, Flask, etc depending on your technology stack.
Familiarity with some ORM (Object Relational Mapper) libraries.
Able to integrate multiple data sources and databases into one system.
Understanding of the threading limitations of Python, and multi-process architecture.
Good understanding of server-side templating languages such as Jinja 2, Mako, etc depending on your technology stack.
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 of 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.
Work collaboratively with the design team to understand end-user requirements to provide technical solutions and for the implementation of new software features.
Knowledge of application deployment process and server set-up.
Responsibilities
Writing reusable, testable, and efficient code.
Design and implementation of low-latency, high-availability, and performant applications.
Integration of user-facing elements developed by front-end developers with server-side logic.