13 How to onboard new developers

 

This chapter covers

  • Comparing the ways experts and beginners think
  • Improving onboarding new developers into a codebase
  • Supporting new developers while learning to use a new programming language or framework

So far we have examined how to read and organize code. As a more senior developer, however, you will likely struggle with your own confusion and the confusion of other more junior people you work with. In many cases, you will want to manage the cognitive load junior people are experiencing to make sure they learn more effectively.

In this chapter, we will examine how to improve your onboarding process, whether that concerns onboarding an experienced developer into an unfamiliar codebase or a novice programmer.

To do so, first examine how experts and beginners think and behave differently. We will then cover a variety of activities a team can perform to onboard new team members. By the end of this chapter, you will be familiar with three techniques and activities to support newcomers more effectively.

13.1 Issues in the onboarding process

13.2 Differences between experts and novices

13.2.1 Beginners’ behavior in more depth

13.2.2 Difference between seeing concepts concretely and abstractly

13.3 Activities for a better onboarding process

13.3.1 Limit tasks to one programming activity

13.3.2 Support the memory of the onboardee

13.3.3 Read code together

Summary