Production Engineering is a hybrid software/systems group that ensures Facebook’s services run smoothly and have the capacity for future growth. Production Engineers work with all of Facebook’s other product and infrastructure teams, sometimes embedded in those teams. Managing a Production Engineering team requires a comprehensive understanding of a wide range of technologies, a focus on growing and developing the skills and talents of your team, and a relentless drive to focus on high-value projects and to prioritize ruthlessly.

Responsibilities

Desired Skills and Experience

  • Manage engineers working with the engineering teams on our back-end services like our Hadoop data warehouses, front-end services like Chat and News Feed, infrastructure components like our Memcache infrastructure, and everything in between. Some engineers may be ‘embedded’ within these teams
  • Understand technical architectures, capacity plans, tooling needs, automation plans, product launch plans, and other issues and create comprehensive plans for prioritizing technical and resourcing challenges
  • Partner with product management, program management, network engineering, site reliability operations, and other related groups
  • Help engineers develop their careers, assigning them to projects tailored to their skill levels, long-term skill development, personalities, and work styles
  • Work closely with dedicated recruiting staff to expand the team, including sourcing candidates, interviewing candidates, participating in conferences/events, and onboarding new employees
  • Balance the need to “keep things running” with allocating time to long-term, high-impact projects
  • Assess employee performance frequently, address under-performance, and recognize and promote excellent performance
  • BS or MS in Computer Science, Engineering, or a related technical discipline or equivalent experience
  • At least 4 years of direct management experience in a technology company OR extensive experience as a technical lead and formal project management or business training
  • Previous experience with hiring and performance management, including working with under-performers
  • Knowledge of UNIX and TCP/IP network fundamentals
  • Ability to code in at least one language (even if it is not one that Facebook uses)
  • Ability to learn new software languages, frameworks and APIs
  • Troubleshooting skills
  • Ability to perform ‘guerrilla capacity planning’ for internet service architectures
  • Knowledge of large-scale Internet service architectures (such as load balancing, LAMP, CDN’s), even if you haven’t worked on one
  • Familiarity with common applications such as Apache, memcached, Squid, MySQL, NFS, DHCP, NTP, SSH, DNS, and SNMP
  • Communications skills
  • Detail oriented