Planet Lean: The Official online magazine of the Lean Global Network
Slashing onboarding time for new developers

Slashing onboarding time for new developers

Clement Hannicq
September 30, 2019

BUILDING BRIDGES – Using kaizen, a team at Theodo was able to reduce the time necessary to install a project on a new developer’s computer from three weeks to twelve minutes.


Words: Clément Hannicq, Architect Developer, Theodo

Photo by Kevin Ku on Unsplash


When developers join a project, the onboarding begins by installing the project on their computer so they can start working. This is very much akin to the change of dies we see on the production floor.

A few months ago, I joined an ongoing project here at Theodo and I was shocked to see it took me two days to install it. To me this was not acceptable, especially considering that in our company we install projects very often (160 times in 2018). In my mind, this task shouldn’t take more than 30 minutes, so I chose this timeframe – half an hour – as a standard and decided to start a kaizen.


LEVERAGING AUTOMATION TO WEED OUT HUMAN ERRORS

I started by mapping all the steps in the installation process to onboard a new developer, each of them taking from 1 to 4 human actions – as described in this graph:

The onboarding process at Theodo

Then, I sorted through the steps and removed those I found to be unnecessary. For example, I discovered that the “Setting up credentials on the virtual machine” was unnecessary, because creating the virtual machine automatically generates credentials. This meant we did not have to set up new ones – a good example of digital 5S.

I then decided to automate the process, because I was making lots of mistakes following it. Hence, I wrote a script to execute all the remaining steps and managed to get the installation time under the 30 minutes threshold. (The first step, “Install Global Dependencies” was the only one that depended on the computer the developer uses. This made it the most complicated to automate, so I left it as is.)

Automating a step in the process to avoid mistakes

POKA YOKE TO THE RESCUE

Soon after that, I switched projects again and, one more time, I encountered a very complex installation process. It entailed about 40 pages of instructions, and it took me three weeks to install the project locally.

In response, I applied the standard I have designed in order to simplify the installation process. When the next developer joined the team, it took him less than 15 minutes to install.

However, when a couple months later a new developer joined the project, it took him 50 minutes. He got stuck five times because he made mistakes during the global dependencies installation.

This story prompted me to add a new standard: there must be an automatic check that every global dependency is installed and functional. Thus, I added a script that would check the installation of every tool needed by the project. I had it display on a single line in the missing or broken dependency when it failed.

Following those improvements, I removed a couple hundred manual actions. The next installations took the new developers a maximum of 12 minutes.


THE AFTERMATH

Over time, I kept doing kaizen on dozens of projects. To date, I have come up with the following standards:

  • All external dependencies are listed and the developer has a way to know how to solve them.
  • To ensure the global dependencies are correctly installed, there is an automatic check. There is at least one known set of global dependencies that is known to work.
  • Installation is automated (once the global dependencies are installed).
  • Installation always works on the first try. Which means, for example, that there cannot be a troubleshooting section in the documentation.

I am now starting to realize that my initial goal of installing in less than 30 minutes should not be a developer’s first concern, as they should focus on making it work right first time.

If I reflect on my experience from a lean perspective, I see my journey being very similar to the SMED methodology.

The gist of SMED is to start by mapping out the process and identifying which steps require production to stop, those are called internal. Then convert as many internal steps into external steps, meaning that they no longer require production to stop. And finally ensuring all external steps are reliable.

Much like on a production floor when a machine goes through a changeover, the developer needed to stop the production of features and focus on the installation instead. The installation steps were already defined but required the full attention of the developer – they were internal.

By automating the installation, I simplified a process of dozens of internal tasks and replaced it with a number of external tasks, since the developer no longer has to handle the sequence of commands himself.

The last step is to streamline the steps that still required the attention of the developer – handling errors and global dependencies.


THE AUTHOR

Clément Hannicq photo
Clément Hannicq is an Architect Developer at Theodo.

Read more

Five lean mistakes to avoid
March 21, 2023
Five lean mistakes to avoid

FEATURE – Based on her experience at Lean Institute Colombia, the author lists five common mistakes hindering a lean transformation. Take note!

Continue reading
Josh Howell of LEI reports on his visit to Tel Aviv
January 28, 2015
Josh Howell of LEI reports on his visit to Tel Aviv

OPINION – Lean Global Network institutes regularly collaborate on education. Josh Howell of Lean Enterprise Institute recently visited our Israeli affiliate to deliver a couple of workshops.

Continue reading
Lean leadership and the opportunity for developing countries
July 2, 2015
Lean leadership and the opportunity for developing countries

ARTICLE – While supporting the adoption of lean in a Mozambican hospital, a young engineer learned a number of valuable lessons on leadership and what it really takes to help developing countries to grow.

Continue reading
Why respect for people and lean are the only way forward
January 12, 2015
Why respect for people and lean are the only way forward

FEATURE - Mission creep, silos and a disengaged workforce are some of the negative effects of traditional management. Michael Ballé offers an alternative based on the respect for people principle of lean thinking.

Continue reading

Read more

No items found.