About the role:
As part of Posit's mission to create free and open source software for data science, scientific research, and technical communication, we are actively developing a new IDE for data science called Positron; we're searching for additional developers to join this exciting project. We are seeking a product-minded Python developer to work on Positron who brings significant experience in Python data science and/or developer tooling. In addition to committing code, we are looking for a candidate who is motivated to engage with our growing user base and develop their own leadership skills.
In this position, you’ll primarily work with Python and TypeScript to build full stack features in Positron, but our technology stack also includes React, Rust, R, and GitHub. We don’t expect you to be an expert in all of these technologies and trust candidates will learn them as they work with the team; significant Python expertise is required for this role.
What you’ll own:
- Authoring, reviewing, testing, and deploying code, with a focus on best practices for Python
- Marshaling specific features from design to implementation to release, and beyond
- Ensuring continued product quality through thoughtful design, continuous integration, and test automation
What you’ll help with:
- Managing issues and feedback from our growing user base
- Determining the best approaches for creating a seamless IDE experience for our users
- Suggesting process improvements, with a focus on best practices for Python
- Mentoring and collaborating with other engineers
What you’ll learn:
- A deeper understanding of the variety of environments and patterns used by data science practitioners
- How features in modern IDEs are developed using standard protocols
- How to build development tools for both desktop and server environments leveraging TypeScript and Python
- Skills to transition into technical leadership
About you:
- Have at least 5 years of professional experience as a software engineer and/or data scientist
- Are collaborative, an effective communicator, action oriented, and invested in learning
- Have specific Python experience relevant for the Positron project, which could be demonstrated via one or more of:
- Experience building tools for Jupyter notebooks, such as a custom extension
- Maintaining an open source Python package
- Building internal tooling used by an organization’s Python data analysts
- Have specific domain expertise relevant to the Positron project, which could be demonstrated via one or more of:
- Practical data science experience including exploratory data analysis, reporting, and/or machine learning
- Extending a Python LSP such as Jedi
- Creating and publishing a VS Code extension
Within one month, you will…
- Get to know everyone on the team and become familiar with our current development strategies
- Follow our onboarding guide and suggest improvements
- Work on your first feature and see your code changes reflected in our current product
Within three months, you will…
- Participate in feature planning
- Leave each part of the product that you work on in better shape than how you found it
- Feel comfortable with the repository layout and begin understanding the broader architecture of the IDE
- Understand how language servers, runtime kernels, and extensions power features in the IDE
- Grow your understanding of the challenges our early adopters face by responding to GitHub issues and other channels for user feedback
Within twelve months, you will…
- Plan features and drive their development
- Share your expertise and insights with team members, contributing to the collective knowledge and skill set of the engineering team
- Be able to point to parts of the products that you have significantly contributed to