About the Role
At Anyscale, we're on a mission to democratize distributed computing and make it accessible to software developers of all skill levels. We’re commercializing Ray, a popular open-source project that's creating an ecosystem of libraries for scalable machine learning. Companies like OpenAI, Uber, Spotify, Instacart, Cruise, and many more, have Ray in their tech stacks to accelerate the progress of AI applications out into the real world. With Anyscale, we’re building the best place to run Ray, so that any developer or data scientist can scale an ML application from their laptop to the cluster without needing to be a distributed systems expert. Ray is an open-source project that provides a simple, universal API for building distributed applications. The Ray Core team develops and maintains the Ray C++ backend, focusing on the reliability, scalability, and performance of the Ray system. As a Staff Software Engineer, you will own major technical areas, define roadmaps, drive execution, and make architectural decisions for distributed computing infrastructure used by demanding production workloads. This role involves designing and evolving core distributed-systems primitives and staying hands-on with implementation and debugging.
Responsibilities
- Own a major technical area of Ray Core end to end, defining the roadmap, identifying the most important technical problems, and driving execution through production.
- Lead large, technically complex projects spanning multiple engineers, teams, and/or organizations.
- Set technical direction and make architectural decisions for distributed computing infrastructure used by demanding production workloads.
- Design, build, and evolve core distributed-systems primitives rather than simply integrating existing platforms or frameworks.
- Work on problems involving areas such as distributed execution, scheduling, resource management, fault tolerance, concurrency, networking, storage, or system performance.
- Stay hands-on with implementation and debugging in a systems-oriented codebase, while raising the technical bar for the engineers around you.
- Help shape the longer-term architecture and evolution of Ray Core as our workloads and scale continue to grow.
Requirements
- 6+ years of software engineering experience, with a track record of increasing technical ownership.
- Experience leading substantial projects end to end, including defining the problem, creating a roadmap, making architectural decisions, driving implementation, and owning the outcome in production.
- Experience leading projects that are larger than a single-engineer effort, typically spanning multiple engineers and lasting multiple quarters.
- Deep experience with distributed systems and computer systems.
- Strong systems programming experience in languages such as C++, Rust, Java, or similar lower-level languages.
- Strong understanding of systems concepts such as multithreading/concurrency, distributed coordination, resource management, fault tolerance, performance, or networking.
- Experience building foundational systems such as databases, streaming systems, distributed runtimes, operating systems, schedulers, storage systems, Spark, Kafka, or similar infrastructure is highly relevant.
- A track record of mentoring engineers and raising the technical bar of the teams around you.
Qualifications
Contributions to open-source infrastructure projects.
Benefits
- Stock Options
- Healthcare plans, with premiums covered by Anyscale at 99%
- 401k Retirement Plan
- Wellness & Education Stipend
- Paid Parental Leave
- Fertility Benefits
- Paid Time Off
- Commute reimbursement
- 100% of in office meals covered