Let’s get started
By clicking ‘Next’, I agree to the Terms of Service
and Privacy Policy
Jobs / Job page
Software Engineer, General image - Rise Careers
Job details

Software Engineer, General

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 ripgrepbathyperfine, 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:

  1. A take-home project, where we ask you to build a command-line tool based on a pre-defined specification.

  2. 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.

  3. 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.

Average salary estimate

$100000 / YEARLY (est.)
min
max
$80000K
$120000K

If an employer mentions a salary or salary range on their job, we display it as an "Employer Estimate". If a job has no salary data, Rise displays an estimate if available.

What You Should Know About Software Engineer, General, Astral

At Astral, we're on a mission to supercharge the Python ecosystem by creating next-generation developer tools. We're thrilled to open the doors for a passionate Software Engineer who is eager to help shape the future of our projects, especially Ruff and uv. Imagine being part of a dynamic team that's building developer tools that are not just powerful, but also user-friendly. You might find yourself diving into low-level Rust optimizations one day and working on user experience design the next. This is the beauty of being a generalist engineer at Astral; your talents can shine in various areas, whether you're optimizing parsers, designing command-line interfaces, or writing engaging documentation. We're also big believers in the open-source community. As part of your role, you'll engage with users, review pull requests, and be an essential contributor to our culture of transparency and collaboration. Although strong candidates usually come with a solid background in Rust, Python, open-source, or developer tools, we welcome those with diverse experiences and are eager to learn. Work here isn’t just a job; it’s about being part of a highly collaborative and highly distributed team that values enjoyment and excellence. Our hiring process is designed to reflect the role, featuring an engaging take-home project, a presentation on your work, and a collaborative session that mirrors our day-to-day tasks. So, if you're ready to take your tech skills to the next level and help us build amazing tools at Astral, we’d love to hear from you!

Frequently Asked Questions (FAQs) for Software Engineer, General Role at Astral
What does a Software Engineer do at Astral?

As a Software Engineer at Astral, you'll be involved in building next-generation developer tools that improve productivity within the Python ecosystem. Your role will span tasks ranging from low-level Rust optimizations to high-level user experience design, depending on your interests and goals.

Join Rise to see the full answer
What skills are required for the Software Engineer position at Astral?

Ideal candidates for the Software Engineer role at Astral should have experience with Rust, Python, or developer tools. However, the company values diverse backgrounds and is open to candidates who may not yet have extensive experience in all these areas.

Join Rise to see the full answer
Is the Software Engineer position at Astral remote?

Yes, the Software Engineer role at Astral is fully remote. The company hires globally, accommodating team members from Pacific Time to Central European Time, allowing for great work-life balance and flexibility.

Join Rise to see the full answer
What is the hiring process for Software Engineers at Astral?

The hiring process for a Software Engineer at Astral consists of three phases: a take-home project, a presentation based on your prior work, and a collaborative engagement to solve issues together, mirroring the daily interactions you'd experience in the team.

Join Rise to see the full answer
What technologies will I work with as a Software Engineer at Astral?

In this Software Engineer position, you will primarily work with Rust and Python in developing tools like Ruff and uv. You may also engage with other modern technologies, depending on project requirements and your interests.

Join Rise to see the full answer
How does collaboration happen in a remote team like Astral?

Collaboration at Astral is facilitated through various asynchronous methods such as Discord, GitHub, and Notion. The company minimizes meetings to maximize time spent working in code, allowing team members to collaborate effectively despite being remote.

Join Rise to see the full answer
What is the company culture like at Astral for Software Engineers?

The company culture at Astral is centered on trust, collaboration, and fun. The team strives to deliver excellent software while enjoying the process. Astral values individuals who are proactive and engaged in the open-source community.

Join Rise to see the full answer
Common Interview Questions for Software Engineer, General
Can you explain your experience with Rust and Python related to this Software Engineer role?

When discussing your experience with Rust and Python, focus on specific projects where you utilized these languages, your contributions, and how your understanding of these technologies positions you for the Software Engineer role at Astral.

Join Rise to see the full answer
How do you approach optimizing command-line tools?

In answering this question, describe your methodology for identifying bottlenecks, testing improvements, and ensuring usability within command-line tools, showcasing any previous examples to highlight your approach.

Join Rise to see the full answer
What strategies do you use for writing clear technical documentation?

Share your strategies for writing accessible documentation, including organizing content, using non-technical language where possible, and incorporating user feedback. Mention experiences where your documentation efforts improved end-user understanding.

Join Rise to see the full answer
What open-source projects have you contributed to?

Highlight contributions to any open-source projects, detailing your role and the impact of those contributions. Emphasize how these experiences align with Astral's commitment to the open-source community.

Join Rise to see the full answer
How would you handle bugs reported in your code?

Address how you would prioritize bug fixing, communicate with the community for feedback, and ensure a timely resolution. Your answer should reflect a user-first mindset and a commitment to quality code.

Join Rise to see the full answer
What is your experience with asynchronous collaboration?

Share examples of successful asynchronous collaboration, discussing the tools you've used, and how you managed communication and workflow without real-time interactions.

Join Rise to see the full answer
How do you stay updated with changes in the Python ecosystem?

Explain your methods for staying informed about the Python ecosystem, such as following relevant blogs, attending conferences, or participating in forums, stressing the importance of continual learning in your professional growth.

Join Rise to see the full answer
Describe a time you had to quickly learn a new technology or programming language.

Provide a specific example of a technology or programming language you learned on the job, detailing your learning strategy and how you successfully applied it to your work.

Join Rise to see the full answer
What are your thoughts on code reviews and their importance?

Explain your belief in code reviews as a tool for improving code quality, sharing knowledge, and fostering collaboration, supported by examples from your experience in previous roles.

Join Rise to see the full answer
How do you prioritize tasks when managing multiple projects?

Discuss your approach to task prioritization, particularly under tight deadlines, and share tools or methodologies you use to manage your workload efficiently while maintaining high standards of work.

Join Rise to see the full answer
Similar Jobs
Posted 10 days ago
Photo of the Rise User
Infoblox Remote No location specified
Posted 5 days ago
Posted 4 days ago
Photo of the Rise User
Posted 4 days ago
Photo of the Rise User
Posted 9 days ago
Photo of the Rise User
Posted 10 days ago
Photo of the Rise User
Posted 7 days ago
MATCH
VIEW MATCH
FUNDING
SENIORITY LEVEL REQUIREMENT
TEAM SIZE
No info
LOCATION
No info
EMPLOYMENT TYPE
Full-time, remote
DATE POSTED
November 28, 2024

Subscribe to Rise newsletter

Risa star 🔮 Hi, I'm Risa! Your AI
Career Copilot
Want to see a list of jobs tailored to
you, just ask me below!