Software Engineer - Instrumentation & Configuration (DICE)

Seattle, WA

Software Engineer - Instrumentation & Configuration (DICE)

Seattle, WA/San Francisco, CA

Who We Are:

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.


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. Big-O IRL!
  • Building our next generation experimentation platform for targeting users to receive new feature capabilities and UI. Twitter uses experimentation to drive product enhancements and determine which features create a positive impact.
  • Defining and building a newer configuration tool set to allow graphical editing of complex rule sets. Enables engineers across Twitter to confidently introduce and manage  production configurations.
  • Improving 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.


What You’ll Do:

You’ll be part of a small team working on high-impact and challenging services, tools and libraries.  The dynamic configuration system makes the product more flexible, dependable and simple to use. 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.


Who You Are:

You are passionate about Twitter!

You’re proficient in picking up new languages and technologies across the stack.

You enjoy hunting down bugs and brainstorming with other engineers to solve problems.

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.

Requirements

  • Experience working on backend services in one/any of these languages: Scala, Java, C/C++/C#, golang, or any functional programming language, or equivalent.
  • BS, MS, or PhD in computer science or a related field, or equivalent work experience.
  • Strong software engineering best practices (e.g. unit testing, code reviews, design documentation).



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.

Application

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.

U.S. Equal Opportunity Employment 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 RARequest-Recruiting@twitter.com. 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.  

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.
Success
Thanks for applying!
Error
Submission failed. Please make sure all fields are correctly formatted.

Don't see the right fit?

Check out other opportunities at Twitter.