Job Specifications
Software Engineer, Workbench
About The Team
Join the passionate team behind Posit Workbench, where we’re always learning and working to deliver exceptional experiences for our customers. You’ll contribute to building a cutting-edge platform that empowers data science teams to collaborate seamlessly across R, Python, and more.
Even though we’re a remote team we try to stay connected through (optional) weekly coffee chats and monthly online games. The team comprises about 15 people, working in small sub-teams of 2-3 developers and 1-2 QA engineers. We rotate teams each feature cycle to facilitate knowledge transfer and reduce silos.
About The Role
In this role, you will exercise your technical expertise to design features that have a major impact on the whole product, review feature designs from other engineers, and investigate challenging bugs and customer issues.
People who thrive in this role tend to be highly accountable, driven, collaborative, curious, and open-minded. They have a strong sense of ownership over their own features as well as the whole product.
About You
You have 2+ years of professional experience writing software in Rust or C++ on Linux or macOS.
You're familiar with SQL and building services backed by relational databases
You're user-focused and mission-driven, facilitating data science and education for everyone.
You share our commitment to robust design, clean and well-tested code, and creating delightful user experiences.
You break down complex problems into bite-size tasks and drive them to completion.
You approach your work and collaboration with empathy, humility, and pragmatism.
What You’ll Own
Developing Workbench features and bug fixes for launching and managing data science IDE sessions in a cluster.
Gathering and incorporating stakeholder feedback about features.
Driving an exceptional customer experience through creativity, product-mindedness, and technical innovation.
What You’ll Help With
Designing and developing features using multiple languages.
Designing your features to be observable, scalable, and maintainable.
Influencing what we build, and how we build it.
Defining and iterating on team processes.
Creating automated unit and end-to-end tests.
Supporting enterprise Workbench customers and troubleshooting issues.
Reviewing feature specifications and pull requests.
Understanding our documentation and improving accuracy, clarity and coverage.
Fostering and maintaining an inclusive, supportive team environment.
What You’ll Teach
Design patterns and anti-patterns learned from prior experiences.
The tools, tips, and tricks that make your professional life easier.
What You’ll Learn
Familiarity with Linux system administration tools and how to develop features that utilize them.
Exposure to additional programming languages like Go, Typescript, and python.
How to integrate enterprise software with cloud computing platforms like AWS, Azure, and leverage technologies like Kubernetes and Slurm.
How to integrate enterprise software with various authentication and authorization methods, such as OpenID and SAML.
A deeper appreciation for data science workflows and how data science teams work.
Systems that enable businesses to host modern IDEs in secure environments at scale.
How to extend IDEs like VS Code, Positron, and RStudio with features that support code-first data science.
What To Expect
Within 1 month:
You will have implemented your first small feature or bug fix with support from your on-boarding partner. Your development environment will be set up, and you will be comfortable with the basic development process of the team. You will be regularly meeting with a mentor.
Within 3 Months
You will have started to build up an understanding of the needs of Posit Workbench administrators. You will have begun to develop a broad understanding of the components of Workbench and how they interact with each other. You will be participating in supporting customers with support from other members of the team. You will be familiar with our documentation and how to use it to aid in troubleshooting issues. You will be contributing to the code reviews of other team members.
After 12-months
You will develop, present, and own the several features you’ve added into the product. You will provide design and code review feedback on the features of other team members. You will be confident working in one or two major areas of the product and comfortable exploring new areas. You will be comfortable investigating and taking ownership of customer support tickets. You will have an understanding of our build and automated test system and will be able to investigate failures and add new features and automated tests to them.
Posit offers competitive compensation with extensive human-first, people-focused benefits to prioritize your personal and financial well-being. Individual pay decisions are based on a number of factors, including qualifications for the role, experience level, a