Senior Software Engineer - Core Infrastructure Provisioning Automation (CIPA)
Who We Are
Twitter is looking for a Software Engineer to join our Core Infrastructure Provisioning Automation (CIPA) team. Our team builds, owns, and operates services providing bare metal provisioning, lifecycle management, and related services to internal Infrastructure customers across Twitter Platform.
Our mission is to enable service owners at Twitter to build and more importantly manage large clusters safely, securely and expertly by providing a platform of provisioning automation to reduce toil for our customers.
Our current initiative is to extend the Twitter Platform provisioning services into the public cloud, as well as implement more robust support to our on premises solutions and integrate these into a more holistic system that is operationally mature, distributed, and easy for Twitter engineers to leverage to their advantage. You will work with the Twitter Platform teams to understand their lifecycle management requirements and build unique software solutions to solve these problems.
What You'll Do
- You will design and develop new automation solutions to infrastructure engineering problems
- You will help drive standardization efforts across multiple disciplines
- You will partner with teams from across the organization to help tackle hard problems
- You will ensure the reliability of the existing provisioning systems to guarantee uptime and availability of core provisioning services.
- You will tackle issues across the entire stack: hardware, software, network and application
- You will be called upon to perform analysis, troubleshooting, and introspection on core infrastructure components
- This is not an operations position - CIPA is dedicated to building automated solutions that enable self-service and self-support for Twitter’s internal customers.
Who You Are
- 5+ years with an expert understanding of Linux systems and services
- You understand and have a strong interest in systems and application design
- You have the knowledge of various aspects of service design: including messaging protocols & behavior, caching strategies and software design practices
- Advanced knowledge of Python and/or Scala to be able to build, write, and support complex services
- Solid foundation in data structures, algorithms and complexity analysis
- You are able to prioritize tasks and work independently
- You can adapt and focus on the simplest, most efficient & reliable solutions
- You have excellent written communication, interpersonal communication, and documentation skills
- B.S. in computer science or similar field or equivalent experience.
- Functional knowledge of bootstrapping tools like PXE or cloud-init that enable effective hardware lifecycle management
- Experience with configuration management tools: Puppet, Chef, or Ansible
- Public Cloud experience with AWS, GCP, or Rackspace
- Experience with infrastructure as code tools such as Terraform
- Locations outside the SF/Bay Area: Boulder, CO; Seattle, WA; or New York, NY
Come Join Us
Do you enjoy working with customers to identify problems and proposing solutions to fix them both in the short-term and long-term?
Are you able to hold a standard high for code and architecture quality while balancing the need to interact with existing systems, to ship and to iterate?
If you like working in an independent environment where you get to define requirements, work directly with other teams, and drive projects from conception to completion and long-term ownership, come join our team.
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.
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.
Be part of what's happening. Follow us for a feed full of company, culture, diversity + hiring. Plus, find out how to #JoinTheFlock so you can #LoveWhereYouWork
We're your one stop shop for anything University related. That means campus outreach, student advice/tips, & of course, our University Recruiting efforts!