Sr. Software Engineer (Distributed Systems) - Product Insights and Experimentation


March 24, 2021

San Francisco, CA 94103, US

Company Description
At Twitter, we consider it our responsibility to foster a healthy global conversation, inclusive and open to everyone in the world who wants to join.
Job Description
Software Engineer (Distributed Systems) - Product Insights and Experimentation - San Francisco, CA. As a software engineer on the PIE team, you will build the infrastructure that allows for rapid, accurate and highly scaled experimentation. You'll work directly with numerous teams across the company to improve Twitter’s rate of innovation though a better understanding of our users.
Why it matters: The PIE team and our internal experimentation platform, Duck Duck Goose (DDG), are vital to driving rapid innovation at Twitter. Twitter runs hundreds of experiments every day to understand the causal impact of everything from UI changes to the deployment of new machine learning models. PIE makes this all possible!
What you’ll be doing:

  • Develop complex and highly scaled data processing pipelines in both batch and streaming contexts. Ship new features, improve reliability and correctness, and resolve performance bottlenecks.

  • Work with cutting-edge technology like Druid, Presto, Dataflow and BigQuery to power Twitter’s metrics and experimentation dashboards.

  • Participate in all phases of software development from architecture/design through implementation, testing, and on-call.

  • Work closely with Experimentation Data Science team to implement sophisticated statistical methodology into the platform/pipelines.

  • Drive “Experimentation Culture” at Twitter. Be a part of leveling up experimentation and causal inference culture at Twitter.


What it takes:

  • 6+ years in a hands-on engineering role, writing and shipping high quality production code, especially highly reliable and scalable distributed systems.

  • Experience with at least one of the following languages: Scala, Java, and/or any JVM based language.

  • Experience developing and debugging in a data-heavy environment (e.g. Hadoop, Spark).

  • Experience with software engineering standard methodologies (e.g. unit testing, code reviews, design documentation).

  • Bonus Points: Experience with one of the following: statistics and causal inference OR stream processing at scale (e.g. Beam/Flink/Storm) OR GCP and related tools.

Who we are: Twitter serves the public conversation by encouraging people all over the world to connect, learn, debate, and solve problems together. We believe conversation can change the world, and that’s why Tweeps (that’s what we call Twitter employees) come to work every day.
The PIE team is responsible for Twitter’s experimentation methodology and implementation as well as visualization and analysis tools that help teams understand user behavior. We work with product, engineering, data science, design and senior leadership to help increase our rate and our quality of innovation. The team employs a wide variety of open-source technologies including Hadoop, Presto, Scalding, Summingbird, just to name a few.
We are a tight-knit and encouraging group that values diversity and loves working together. We want to maintain and increase our diversity so whoever you are and wherever you come from, if you are an outstanding engineer we would be honored if you applied!
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 status, 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.