3

For a team of junior web developers, who are very motivated to improve their skills, and applying their new knowledge to the development has produced great results so far. But I am conscious of the time they would be spending on learning during their work hours. What is the ideal balance of allocating them a number of hours for online training/courses in a week so much that it does not affect their deadlines.

1
  • 5
    TBH this is extremely contextual - based on the devs' own motivators, how valuable the knowledge gains would be, the tech you're using/training for, what risks it might mitigate, company value placed on learning, etc. Even with all of that info, it's basically impossible to say how it will affect their deadlines - sometimes it might directly subtract the hours or velocity used for training, sometimes it evens out because they are more engaged and motivated, sometimes it's a net positive because of motivation and immediately-applicable knowledge. It also depends on how far out deadlines are. Commented Apr 28, 2016 at 20:42

4 Answers 4

4

...has produced great results so far.

Sounds promising! I can think of several approaches to managing skills improvement / professional development in the context of scrum:

  • Arguably, professional development could be considered "all part of the day's work" which is supposed to go on during a sprint. If you're figuring sprint capacity supposing that, say, 30-40% of the workday is devoted to such routine tasks, then perhaps they could spend up to 10-20% on learning. (Adjust numbers for your actual situation of course.)

  • If your team is not continuously sprinting, time between sprints could be used.

  • If your team can afford to cycle one developer at a time off the sprints, that developer could spend their time on a combination of skills improvement and tech debt. Note that some teams routinely keep one team member out of sprint to be available to squash bugs or deal with other urgent problems, eg Batman: this model could be combined with learning time.

  • If there is a specific area or technology that the team either anticipates needing, or has identified as an area that needs improvement (eg in retrospectives), and if your PO is onboard with the idea that such learning would be a good investment, you could devote a sprint to this, with an appropriate sprint goal.

If the difficulty is persuading the PO and/or other stakeholders that the learning is a good investment, I would suggest making two points:

  • professional development is a good investment in junior developers; it's how they become senior developers who can be more productive and/or bill at a higher rate. It also keeps morale high, as you have already alluded to in your question.

  • presumably your "great results so far" mean improved productivity or quality, ie higher velocity or smaller bug count. Pull out those numbers! and negotiate with your stakeholders about how much time to invest for the kind of return you are getting or can reasonably project.

Also, some companies have policies about continuing professional development, and it's included in their staffing plans: eg, 1 FTE turns into 0.8 FTE after sick time, vacation time, & prof dev are taken into account. Check with your line manager and/or HR dept to see if that's true in your case. If so, then treat learning time like any other time off.

Good luck! And good for you for trying to grow your team's skills.

2

As you put Scrum tag I will answer from the Scrum point of view.

The team should spend as much time for learning as they think it is necessary to produce product increment every sprint according to the definition of done.

As long as Product Owner (PO) is happy with team progress I cannot see any reason to influence the team's training time. If the PO would think that the less learning would increase team's velocity (in a long term) he/she can discuss this with the team - to what point the education helps the project and to what point it is not necessary or the training scope is outside of the required skills.

When discussing a sprint goal the team should be aware of how much would they need to spend on education to finish the Sprint backlog. Here is the best time to address the issue. If the learning is not strictly connected to the sprint goal, it should be discussed how this learning can increase teams effectiveness in long run.

1
  • I don't know why you picked the PO. The team decides how to effectively make the software and spend their time. If the team lacks the experience to do so the Scrum Master should help, it's not really the job of the PO to intervene in order to make things go faster.
    – Nathan
    Commented Jan 26, 2018 at 13:58
1

Kanban offers a great way to handle continuous improvement. You just need to introduce slack in the system. A developer can pick up work from the continuous improvement board whenever they're blocked.

5
  • Hi Shinzui, welcome to PMSE! As your question stands, it's not addressing the original problem of hours to be dedicated for training - although the usage of another methodology could give some further flexibility on how tasks are prioritized. Commented May 1, 2016 at 22:58
  • I am curious why you think it doesn't. I outlined a clear way to dedicate time for continuous improvement.
    – shinzui
    Commented May 2, 2016 at 14:57
  • Just because the main question is how many hours... now how the improvement tasks should be prioritized / assigned. Commented May 3, 2016 at 14:44
  • Interesting. Hours does not have to be literal. You'll achieve the same result by allocating a certain percentage of time.
    – shinzui
    Commented May 4, 2016 at 16:48
  • Yeap, and this kind of detail could add value to your answer and avoid community flagging it as not an answer. Commented May 8, 2016 at 8:18
0

Since this is a PM forum, I think this is an easy answer. The answer is zero. A customer should not have to pay for one hour of learning. People will learn as a side effect of doing the work but every hour they work needs to provide value to the project, not the other way around. The only caveat to that is training within that specific project context, i.e., training to handle project-specific processes and procedures, rules, specific tool sets, etc. Otherwise, those people on the project need to be ready to go if they are charging for those hours. If a seller of work needs to train their people, they can put them on a project but those hours worked do not get billed.

Like a teaching hospital. A patient or his insurance company will not get billed for the fifteen physicians doing rounds.

One more caveat: If the customer is requiring the use of a brand new technology that is not well known in industry, then a seller can negotiate training as part of its work proposal. That would be reasonable but also pre-negotiated.

EDIT: This applies to in-house, too. In-house project workers are building something for an in-house customer. In-house projects cost money, too. Any training taking place, whether it is a buyer-seller situation or in-house, it is NOT part of the project but part of the overhead, including the seller's overhead.

For those that had such heartburn with my answer, let's bring it home. Say you hired a landscaping company T&M (hourly) to get your yard ready for summer. Two hours in, you look out and see all eight sitting in a circle on your lawn being taught about different types of soil and which is more conducive for different types of flowers, taking up two hours. After a total of eight hours, they finish and you get a bill for eight hours x each employee. Would you pay it? If so, I would like to sell you some lawn services.

16
  • 1
    He didn't mention customers or billing...? Even if you have customers, and you want to ensure your team is continuously learning via separate training or spending time on ramp-up for a project's tech needs, you can explain the benefit quite easily - the current customer is benefiting from all previous customers' costs for that time, which now benefits them, and so on - it continues to be "paid forward". See Menlo Innovations, etc. Commented Apr 28, 2016 at 21:34
  • 1
    Some companies have in-house software shops, where billing a customer does not apply. Even in companies that do development for customers, not every hour is directly billed: overhead costs are a thing, and some companies include professional development as overhead. Commented Apr 29, 2016 at 1:04
  • 2
    In the end, the customer will pay for the training. Either by paying directly for the hours spent on training, or because the training hours are lumped in the overhead costs and drive up the hourly rate. Commented Apr 29, 2016 at 12:28
  • 2
    You guys are talking about the same thing here. Seems like we all agree that it is important to let people grow and let them spend some of their working hours for learning. The factor that seem to put people in odds is with how to bill those hours. When customer is ready to pay for that, let him do so and include it in whatever units are used to account for the effort (for example: story points). If not, then increase the hourly rate and account only for effort spent on project, not learning. To me both approaches are valid as long as they're transparent. Commented Apr 30, 2016 at 19:39
  • 2
    This discussion is quite interesting, and I second @BartekKobyłecki... you are (at some level) aligned, but with different perspectives. I understand that David nailed it saying their work need to provide value to the project, not the other way around. IMHO, we could see this specific case as the investment on technical debt. Is this something that the client expects to pay? No (and thus, zero)... but if properly agreed, both (the efforts on technical debt and / or trainings) can be converted into future earnings and thus being part of the sprint backlog. Commented Apr 30, 2016 at 22:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.