Software Engineer - Compute Platform

  • Full-time

Company Description

Twitter is what’s happening and what people are talking about right now. For us, life's not about a job, it's about purpose. We believe real change starts with conversation. Here, your voice matters. Come as you are and together we'll do what's right (not what's easy) to serve the public conversation.

Job Description

Who We Are

We are the Compute Platform team, responsible for providing Twitter Engineering with an approachable, productive, and reliable compute platform. Our infrastructure powers most of the services behind Twitter.com, Twitter’s revenue-generating businesses, and a variety of internal infrastructure. Twitter’s 1,000+ engineers use our compute platform to launch and operate their services on a fleet of over 100,000 physical and virtual machines.

The Compute Platform team’s primary focus is on the systems and tooling that sit between the Kubernetes API and Twitter Engineers. Our systems drive deploys, workload scheduling, bin packing, and auto scaling across clusters that are in our data centers and the public cloud.

As a Senior Software Engineer on the Compute Platform team, you’ll:

  • Build the tooling and processes that Twitter engineers use to develop, deploy, and operate their services.

  • Be an active participant in our systems design and review processes.

  • Scope out, participate in, and lead cross-functional projects.

  • Optimize Kubernetes and our own systems on clusters in the thousands of nodes.

  • Develop our team through mentorship and knowledge sharing.

  • Participate in the wider Kubernetes/CNCF open source community.

  • Influence the Compute Platform team’s roadmap based on feedback from our internal customers.

Who you are

  • You draw motivation from building systems that help others be more productive.

  • You are curious and driven to understand the needs of your customers.

  • You are an engaged and thoughtful collaborator, ready to solve challenging problems with your peers and our customers.

  • Simplicity and approachability are top of mind concerns when designing systems and tooling.

  • Quality and reliability are key pillars in your software engineering philosophy. 

  • You see mentorship and knowledge transfer as essential prerequisites for a healthy team.

Qualifications

  • BA/BSc degree in Computer Science or equivalent practical experience.

  • Strong development skills in at least one programming language.

  • Hands-on experience designing, developing, operating, and debugging distributed systems.

  • 4+ years of experience in Infrastructure or Backend development.

Nice to Have:

While not required, experience with any of the following is a plus!

  • Production experience with Go, Python, Java, or C++.

  • Experience developing, operating, and debugging high traffic production systems.

  • Experience building applications against the Kubernetes API.

  • Familiarity with Kubernetes internals (architecture and/or codebase).

  • Prior contributions to projects within the CNCF community.

  • Experience with other container-centric orchestration systems (Mesos, Nomad, etc).

  • Experience working with physical infrastructure (bare metal in data centers).

  • Experience working with public cloud providers (AWS, GCP, Azure, etc).

  • Familiarity with Linux or similar operating systems.

Additional Information

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

Privacy Policy