OK, so you have a sheet of developers team’s hours in front of you for the first time and you’re wondering what the“communication tasks” are all about and why they consume at least 1h per day?! You think: you (the software house) should bill me only for real development, not a … communication! Are we?
The smaller team is where less time is needed for communication. In a “team” of one developer, there is no other pair of ears to listen and to talk to. You can focus on coding and deadlines. Yeah, it’s really efficient. Some classic authors like Tony DeMarco have written books on this topic ( like “The Deadline” – strongly recommended).
But if you’re working on something bigger, having the team – let’s say – of 6 developers + PM + tester- things get complicated.
Costs of miscommunication or no communication can be huge: like features to be rewritten because they don’t cooperate with other developers results. Of course, there is a lot of smaller daily routines needed in such team – like source code merging or peer code review.
It’s rather normal for additional (to core development) tasks to take even 30% of the overall budget in medium to large projects.
Quality expectations are high nowadays; all this has a projection to time spent around coding.
We, at Divante, make two basic assumptions when it comes to scheduling: Tasks are estimated by developers in “ideal hours” or sometimes with “story points”. Those two measurements are abstract because ideal hour means that developer will be no distracted, know everything needed to implement particular task and needs no communication. Roughly speaking: never happened. Setting deadlines and having point 1. in mind – we never plan developer’s speed for more than 6h of effective coding per day, of course when he or she is working 8h (full time). Other 2h of work are mostly for communication, gathering missed data, it/environment setup or daily tasks like peer code review.
They are all people
It’s how it works. We’re charging customers for time really spent on their project, what means in projects where developers are dedicated full time we usually charge 8+WH per day.
Some IT companies (like Accenture and other consulting firms) usually bills Man Days instead of WH – means that developer is working a full day (whatever hours it takes…) on your project.
We use the same approach but – we’re trying to be more detailed/granular for the benefit of our customers.
We usually don’t charge customers for time developer spend on education, breaks longer than 30 minutes / day (time for fast lunch, coffee breaks; please note such breaks like 5-15 minutes are also required by Polish work law, so they are unavoidable).
Developers are just people and outsourcing their work is more or less comparable to hiring them at your company, where they also have to communicate, drink coffee to work effectively. But in this case, we, of course, are providing customers with additional values like processes, code review, educational activities, covering holidays costs and so on.
Communication and … thinking is very often more important than just coding. To have good communication with developers and a good understanding of the requirements as well as being all on the same page – are all crucial to minimize time spent on the project and on fixes later on.
Read also: What your Software House will never tell you