Software Engineer, Systems - Discovery

San Francisco, CA

Who We Are:

Twitter's Discovery teams are dedicated to getting the majority of the world to converse in public using Twitter. We are comprised of many teams across the company, including Product, Engineering, Design, and Data Science. These teams are responsible for understanding the entire user lifecycle, with the goal of helping users discover the value of Twitter, and ultimately paving the way for user acquisition and top line growth.

This mission is to instantly connect people with the conversations and audiences most meaningful to them. Realizing this goal involves work in areas such as machine learning, applied data science, recommendation systems, and information retrieval systems.

Do you want to make a huge impact while working with large data sets at scale? If so, a Growth team is a good fit for you! These high-impact teams value creativity, critical thinking, and teamwork. The Growth teams are hiring Software Engineers in the following areas:

Onboarding - Focused on creating immersive and engaging product experiences with the goal of quickly learning what users are interested in.

Notifications Tab - Building the Command Center of Twitter. Users come here to catch up on what requires their most attention and find content to interact with.

A few things that set us apart:

  • We are a product and a platform team rolled into one. We own & build systems that process massive volumes of data (including Twitter Firehose), serve some of the most called APIs at Twitter, and deliver several billions of Notifications to our four primary Notification channels (Email, Push, SMS, and Notifications Timeline)
  • Our work is highly impactful, we drive a ton of key metrics for the company (think DAUs, MAUs & various key engagement metrics). We do so with a strong customer focus
  • We are very much experiment driven and have several experiments in flight at any point of time
  • We believe in team-centric development and working in collaboration. We love hanging out together whether it's for a brainstorming session or lunch or coffee

What You’ll Do:

As a software engineer at Twitter, you will help us build, scale and maintain user facing products, large scale systems, services, and tools all of which have a direct impact on the lives of our users (external & internal) and the success of our business.

Who You Are:

  • You will build and maintain high-performance, distributed, scalable systems
  • You will improve the reliability and efficiency of Twitter's core systems
  • You have a strong sense of ownership, and a curiosity to understand how things work, even if they take you outside your area of expertise
  • You know at least one functional or object oriented programming language (preferably Scala or Java), feel equally comfortable with SQL and noSQL data storage systems, and are always interested in learning more 


  • Experience with backend infrastructure, distributed systems, and/or large-scale data processing (the likes of Kafka, Storm, Redis, Spark, and Cassandra)
  • Experience with standard software engineering methodology (e.g. unit testing, code reviews, design documentation).
  • BS, MS, or PhD in Computer Science or equivalent work experience

Desired (not required):

  • Experience with Hadoop or other MapReduce-based architectures
  • Experience designing fault-tolerant distributed systems in a service-oriented architecture
  • Contributions to the open-source community

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


San Francisco applicants: Pursuant to the San Francisco Fair Chance Ordinance, we will consider for employment qualified applicants with arrest and conviction records.

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  (Disclosure is voluntary. If you do not wish to disclose, please select "Withold/Decline to Disclose")

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.

Don't see the right fit?

Check out other opportunities at Twitter.