Software Engineer, Systems - Notifications (Boulder)
Who We Are:
Notifications team plays a central role in driving Twitter’s mission of keeping users informed about the world. We do so by notifying users about what’s happening in their world in real-time at Twitter’s scale.
A few things that set us apart:
- We are a product and a platform team rolled into one. We own & build systems that process massive volumes of data (including Twitter Firehose), serve some of the most called APIs at Twitter, and deliver several billions of Notifications to our four primary Notification channels (Email, Push, SMS, and Notifications Timeline)
- Our work is highly impactful, we drive a ton of key metrics for the company (think DAUs, MAUs & various key engagement metrics). We do so with a strong customer focus
- We are very much experiment driven and have several experiments in flight at any point of time
- We believe in team-centric development and working in collaboration. We love hanging out together whether it's for a brainstorming session or lunch or coffee
What You’ll Do:
As a software engineer at Twitter, you will help us build, scale and maintain user facing products, large scale systems, services, and tools all of which have a direct impact on the lives of our users (external & internal) and the success of our business.
Who You Are:
- You enjoy building, improving, and retrofitting massively scaled software systems
- You develop elegant solutions to complex problems
- You have a strong sense of ownership, and a curiosity to understand how things work, even if they take you outside your area of expertise
- You know at least one functional or object oriented programming language (preferably Scala or Java), feel equally comfortable with SQL and noSQL data storage systems, and are always interested in learning more
- Extensive experience with backend infrastructure, distributed systems, and/or large-scale data processing (the likes of Kafka, Storm, Redis, Spark, and Cassandra)
- Experience with standard software engineering methodology (e.g. unit testing, code reviews, design documentation).
- BS, MS, or PhD in Computer Science or equivalent work experience
Desired (not required):
- Experience with Hadoop or other MapReduce-based architectures
- Experience designing fault-tolerant distributed systems in a service-oriented architecture
- 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, ethnicity, color, ancestry, national origin, religion, sex, sexual orientation, gender identity, age, disability, veteran, 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.
Engineering Hiring Process
Once your application is received, a recruiter will reach out pending your qualifications are a match for the role.
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.
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.
We're the People Team at Twitter. We Tweet about who we're hiring, what we're doing, and why you should work at Twitter! #LoveWhereYouWork
We're your one stop shop for anything University related. That means campus outreach, student advice/tips, & of course, our University Recruiting efforts!