Who We Are:
Our engineering teams are responsible for monetizing the services and infrastructure that connect hundreds of millions of active Twitter users to real-time information about what’s relevant in their lives and the world we live in. We work on some of the world’s largest distributed systems — our core infrastructure receives hundreds of millions of tweets per day and serves tens of billions of API requests, all with an uptime in excess of 99.9%. Our advertising systems operate at a similarly staggering scale: we serve over 2+ billion search queries per day, render hundreds of millions of ad impressions, process hundreds of terabytes of log and interaction data daily to drive billions in bottom-line revenue.
Within Core Advertising, we are a fairly small team filled with mostly senior-level engineers and are responsible for high-availability systems that impact all $2B+ of our revenue. We provide advertisers with a variety of funding sources, such as credit cards, insertion orders, credit lines, and others to enable flexible ways of funding advertising campaigns.
We then build scalable and reliable ads spend computation pipelines that efficiently process every single cent generated by Twitter Ads products funded by the very instruments we enable — making our data the source of truth for the ads revenue numbers.
Additionally, we’re in charge of the billing & payments related advertiser experience at ads.twitter.com and invalid engagements detection and processing (traffic quality), ultimately ensuring that advertisers get accurately charged.
With the exponential growth of Twitter’s revenue and explosion of Ads products offerings, we constantly think of scaling our systems to handle orders of magnitude more data in a reliable and compliant way while providing elegant user experience. In doing so we remain to be one of the most full stack teams at Twitter working with Java, Scala, Hadoop / Scalding, Ruby on Rails, and front-end technologies (HTML, CSS, JS).
What You’ll Do:
- Billing — our goal is to ensure our architecture is horizontally scalable and can reliably handle ever growing amounts of data we need to process. In addition to scaling everything out, you will also help us make sure our system can “absorb” billing events from future acquisitions and be able to process them accordingly. Our vision is to have a generic billing event processing infrastructure that can support all of Twitter’s monetization efforts.
- Payments — you’ll help us build reliable and secure payment systems that allow our customers to choose from a variety of payment methods enabling Twitter to rollout ads globally with market-specific needs. We integrate with third-party payment providers to enable flexibility to our internal and external customers to support various business scenarios.
- Billing and Payments advertiser experience (AdEx) — you will help us provide intuitive and proactive UI’s to the advertisers to enable frictionless experience. Advertisers will rely on our UX to make important campaign funding decisions, and obtain crucial details about transactions and spend in general.
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.
- Full-stack development experience with a solid foundation in backend infrastructure, distributed systems, performance analysis, search infrastructure and/or large-scale data processing
- Experience with software engineering practices (e.g. unit testing, code reviews, design documentation)
- Strong algorithms and data structures background
- BS, MS, or PhD in Computer Science or equivalent work experience
- Experience designing fault-tolerant distributed systems
- Experience with ad serving systems
- Ability to design and implement efficient algorithms for crawling, indexing, searching, and ranking documents
- Experience with Hadoop or other MapReduce-based architectures
- Experience with Cassandra, Redis, Memcached or MySQL
- Contributions to the open-source community
To apply for this job please visit the following URL: https://about.twitter.com/careers/positions?id=a0Dj00000057UQnEAM&location=San Francisco →