Jobs and Careers
RS

Principal Software Engineer (Team Lead)

RStudio
USA - Remote, United StatesRemotefull_timeVerifiedPosted 29 Sept 2023

About the role

About the Role

We seek a software engineer with Go experience and leadership skills to join our Platform team. The team works across all Posit products, developing shared components and enabling customers to use the products better. This is a high-leverage team that can impact many people and customers.

You’ll be working on a small team that is currently focused on building a new metrics aggregation product, written using Go and OpenTelemetry, to help customers and internal teams better understand how our products work. The team has also spent time working on AWS licensing, and in the future will expand further, which may include other parts of licensing, auth, and cross-team standards.

What you will own:

  • Development and delivery of key platform projects. We work as a team, but we want you to own the implementation details for the projects you are working on. As you gain knowledge, we want you to be able to develop and maintain key features in the projects the team works on.
  • Product-minded planning of new features. We will also want you to consider what platform features are needed, both from the perspective of internal stakeholders and our customers. This will include cross-functional initiatives and dependencies that require effective communication.

What you will help with:

  • Guiding projects through the full software development lifecycle from planning through support. You will lead the development team to help design and develop features to ensure we deliver high-quality software. You'll also engage with our customers via our asynchronous support channels to continuously improve the products by taking customer feedback into consideration.
  • Prioritization of enhancements and bug-fixes to ensure that we are always delivering the most value to our customers.
  • Working with and developing with many different teams within the organization. We work a lot with other teams and can act as a connective glue with our platform work. To be effective, you will need to work with and coordinate with these other teams. It will also be helpful to contribute to these codebases at times, which are mainly in Go and C++.

What you will teach us:

  • Your areas of expertise. We are a team that likes to learn, and we want to learn from you. We expect you to come here with some knowledge of Go and Kubernetes, and we are interested in adding to our understanding of distributed systems. We expect there are many other areas that we will learn from you.
  • General development best practices. As someone with a lot of experience in development, we'll want you to do some technical mentoring of other engineers and go beyond code reviews to share what you know.

What you will learn:

  • Technologies we use that you don’t already know. While it is helpful to know them, we don't need you to join here knowing all the technologies that we work with. We do need you to have Go and Kubernetes knowledge, but the rest you will learn along the way.
  • An appreciation for data science workflows and some of the tools and methodologies used by data scientists. Most of us do not come from a data science background but enjoy learning from those around us on this.
  • The Posit products and how they empower our customers to do effective data science.

Within one month, you will…

  • Get to know everyone on the team and get familiar with our current development strategies.
  • Follow our onboarding guide and suggest improvements.
  • Work on your first feature request and open a handful of pull requests for review.
  • Begin understanding how things fit together.

Within three months, you will…

  • See your code changes reflected in our current product versions.
  • Participate in feature planning and provide feedback.
  • Feel comfortable with the repository layouts.
  • Start to get involved in product planning discussions.

Within six months, you will...

  • Add your name to our list of ownership areas and continue to learn more about these topics.
  • Participate in all of the major technical design for the team, giving advice where needed and agency to team members as well
  • Help with product planning and be part of the conversations with the product manager and other leaders on what comes next.
  • Understand our customer escalations and tickets well enough that you can advocate for them in planning.

Within a year, you will…

  • Understand how the commercial products work together to create a great data science platform.
  • Have contributed to a product's codebase to add in something needed for platform work.
  • Be able to

Apply for this role

Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.

Apply Now →Generate Application Kit

Free account required — sign up in 30s

Company

RStudio

View company profile →