Senior Software Engineer - Ad Serving Platform

San Francisco, CA

Who we are:

The Ads Serving team builds the most critical systems and infrastructure in our whole business that’s directly responsible for our multi-billion dollar revenue stream. More can be found here: https://blog.twitter.com/2016/resilient-ad-serving-at-twitter-scale

Context, responsibilities, and challenges:

Twitter is synonymous with staggering scale. Hundreds of millions of users use our service every single day, generating huge amounts of traffic, often in an unpredictable manner. Advertisers seize these opportunities and react quickly to reach their target audience in real time, resulting in demand surges in the marketplace. In the midst of such variability, Twitter’s ad server — our revenue engine — performs ad matching, scoring, and ad serving at an immense scale.

We face a set of daunting challenges: Process tens of billions of ad requests, serve billions of ads both on- and off-Twitter with tight latency constraints, be highly available (four-nines+), be resilient to massive query spikes, reliably deliver the highest quality ads possible for every query, and do all of this at minimal cost (optimal resource utilization). Our ad serving engine is built to take on these challenges.

In addition, we also build systems that process ad spend information in real-time. The “live-spend pipeline”, which works hand-in-hand with serving, is also a massively scalable system that processes impressions, clicks and engagements using real time stream processing technologies, and provides data to the serving, billing, and advertiser-analytics systems.

In order to achieve all this, we use state of the art open-source and proprietary technologies, and build some of the world’s largest and most complex distributed systems. If you are passionate about building such world-class systems, we invite you to join our team!

What you’ll do:

  • Build the world’s best ad server: The ad server is composed internally of several core “tier-1” services (services with strict SLAs around high availability). You will play a direct role in architecting, designing, developing and operationalizing these high performance, scalable, reliable and resilient services. In doing so, you will interact with several subsystems and sister teams such as our Prediction, Targeting, Data Infrastructure, User Modeling, Marketplace, Billing, and Ad Formats teams. Ads is serious business, and ad serving is a highly complex space. This role will stretch your capabilities, and challenge you to come up with the best, most effective engineering architecture to address the complex demands of the business.

  • Build a world-class live-spend pipeline: You will be exposed to the best in streaming compute technologies as you help build and evolve our live-spend pipeline. The ads we serve result in a massive stream of user-driven engagements (impressions, clicks) flowing back at us, and the responsibility of processing these engagements, applying the right traffic-quality and click-fraud filters, and ensuring the accuracy of the raw data used for serving, billing, and analytics lies with the live-spend pipeline.

  • Help craft Twitter’s revenue roadmap and shepherd critical projects: Since we are the delivery engine for all our ads, we play a central role in the Revenue organization. In this role, you will work very closely with the rest of Revenue in crafting and prioritizing our roadmap, and shepherding projects that are critical to our company’s revenue strategy.

What else can you expect:

We believe that people are our strongest asset, and take special interest in each and every one of our engineers. You can expect a real investment in your professional growth, and a commitment to crafting a strong, sustainable career for you. Our teams are composed of highly talented and passionate 'A' players, and you’ll get the mentorship and coaching you deserve to hone your skills and expertise. Our vibrant culture and work environment will kindle your passion and bring out the best in you!

Who You Are:

You're someone with a lot of potential who is constantly looking for real engineering challenges to tackle and hard problems to solve. You want to own significant projects while working in small teams of highly-talented, passionate engineers. The prospect of getting to work with an open-source tech stack that powers a solution people around the world love to use, and where massive volumes of data are extracted in real time excites you. You want to be mentored by amazing engineers; you want to see continued investment in you by the business; and you expect excellence in everything. You see your future self as a force multiplier (and not just a great technical resource for an employer). You see challenge as opportunity and you're looking to jump ahead of the pack in your career. You're applying to this role because you're hoping for a chance to jump in and see what you can do to make a difference in an iconic software company.

Requirements:

  • Strong CS fundamentals: algorithms, data structures, design patterns, etc.
  • Backend development experience with a solid foundation in fault-tolerant and resilient distributed systems, concepts of asynchronous programming, concurrency, performance analysis, and/or large-scale data processing
  • Direct experience building systems with online components to them (i.e., they serve requests to users)
  • A solid grasp on good software engineering practices (e.g. thorough code reviews, deep focus on quality, design documentation)
  • Great communication skills
  • BS, MS, or PhD in computer science or a related field, or equivalent work experience

For bonus points, you would have:

  • Experience with Storm or other Streaming Compute based technologies
  • Experience with Cassandra, Redis, Memcached or MySQL
  • Experience with Hadoop or other MapReduce-based architectures
  • Contributions to the open-source community

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.

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 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. 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.

This is where you come in! Please take a few minutes to provide us with your information. Completing this form is entirely voluntary. Whatever your decision, there will be no adverse employment consequences.

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.

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.