Astral is hiringSoftware Engineer
Astral
At Astral, our mission is to make the Python ecosystem more productive by building next-generation developer tools — tools that enable developers to ship great software, faster.
To start, we're building Ruff, an extremely fast Python linter and formatter; and uv, a comprehensive Python package manager — two of the fastest-growing developer tools ever.
Our early team includes the authors of ripgrep, bat, hyperfine, and maturin; early, core contributors to Biome and Prefect; and multiple CPython core developers — all building at the intersection of Rust and Python.
The Role
We're hiring generalist engineers to help build the future of Python.
Between Ruff, uv, and the rest of the Astral ecosystem, our work tends to span the spectrum from low-level Rust optimizations to high-level user experience design.
If you like hyper-optimizing parsers, it could be a good fit. If you like designing command-line interfaces or writing documentation, it could also be a good fit. Let's figure out the right role for you based on your goals and areas of interest.
As with all positions at Astral, being an open source maintainer is a big part of the job too: engaging with the community, reviewing pull requests, debugging issues, and generally contributing to our culture of developing in the open.
Strong candidates tend to have deep experience with Rust, Python, open source, or developer tools — but few candidates are deep in all of these areas, and we've hired candidates without prior Rust (or Python) experience.
The Team
We're not only remote, but highly distributed. We hire from Pacific Time (e.g., San Francisco, USA) to Central European Time (e.g., Munich, Germany), and get together twice annually for week-long, in-person on-sites.
We pay competitively (salary and equity) and offer comprehensive benefits (healthcare and more).
Our work is highly collaborative, but as is common in open source, much of that collaboration takes place asynchronously (in Discord, or GitHub, or Notion). We minimize meetings, and maximize time spent working in code.
We're a small, high-trust team. We strive to ship excellent software, at a fast pace... while having fun. (See: Our Values.)
Our Process
Our hiring process is entirely remote and does not include any live coding segments. While the process may vary from candidate to candidate, it generally consists of three phases, each designed to mimic the kind of engagement and interactions you'd have as a member of the team:
A take-home project, where we ask you to build a command-line tool based on a pre-defined specification.
A presentation, where we ask you to present on some of your own work, and have the kind of technical conversation you'd have as a member of the team, grounded in something that you know well.
A co-working engagement, where we spend time working through issues and pull requests together.
Along the way, we'll talk through your background and interests to determine whether Astral is a good fit for your career goals.
Something went wrong.