Software Engineer - Twitter Cloud Infrastructure
From the team who built and deployed Twitter's first-ever compatible datacenter in AWS and GCP, our new mission is to provide the next generation of data analytics and data understanding at Twitter. Using the data from our advertising platform as our starting point, our goal is to make answering complex questions at Twitter as easy as asking them. We're going to start by taking the massive data sets we collect every day (along with all its history) and making everything fully queryable and searchable in seconds! And we're also going to build all the tools necessary to highlight issues well before they ever get a chance to turn into real problems for the business.
In our previous project, we learned that we could build technology that would effectively offload pager and infrastructure maintenance duties to the cloud, which gave our engineers more time to focus on building new solutions versus maintaining existing ones. Given the enormity of the task we face, we need you to help us design and implement the tools and services that will make it easier for Twitter to make more data-driven decisions than ever before!
What You'll Do:
This team has taken on a new role in Revenue Insights, so everything is brand new for us. So, here is a sampling of past projects we've completed:
- Twitter Cloud Data Center (TCDC) - Created a replica of Twitter's data centers in both Amazon Web Services (AWS) and Google Cloud Platform (GCP). This allowed any Twitter service to run in the Cloud to support dynamic machine allocation and regional deployments.
- Kafka-Mesos (https://github.com/mesos/kafka/) - Recently migrated Kafka to run on our Mesos cluster for easier management. Quickly became the most active committer to the project and took over ownership.
- Data Center Manager (dcm) - A tool embracing “data centers as configuration”. It allows us to bring up an entire production-ready TCDC region in hours.
- Query Service - Empower users to query data consistently from wherever it lives. We recognize that that customers will put their data in the places and tools that services them best and this will allow others to access data consistently regardless of where it's located.
- Query Cache - Using Google's DataFlow and Beam, we will be aggregating BigQuery data in BigTable so that customers and clients will experience blazing speed when investigating their metrics.
- Automatic Alerting - Will allow users to select the metrics that are important to them and display those metrics in dashboards when unusual trends occur.
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 dedication 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 high expectations will kindle your passion and bring out the best in you!
In particular, we are an experienced team of senior engineers that work across batch, streaming, and serving systems to deliver solutions to a diverse set of problems here at Twitter. We move quickly and we expect to make an impact. If this describes your approach to writing software, apply to join us!
Who You Are:
- Industry experience working in a distributed computing environment.
- A strong passion for building tools and systems that enable other developers on your team to build great things.
- Proven strengths in algorithms, complex data structures, and dynamic programming.
- Previous experience with cloud server environments such as Amazon Web Services (AWS) and/or Google Cloud Platform (GCP).
- Good understanding of continuous integration and a strong drive toward automation.
- Good understanding of multi-threading, scaling, concurrency, caching, queuing, RPC, and distributed data storage.
- Ability to thrive in a dynamic, fast-paced, collaborative, and high-growth environment.
- Strong attention to detail.
- Experience administering production systems (preferably Linux) and a general awareness of DevOps best practices.
- Experience with the Lambda architecture and different ways of implementing it.
- Contributed / committed to a well-known open source project and/or interest in doing so in the future.
- Demonstrated ability to excel in whatever you pursue (whether it's work, school, competitions, open source contributions, personal projects, etc. you've always stood out and succeeded).
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
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!