Senior Backend Engineer, Pipelines at DataRobot
DataRobot accelerates the process of building predictive models to get the most out of valuable data. We work hard to create tools that nascent data scientists can use effectively while also exposing the rich detail and control that data science veterans rely on. Our headquarters is in Boston, with development offices in Kyiv, Lviv, Minsk, Munich, Copenhagen and Singapore.
As a Python Backend Engineer on our team, you will accelerate the process of engineering features to get the most out of multiple data sources and data types. The people you will work with own the entire feature learning experience for DataRobot, and is responsible for making sure our feature discovery automation and resulting models are the best in the world.
You will build out Data Management and ETL system inside DataRobot utilizing distributed frameworks such as Spark, Hadoop and Kubernetes. You will build scalable solutions to process high data volumes, with the main focus on crafting robust components for data intake, cleanup and full variety of data transformation. You will also be responsible for designing and implementing features from start to finish, including clean and easy to use APIs, automated tests, and deployment infrastructure.
The ideal candidate can bring new ideas from concept to implementation, write quality, testable code, and participate in design/development discussions.
- Develop, test, and support features of DataRobot
- Explore, integrate, and maintain cloud-based machine learning infrastructure tooling
- Create and maintain automated unit tests and functional tests
- Plan capacity, manage application performance
- Manage individual projects and milestones with abundant communication of progress
- Seek, give, and receive critical feedback in a constructive manner, including but not limited to code review
- 4+ years development experience in Python
- Demonstrable knowledge of computer science fundamentals, whether by degree or otherwise
- Linux proficiency
- System/performance engineering (profiling process memory/cpu/io/network usage, system calls, flame graphs)
- Personal drive to get things finished
- Effective communication behavior
Candidates can distinguish themselves with the following criteria:
- 8+ years development experience
- Publicly reviewable contributions to interesting development projects
- Experience supporting user-facing code and APIs
- Experience working with major cloud providers (AWS, Google Cloud, Azure)
- Experience/understanding resource management services workflow (Kubernetes, Hadoop/Yarn, Mesos or any other)