Software Engineer - CIM/PE
Who We Are:
We provide the services and APIs that allow Twitter’s engineers to manage the servers that run their services like any other resource. Our systems manage over 100,000 servers in multiple datacenters, providing simple, reliable REST APIs to handle maintenance, tracking, and provisioning of the servers that underpin Twitter’s infrastructure.
What You’ll Do:
We’ve got three main goals for you. First, you’ll help us improve the performance and reliability of our current systems by profiling, discovering hot spots, and identifying the failure modes of our current suite of services and their caches and backends. Second, you’ll design and build new services to extend our system and help us grow Twitter’s infrastructure. Finally, you’ll help us define and build the next generation of server management at Twitter.
Why we need you:
Our team has already built a great system for managing servers. We’ve allowed Twitter to nearly double the size of its physical fleet in a short period, and we’ve helped the company build a flexible infrastructure to handle large events without a hiccup. We’re taking on some big challenges for our next steps, though, and we need people with the skills and knowledge to help us expand our system correctly. We also want to make sure that our existing systems can scale to meet the demand, and we can keep providing a reliable platform for Twitter. Ultimately, we’re looking for smart, talented people with a solid background in CS and distributed systems principles to round out our team and help us build the best platform we can.
What you’ll learn here:
A lot of people call themselves “full stack” engineers without ever knowing how deep that stack actually goes. Our team touches everything from server hardware to large-scale distributed systems. You’ll learn what happens when a raid controller fails; how to reliably automate and configure physical servers; how to design, build, and deploy python microservices; and how to build elegant distributed systems to gracefully handle chaotic processes. Other developers run their services "in the cloud," you'll learn how to build the cloud.
What’s in our stack:
We're fans of solid, well-tested systems. The bulk of our services are Python microservices using Tornado. We also have some Django, some Go, and a bit of Bash. We use Redis and MySQL for storage, and we run on CentOS.
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.
Twitter Recruiting: All the deets about who we're hiring, what we're doing and why you should come and work here! #lovewhereyouwork
We're your one stop shop for anything University related. That means campus outreach, student advice/tips, & of course, our University Recruiting efforts!