Onboarding in Machine Learning Product Teams

Misbah Uddin
Apr 20 · 11 min read

People change teams all the time. There are many reasons including changing jobs, internal migration, personal time off, etc. Gone are the days when people stayed with company long time, let alone with one team. Embracing this fact and being prepared enables a team robust to changes. A big part of the preparation includes a solid onboarding plan. Machine Learning (ML) teams are different since they include many different techniques and skill dimensions compared to typical software products. Onboarding in such teams, therefore, brings in some unique challenges. With this article, we show an onboarding process as part of handling team changes in the ML product area. We will share our view on the offboarding process in a different article.

Figure 1: Welcome onboard. Image by fauxels.

Background

ML product teams are unique in the sense that it typically deals with a wide variety of dimensions:

  • data-driven business process

Supporting these dimensions requires a range of skilled people, such as product owner, business analyst, data analyst, data scientist, ML engineer, data engineer, software engineer, DevOps engineer, etc. People in these roles in such product teams are opting for role/team changes at a rate faster than other roles in another type of software product team due to heavy shortage in the market, fast-changing technical landscape, opportunities to blend multiple roles in one, etc. In our personal observation, we have seen that happening at least once every three to six months. Anticipating a similar rate, we have seen that the best strategy is to focus on shared knowledge and ownership combined with a solid onboarding/offboarding process. Here, we will focus on the onboarding process in such a setting.

A Process for Onboarding

The goal of a solid onboarding process is to make a new recruit an effective collaborator in the team. An additional goal is to make this process fast, without compromising the quality.

Figure 2: Onboarding stages. Image by the author.

We see that onboarding as a four-stage process (see Figure 2). The stages are as follows:

  1. Recruitment: Starts when the decision has been made that someone will start with the team at a given date. In this stage, a plan is made on how to onboard the new hire.

For onboarding, we recommend the following practices.

Recruitment stage

  • Identify contribution area: The Product Owner (PO) should initiate the onboarding process by informing the team about the new hire. The team should assess the new hire’s profile and pinpoint three to five core areas of contribution relevant to the product. For the case of a data scientist, it could be model training, data analysis, model run analysis, operation support, and documentation.

Orientation stage

  • Ensure onboarding check-ins: The product owner should schedule and conduct regular check-ins with the new hire to stay up to date on the progress. The first check-in should be about understanding the expectations both for the new hire and the team against each other. The subsequent ones should be about assessing the expectation fulfillment.

Collaboration stage

  • Carry out the first ticket: The new hire gets assigned to a ticket, which is expected to finish within a sprint. The candidate should get a co-developer in the ticket who shares the responsibility of closing the ticket. The two should engage in pair programming sessions on a regular basis. The co-developer should take a more active role during the sessions. This practice sets the tone of the ways of working in the team — being collaborative. Furthermore, it is preferred that the delivery time of the ticket is a bit relaxed.

Contribution stage

  • Carry out the first major epic: The new hire should be assigned to an epic encompassing two-three sprints. The person should plan and execute the individual tickets within the epic. The person should actively pair the program with other developers to ensure alignment of thinking. However, it is preferred that the delivery time of the epic is a bit relaxed.

Best practices that influence onboarding

Here are a few suggestions that not only support a good onboarding process but also improve the way of working of the team in other ways. In our opinion, the following practices will make onboarding effective and faster.

  • The team identifies core contribution dimensions to the product. The dimensions should not only touch upon technical aspects, e.g., data wrangling, model management, hypothesis testing, etc. but also on ways of working, e.g., scrum/kanban activity, documentation, etc.
Figure 4: Changing shares of learning vs contributing. Image by author.
  • Different product teams should opt for standardizing technical components and reuse solutions for common problems. This is time-consuming in the short run but pays dividends in the future. It not only allows smooth mobility across team members but also makes onboarding significantly easier.

Remarks

The longer it takes to onboard a person, the clearer it is that something is going wrong. It could be that the team is going through some issues that make it difficult to focus on the onboarding or the expected and the actual skills of the person do not match. A much worse case would be that the team does not pay attention to the improvement of the onboarding process or the team inherited a high technical debt that involves a huge amount of time getting used to.

This article presents an approach for onboarding an ML team. However, some of the principles apply to software engineering as well. I am sure this approach may not work for you as is. Please provide feedback on points you beg to differ.

CodeX

Everything connected with Tech & Code

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store