Software Engineer – GraphQL


Who We Are

From our lovely London office, our diverse team builds products used by hundreds of millions of people every month. London is critical to Twitter's mission, and you'll find a range of teams here, all creating some important part of Twitter's future. We spend a lot of time together as an engineering team, sharing lunch or a coffee, listening to and learning from one another. We challenge and support each other to do great work every day.

What You’ll Do

You'll join a new product infrastructure team trying to radically improve the way Twitter clients get their data. Day-to-day you'll be designing, building, and maintaining the Twitter GraphQL service, working to onboard new clients, and adding support for new kinds of data, as well as prototyping tools that support our the engineers building the core Twitter product.

Twitter GraphQL is already serving tens of millions of queries every day, and that's just the start.

You'll write user-friendly guides and documentation to make it easy for client and server engineers to start using GraphQL, and spend time with client teams to identify where GraphQL can be most valuable.

Your work will make our apps much more data-efficient, helping Twitter reach countries with developing telecommunications networks, and allow client engineers to build high-quality products, fast.

At Twitter you can have a truly global impact.

Who You Are

You'll have:

  • Experience working on a native or web application, so you understand the complexities and requirements of client-side software engineers

  • Built and maintained high-performance, scalable systems

  • Worked in a self-directed way, helped plan an engineering roadmap and delivered it over multiple quarters

  • Great communication skills, with a desire to work closely with internal customers to understand their needs and solve their problems

Rockstars and ninjas need not apply. We keep ego out of our work!

We are all working hard to build a diverse, inclusive workplace. You can find our more about what we're doing in Twitter's latest diversity report, and expect that Twitter will support you through flexible work hours, family-inclusive company events, vacation time, mentoring and training opportunities, parental leave, and more.


What We'll Look For

When assessing at your application, we'll look for some of the following. These aren't qualifications, but they'll all help.

  • Experience in API & service architecture design

  • Understanding of CS concepts such as common data structures and algorithms

  • Solid understanding of the client/server technology stack (HTTP, REST, compression, serialization)

  • An interest in GraphQL or related technology

  • Experience with Scala, Java, Clojure or other server-side technology

  • Work on microservices in production

  • Great written communication

  • Data-informed product development using analytics, A/B testing, etc

  • Open source contributions

  • A history of client engineering — native or web — or work directly with client engineers

  • Experience with a variety of testing and quality assurance techniques

  • Given talks at meetups or conferences

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.


By applying you expressly make the following representations and warranties and give your consents as described below:
Twitter, Inc. collects your personal data for the purposes of managing Twitter, Inc.’s recruitment related activities as well as for organizational planning purposes globally. Consequently, Twitter, Inc. may use your personal data in relation to the evaluation and selection of applicants including for example setting up and conducting interviews and tests, evaluating and assessing the results thereto and as is otherwise needed in the recruitment processes including the final recruitment. 
Twitter, Inc. does not disclose your personal data to unauthorized third parties. However, as a global corporation consisting of multiple affiliated companies in various countries, Twitter, Inc. has international sites and Twitter, Inc. uses resources located throughout the world. Twitter, Inc. may from time to time also use third parties to act on Twitter, Inc.’s behalf. You agree to the fact that to the extent necessary your personal data may be transferred and/or disclosed to any company within Twitter, Inc. group of companies as well as to third parties acting on Twitter, Inc.’s behalf, including also transfers to servers and databases outside the country where you provided Twitter, Inc. with your personal data. Such transfers may include for example transfers and/or disclosures outside the European Economic Area and in the United States of America.

Personal Information

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

Twitter does not accept and 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.

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.