Company description

Twitter Search is the search engine for Twitter: it’s the place to find the most relevant and engaging content for any topic or interest. We build products on top of a super realtime pipeline that processes nearly one trillion tweets from the whole of Twitter’s history, organises the world’s conversation as it happens, and personalises it to each individual user’s needs and context. We connect users to the most relevant people and conversations around their interests. We need your help building this exciting product!

Job description

Who We Are

We are a distributed and collaborative team building the platform underlying the real-time Twitter search engine and working across areas such as machine learning, applied data science, recommendation systems, information retrieval systems, natural language processing, large graph analysis, anti-spam and anti-abuse. Search as a problem space is broad and deep: it requires finding, personalising and organising relevant many types of content, it requires the ability to derive user intent from a few words types into a textbox, it involves building new features to allow users to filter and find the best content. This team builds a platform that enables all that to happen. We work across distributed systems problems, ML problems, as well as UX problems. We build performant and fault-tolerant systems, and we do it in close collaboration with specialist partner teams.


What you will do

  • Participate and set standards within the engineering life-cycle at Twitter, designing, reviewing and implementing components, pipelines and algorithms related to machine learning or information retrieval.
  • Collect, clean up, and analyse data to draw insights and formulate ideas, working alongside data scientists and machine learning specialists.
  • Write code and tests for production services, offline jobs, and internal tools, and mentor more junior engineers in creating a well-crafted code base
  • Work in a data-driven, hypothesis oriented manner, conducting offline and online experiments and evaluating their results.
  • Deploy and maintain production services, and participate in on-call rotations, while finding ways to minimize the ongoing effort required to operate these services.

Who You Are

You are someone who is great at collaboration and thrives in a team environment. You enjoy giving and receiving feedback. You prize the opportunity to learn from some of the best engineers in the space, and you simultaneously love being able to give back and mentor others. You want to make a difference, at scale, on one of the most impactful consumer products in the world.


  • a strong grasp of CS fundamentals, data structures, and common algorithms.
  • a deep sense of what well crafted, maintainable code looks like, and the ability to teach that to others
  • working knowledge of at least one OOP or functional language such as Java or Scala. Knowledge of a scripting language, like Python, is a plus.
  • experience with distributed systems and parallel computing.
  • past experience with search and information retrieval a strong plus

Additional information

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 via a video conference call.