Thursday, September 5, 2013

The Impact Of A New Developer

In the fast paced world of software development, continuous hiring has become commonplace. As new features and products are dreamed up, individuals must be hired to fill necessary roles. Additionally, the software industry is highly competitive due to supply and demand. The days of "the lifer" have become almost non-existent. Unfortunately, there is a limited supply of experienced developers available at any one moment. This requires untold searching and many interviews. With a constant state of flux in the industry, it can be easy to overlook the importance of on-boarding new team members. In many situations companies are so delighted to finally find the right programmer that they forget about the downstream impacts to an organization, department, and programming team. It's important to dedicate time toward monitoring and supporting any personnel changes.



The following is a series of observations and considerations about on-boarding new programmers to a team:




* Without the proper guidance, structure, and talent, junior developers can distract and degrade the output of any team.

* Regardless of ability, new team members unknowingly create technical debt as they work through new software and processes. Be sure to complete code reviews on all initial output. The formal or informal nature of that process depends on the individual and department.

* Embrace realistic expectations about a new member's impact. When new people start, plan to complete less work. Before a member can add to the collective output he/she will temporarily pull the team down while getting up to speed.

* Set up and communicate a grace period where expectations are reasonably lower. For instance, do not plan for productive output during the first week. Any work completed during that period should be considered a bonus. After the grace period, review his/her progress.

* Regardless of ability, do not assume a programmer has all the knowledge or training required to complete a job/task. Actively discuss deficient areas and provide a path to increase those skills.

* Pay close attention to junior developers new to the industry. They can have many preconceived notions about programming. .

* Don't forget about the stages of group dynamics: Teams will go through these stages each time personnel changes. Foster team cohesion by actively engaging new team members in all work and non-work related activities.

* New team members can provide excellent outsider feedback about a company, team, or processes. They can bring a fresh set of eyes and provide unbiased opinions.

* Continuously solicit feedback from a team about the progress of a new developer. This discussion should span from aptitude to attitude. Sometimes new members bring unintended baggage from another team/company.
Full Post

No comments:

Post a Comment