Netflix is one of the world’s leading entertainment services with 278 million paid memberships in over 190 countries enjoying TV series, films and games across a wide variety of genres and languages. Members can play, pause and resume watching as much as they want, anytime, anywhere, and can change their plans at any time.
The Role
Content Infrastructure & Solutions (CIS) empowers engineers working on content and studio applications to be innovative and agile in supporting our massive global content production needs. We do that by providing scalable and resilient infrastructure to address integrated large-scale media, assets, data, workflow, and communication use cases. Examples of this organization’s work include massive-scale media processing platforms (1, 2), workflows (conductor), and data processing at scale.
The Media Infrastructure Platform team (MIP) is part of a media-focused engineering group that provides highly available infrastructure for content production and processing, storage, and access, across all Netflix productions and licensed content. Infrastructure pieces like massive-scale media processing platforms (1, 2), and media storage infrastructure (1, 2) are key systems we build. All of this is custom-built on top of Amazon Web Services (AWS) infrastructure.
This team will 1) develop key portions of our media processing and media storage infrastructure in collaboration with the broader Media Infrastructure Platform team, and 2) own the development of operational tooling for the broader Content Infrastructure and Solutions organization.
You’ll have the unique opportunity to work both on developer-facing tooling as well as high scale distributed systems in the deep and interesting domain of media processing and storage at Netflix scale and to uplift Netflix’s operational tooling. In particular, we want to evolve our operational tooling to make contemporary concepts like SLO management a first-class concept, improve our infrastructure observability and offer self-service tooling for engineers at Netflix. While there has been some prior exploration in the operational tooling space, there is significant freedom to evolve this area from its current early state into a mature and thriving capability.
What we are looking forIn GeneralYou are self-motivated and can work independently, while also being able to partner closely with other engineers on a project. You are passionate about building quality products and want to own development end-to-end, leading with the right architecture, and following sound engineering principles to deliver maintainable, performant and highly developer-friendly experience. You are a problem solver and like to challenge yourself, but you are not afraid to reach out when you need help and enjoy helping other engineers.
Preferred QualificationsEven if you feel that you don’t feel that you fully meet these preferred qualifications, if you’re interested in the area or have had some exposure, we’d encourage you to reach out.
Experience working full stack (with a strong frontend skillset): You’re not afraid to work full stack, and have a solid frontend skill set. We typically use Java on the backend and Typescript/React + GraphQL on the frontend, but we understand that good engineers can work in many different languages and frameworks. As a full stack engineer you should be comfortable turning ideas into usable, useful user interfaces and implementing backend API endpoints and integrations. We understand that some full stack engineers lean more heavily.
Experience operating a production system: To effectively build operational tooling, you should know what it’s like to operate a service yourself. Likewise, the reliability of operational tooling needs to be incredibly high since these are tools that other engineers rely on to tell them if something is going wrong and to troubleshoot issues. Random frontend bugs or unreliable data can make it difficult for engineers using your tools to troubleshoot issues.
Experience building platforms, tooling or infrastructure for other engineers: Building services and tooling for other engineers to consume is a bit different than building line of business applications or standard microservices. A strong platform and infrastructure mindset, long term thinking, and the ability to understand what other engineers need will set you up for success in this role.
You have a passion for clean, well-tested performant code: This means you are dedicated to writing code that is not only functional but also maintainable and efficient. You understand the importance of comprehensive testing to ensure reliability and prevent future issues. You strive for optimal performance in your code, focusing on speed and resource efficiency. Your commitment to these principles helps create robust and scalable systems that other engineers can depend on and build upon with confidence.
Nice to haveExperience with storage or media processing domains.
Experience working with SLOs, SREs, and contemporary observability platforms. Even better if you have experience building an observability solution.
Experience developing build tooling or delivery automation
You’ve advocated for reliability and operational excellence in other roles
Experience building self-service infrastructure tooling (eg to provision new infrastructure or to manage access to infrastructure)
A good grasp of UX fundamentals (from an engineering perspective)
Experience building user interfaces for other engineers
Experience both collaborating with a designer and moving forward without direct designer support using component libraries or self-designed UI components.
We are an equal opportunity employer and celebrate diversity, recognizing that diversity of thought and background builds stronger teams. We approach diversity and inclusion seriously and thoughtfully. We do not discriminate on the basis of race, ethnicity, religion, color, place of birth, sex, gender identity or expression, sexual orientation, age, marital status, military service status or disability status.