27 ms·
Training is also a good idea since bringing a new person to a team has a negative effect on the productivity of the team (#): (1) If you are not working on a g
by struppi 10y ago
Training is also a good idea since bringing a new person to a team has a negative effect on the productivity of the team (#):
(1) If you are not working on a greenfield project, it takes some time for the new hire to get up to speed. During that time, their productivity is negative: They are not really productive yet, and they need help from everyone else on the team.
(2) If you add people to a mature team (or remove people), the team dynamics change completely and the team might need several months to get back to their previous performance again (##).
So, hiring a new developer can cost you several tens of thousands of dollars / euros even after you already hired them. Training your existing developers can make sense here - They get a productivity boost sooner. And, when I teach inhouse-trainings, I always have a feeling that people are more motivated to do their job after the training, even when they cannot immediately use what they have learned: It matters to them that their employer cares about them and their technical excellence.
Still it often makes sense: Some times, you just don't have enough people for your long term plans. But don't expect too much too early.
(#) Adding people to a late software project makes it later / You cannot get a baby in one month by hiring a team of nine women.
(##) I collected some data about this when I was an agile coach for two teams at a large company. We added 2 developers, productivity dropped, needed ~6 months to become reliably higher than before adding the developers. Unfortunately, I cannot share the data. Also, I guess this was an extreme case: Complicated legacy system.
- OpenDrapery 10y agoSounds like we've found the guy who has the secret to measuring productivity. Care to share what the rest of the industry has yet to figure out? How, on earth, do we measure developer productivity?
- citizens 10y agoLook at the commits?
- struppi 10y agoI know that this every productivity measurement is very fuzzy and can be cheated (#), but here's how we did it: We were simply looking at the number of features delivered to the customer in a certain amount of time, number of defects found in production and number of critical defects found immediately after roll-out (a.k.a. hot-fixes). We adjusted for holidays, vacations and sick leaves. Those numbers were relatively stable until we changed the team, then dropped, and it took quite a while to reliably get to higher levels than before. (#) I don't think the team cheated, because if they had, they could have easily cheated the numbers in a way that they'd steadily rise.
- flukus 10y ago> Those numbers were relatively stable until we changed the team, then dropped, and it took quite a while to reliably get to higher levels than before. That could be a reflection on a number of things, most notably the code quality. If your new hires are taking a while to get up to speed (you didn't specify how long) then that's also an indication of either quality or doing something quite different.