Staff Software Engineer 6
Zapisz tę ofertę pracy i uporządkuj wyszukiwanie
Utwórz bezpłatne konto, aby zapisywać oferty pracy, tworzyć alerty i wracać do tego ogłoszenia ze swojego pulpitu nawigacyjnego.
Kontynuując, akceptujesz nasze Warunki & Politykę prywatności.
Netflix is one of the world's leading entertainment services, with over 300 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 Mission The Java Platform Team is moving from "best effort" support to a fully managed, curated "Paved Path" (our recommended, supported standard path) for Java at Netflix. Our Spring Boot based application framework is the most ergonomic choice for most Java development and remains at the center of that path. Some workloads, such as sidecars, and lightweight containers, batch/stream processing jobs, have tight limits on memory and startup time, and they still need the same Netflix platform capabilities. We make Spring Boot work well in a sidecar or lightweight container, with a leaner footprint and faster startup. We also create standalone, constructible Java libraries that give any Java process access to Netflix platform primitives such as configuration, observability, discovery, and networking. The same libraries work inside our Spring Boot framework and outside it, so there is one source of truth and updates reach every consumer.
The Role
As a Staff Engineer you set technical direction for this area of the Java Platform Team. You own the architecture of the library set, decide what belongs in it and what does not, and raise the bar for the engineers around you. You are hands‑on in code and design, and you make the hard calls on API shape, compatibility, and scope.
- Define the architecture of our lightweight library set.
- Design builder and constructor based APIs for core platform primitives.
- Decide how each component runs standalone, inside Spring Boot applications, and in a sidecar or light container, without duplicating logic across those modes.
- Fully support sidecars and light containers.
- Make Spring Boot applications run well in these environments, for example through minimal starters and trimmed runtimes.
- Set and defend footprint and startup budgets (small memory, fast startup, small disk footprint).
- Build benchmarking and regression checks that maintain those budgets across releases.
- Design the integration and regression testing that lets library changes reach consumers with high confidence and minimal disruption.
- Own interface stability. We commit to long-term support for anything we ship to GA. You set the versioning, compatibility, and side‑by‑side version strategy, and own the migration cost of any breaking change.
- Work closely with the wider Java Platform Team and partner teams. Make sure our lightweight libraries and the Spring Boot framework share the same underlying components, and help that framework become a better fit for more use cases, for example through minimal starters.
- Align with Compute, Service Mesh, and other platform teams on gRPC, metrics, and configuration standards for the polyglot Netflix ecosystem.
- Guide customers to the right path with focus on developer experience. Work with engineering teams and product managers to understand their needs, decide whether the answer is the Spring Boot framework, the lightweight libraries, or better guidance, and help them adopt it.
- Look for underserved use cases and work with customers to understand them.
- Lead through others. Mentor engineers, review designs, and write the memos and decision records that set direction.
- Help build the Warsaw hub into a team that owns its area independently.
Who You Are
Staff-level experience designing and owning shared libraries or platform components used by many teams, including managing the long-term impact of API decisions. Demonstrated experience in Java and distributed systems, with emphasis on scope, complexity, and impact. A technical leader without needing authority. You have led multi-team technical efforts, resolved disagreement between strong engineers, and made hard-to-reverse decisions with incomplete information. You write things down so others can challenge them. An end-to-end owner. You take a problem from discovery through design, rollout, telemetry, and iteration, and you measure whether it worked. User focused. You learn what teams need before deciding what to build. An invested mentor and coach. You support the growth of other engineers through mentoring, knowledge sharing, and feedback.
Core Competencies
- Modern Java expertise (Java 17 and 21 or later). Standard library, concurrency, and especially API design for long-lived public interfaces.
- JVM internals and performance. Memory model, garbage collection tuning, class loading, startup time, and footprint in constrained environments. You profile before you optimize.
- Library and dependency design. Minimal