AltaML - Intermediate / Senior Python Developer

Company Introduction

AltaML combines expertise in machine learning, product development, and digital marketing with capital to create a launchpad for transformative ideas within industry verticals. Data informs our every move, and we aim to work quickly, collaboratively and creatively. We also have fun. We believe in working hard, getting the job done and enjoying a beer on Fridays. You’ll also get flexibility in where you work, what hours you work, how much vacation you take, and what you wear. We expect hard work but respect work/life balance.

Job Description

We are looking for a Python 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. You will also be responsible for integrating the front-end elements built by your co-workers into the application; therefore, a basic understanding of front-end technologies is necessary as well.

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

  • Implementation of security and data protection

  • Integration of data storage solutions (Sql Server, Postgres)

Skills And Qualifications

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

  • Familiarity with some ORM (Object Relational Mapper) libraries

  • Familiarity with creating RESTFUL services using a framework

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

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

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

  • 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 (GIT)