Software Engineer - Machine Learning Platform - Cortex

New York, NY

Who we Are:

Cortex empowers internal teams to efficiently leverage ML by providing a platform and by unifying, educating, and advancing the state of the art in ML technologies within Twitter.

We win when our customers win by helping our users stay informed, share and discuss what matters; by serving the public conversation. We’re building an AI-first company and every major initiative is increasingly dependent on the successful application of machine learning. Cortex is at the nexus of this evolution.

Our team of ML software engineers is constructing one of the strongest machine learning platforms in the world, based on the latest ML industry practices, deep learning, engineering excellence, powered by Twitter data at scale.

Twitter operates some of the highest traffic Deep Learning systems in the industry. Training algorithms routinely process terabytes of data; prediction services make millions of inferences per second. Twitter's real time nature demands latencies in the double digit millisecond range. We provide frameworks and tools for model-building, distributed training, prediction and evaluation systems that meet such stringent demands. We leverage open source solutions like tensorflow and extend them for our business needs. This is a challenging and exciting area, with a unique opportunity to create advanced technologies in uncharted territories while having a large impact.

Current projects include:

- Deepbird, with Tensorflow at the core

- Framework for large scale distributed and online training of deep learning models

- Inference engine for serving 10s of millions of prediction requests

- Framework to analyze trained models

- Performance optimization of model training and serving pipelines using low level software and hardware primitives 

- Custom extensions to Tensorflow e.g Implement recent research techniques to reduce training times

What You'll Do: 

If this sounds like a team you want to be part of, great! We are looking for engineers who love writing code, have a desire to learn new technologies, thrive on teamwork and are committed to serving their customers.

Come join us in building a deeplearning framework for twitter's real time needs

Who You Are:

- You have a passion for machine learning.

- You thrive on working in concert with other smart people, including from distributed offices.

- You communicate fluidly, at the level of your audience, and seek to understand and being understood.

- You have the ability to take on complex problems, learn quickly, iterate, and persist towards a good solution.

- You are adamant about studying customer needs and enabling their success through our products.

- You take pride in polishing and supporting our products.

- You welcome feedback on are constantly looking for ways to improve yourself.

- You thrive on building frameworks and tools for developers.

- You focus deeply on making API’s easy to use without compromising performance.

- You constantly strive to reduce the latencies and runtime cost.

- You can provide thought leadership in ML infrastructure and best practices to the team and company at large. 


- Masters or PhD in a Computer Science or Machine Learning related degree; or equivalent work experience in the field.

- 4+ Years experience writing production grade software.

- Familiarity with Tensorflow internals.

- Experience with Machine Learning and/or Deep Learning.

- Experience with low-level programming (C, C++, Vectorization) and related tools (e.g. Valgrind).

- Experience writing and operating large scale distributed systems.

Nice to Have:

- Experience with CUDA (GPU) programming.

- Experience with DL frameworks like Pytorch, Theano.

We are committed to an inclusive and diverse Twitter. Twitter is an equal opportunity employer. We do not discriminate based on race, color, ethnicity, ancestry, national origin, religion, sex, gender, gender identity, gender expression, sexual orientation, age, disability, veteran status, genetic information, marital status or any legally protected status.

Engineering Hiring Process

Step 1

Once your application is received, a recruiter will reach out pending your qualifications are a match for the role.

Step 2

If your background is a match, you may have 1-2 technical phone interviews or be given the chance to provide a work sample depending on the role.

Step 3

If the phone interviews go well or your work sample is strong, the final step includes interviews with 5-6 people held onsite in our office.


Personal Information

Required field. PDFs only; max file size is 1MB.
Required field. PDFs only; max file size is 1MB.

U.S.  Equal Employment Opportunity Information  (Completion is Voluntary)

At Twitter, we have a bold aspiration to reach every person on the planet. We believe that goal is more attainable with a team that understands and represents different cultures and backgrounds and we are committed to an inclusive and diverse Twitter.

This is where you come in! Please take a few minutes to provide us with your information. You are not required to provide this information and you may select “Decline to Disclose”. Your decision to provide information (or not) will not affect your employment or opportunities at Twitter.

Twitter is an equal opportunity employer. We do not discriminate based on race, color, ethnicity, ancestry, national origin, religion, sex, gender, gender identity, gender expression, sexual orientation, age, disability, veteran status, genetic information, marital status or any legally protected status.

You can view the ‘EEO is the Law’ poster here.

Twitter does not accept any unsolicited resumes from recruiting agencies and will not pay fees associated with any such resumes. Agencies, please do not send resumes to any Twitter location, employee, or email address.

Twitter, Inc. is committed to working with and providing access and reasonable accommodations to applicants with physical or mental disabilities. If you need an accommodation in order to apply for open job opportunities, please submit a description of your accommodation request to This email is only for accommodation requests related to the application process.

Twitter cares about your privacy and protecting your data.  Please click the privacy policy link and acknowledge you have read and understood how Twitter treats your privacy and your data.  

Would you like to receive email communication from Twitter about career opportunities? You may unsubscribe at any time.
Applicant Data - You have a choice. Can we keep your personal data for both the job you are applying for and any other Twitter jobs that we feel you may be a match for? If you choose yes we will retain your personal data for a period of twelve months to consider you for other job opportunities at Twitter.
Analytics - May we use personal data from your resume and application to analyze and improve the Twitter hiring experience.
Thanks for applying!
Submission failed. Please make sure all fields are correctly formatted.