Senior Software Engineer - Application Backend


March 9, 2021

Seattle, WA, US

Company Description

DICE (Dynamic Instrumentation, Configuration, and Events) is looking for an outstanding engineer to work on Twitter’s client configuration system that controls the exposure of new features and products to end users. This team also plays a key role in how Twitter instruments A/B experimentation and gathers product data for analysis. The team owns high throughput APIs that both control feature behavior and observe their effects, across all Twitter products (including mobile and web), as well as an internal developer platform for product engineers at Twitter. DICE provides a way to survey Twitter users to improve our product.

Some of our current projects:

  • Developing Twitter’s client configuration service. This includes a lightning fast rules engine that evaluates over 10K rules per request. Algorithmic complexity meets massive scale.

  • Defining and building a configuration web tool that allows graphical editing, testing and reviewing of complex rules. Enables engineers across Twitter to confidently introduce and manage production configurations.

  • Working on Twitter’s client events pipeline which currently handles millions of requests per second from all Twitter owned and operated mobile (Android, IOS, etc.) clients and web.

  • Building an in-app survey solution that enables Twitter users to share feedback in order to improve the public conversation.

Job Description

  • You’ll be part of a small team working on high-impact and challenging services, tools and libraries.

  • You’ll be driving the technical design and implementation of our in-app survey product. This means working with Product Management and User Research to define and build a survey experience on the Twitter platform.

  • You’ll be responsible for writing technical design documents, performing code reviews and leading projects with one or two supporting engineers.

  • You’ll be responsible for adding criteria and features to the rules engine that supports the configurations.

  • You’ll help with internal tools designed to help other engineers configure, test and validate product feature configuration settings.

  • You’ll develop a strong understanding of Twitter’s data ingestion system and help with innovations of the existing system.

  • You’ll answer questions and support all engineers at Twitter who use our services via Slack.

  • You will be responsible for on-call duties as part of the team rotation.


  • Minimum of 5+ years of professional work experience in software development.

  • Minimum of 2+ years being a technical lead for a product/application, writing technical design documents, supervising others, and being responsible for working with Product Management and customers.

  • Experience leading or mentoring engineering teams.

  • Experience working on backend services in one/any of these languages: Scala, Javascript, Java, C#, golang, or any functional programming language, or equivalent.

  • Education in computer science or a related field, or equivalent work experience.

  • Strong software engineering best practices (e.g. unit testing, code reviews, design documentation).

  • Experience being on a team on-call rotation.

  • Great sense of humor and ability to build team spirit. Strong emoji/gif game a plus.

Additional Information

Who You Are:

You are excited to join Twitter! #OneTeam
You’re proficient in picking up new programming languages and technologies across the stack.
You enjoy hunting down bugs and brainstorming with other engineers to solve problems.
You are passionate about building configuration products that are intuitive to use.
You have strong communication skills, can work independently and don’t mind spending some time on video chat since our team is geographically distributed.
Applicants with strong experience beyond these basic qualifications may be considered for this role at Senior or Staff Software Engineer level.
All your information will be kept confidential according to EEO guidelines.