Sr. Software Engineer - Recommendations Platform at Twitter
San Francisco, CA, US

Recos Platform team builds recommendations infrastructures such as candidate generation and feature generation engines for product service areas. The unrivaled challenges that we face at Twitter are both the data scale and the real-time nature of the product. How do you find the most meaningful content among hundreds of millions of new tweets for hundreds of millions of users every day at Twitter? We build large scale personalized recommendation engines utilizing different kinds of signals such as social network, user activity, and geo location. Most of our work is about graph algorithms, recommendation systems, machine learning, distributed systems, and social graph analysis.

What You’ll Do:

You are focusing on the heavy software engineering required for building large-scale Machine Learning applications. This includes ML platform engineering, where you are building ML platform products for your customers. More specifically, you are doing the following kind of Machine Learning and Software Engineering work:

    In the role, you are employing a basic understanding of one or more of: Information Retrieval, Recommendation Systems, Social Network Analysis, Natural Language Processing, Deep Learning, Computer Vision, Reinforcement Learning.
    You regularly verify the performance & correctness of the implementations of ML techniques. You are able to triage and fix bugs/issues when they arise.
    You will design & implement ML platforms/libraries/services to enable customers with applying ML.

Who you are:

We’re looking for a Machine Learning Software Engineer with a strong background in Software Engineering and familiar with Machine Learning techniques.

    You have an understanding of the Machine Learning domain to the extent that you are often implementing standard algorithms/techniques.
    You consider the pros/cons of different techniques/implementations in terms of system performance vs. model quality.
    You regularly architect systems taking care of a large amount of data, scale, and low latency. You employ advanced SWE skills in terms of system architecture & design, distributed systems, coding, OO/API, testing.

Requirements:

BS, MS or PhD in Computer Science with 5+ years experience or equivalent experience.