But that’s just a few minutes
This is a common statement that I’ve often heard (from clients) and made myself (to team members). Surely, adding a text field, changing the validation logic, adding the Google analytics widget are all changes that you must get done by the time your tech team finishes reading the mail? Why then do they seem to give you such enormous estimates? Half a day? A whole day? How does that even make sense? Are they cheating you?
They could be. Or they could also be careful about what they do with your live site that is being used by a sizable set of your users.
How do you ascertain which of these two is actually happening? And more importantly, how do you build your trust with this tech team on which you are investing considerable time and money on as an entrepreneur? Here are a few checks that you can run through to reassure yourself and understand what is happening.
The first point to note is, you have a right to understand what is happening and therefore the right to ask questions. This is your key strength and when you realize that you can ask questions and your tech team is confident answering them, you will see a lot of misunderstanding and distrust is avoided.
Now, you know you can ask questions. But what questions can you ask in this particular case? The obvious question would be “Why would that take X hours or days?”. While this is the most obvious question, it can often put your team on the defensive. You want the team to be forthcoming with information. So how do you draw them out?
The question that I would ask to any team member who gives an estimate that seems off the mark would be, “Ok, you’ve given me an estimate for 4 hours to add that textfield to the payment form. Can you break down those 4 hours?”
This would result in your tech team giving you something like,
- Creating a new field in the DB and handle validations — 15 minutes
- Running all unit tests after creating the new field — 15 minutes
- Updating the view/add/edit APIs to include the new field — 15 minutes
- Adding the textfield in the UI and ensuring responsiveness it not broken — 15 minutes
- Code review and merging code with staging branch — 15 minutes
- Integration testing to cover all scenarios on your staging server — 30 minutes
- Upgrade production server to load the new DB schema and ensure existing records are not affected — 30 minutes
- Observe production server and stand by for any issues post upgrade — 30 minutes
What you need to watch out for is to ensure your team has time allocated for testing and are following your standard development process. You will also have to understand there are hidden costs in getting such changes done — what is the effort required or lost in your team switching context from their current activity, getting this urgent change done and then switching back to their activity?
But what happens when despite the breakdown you still don’t seem convinced? The first point to note here is when you have a breakdown, you have already reduced the area of conflict. You are not wondering any more about why it will take 4 hours to add a new text field, but why do you need a 30 minute observation period after the production server has been upgraded.
In this case you need to get your team into a discussion and get them to walk you through the task in question in detail.
Do not hesitate to ask them to walk you through even the code if need be, because this is not just an exercise in estimation, but an exercise in building trust and confidence. If your tech team is the right kind, they will in fact, be eager to help you get the clarity you want and also put in measures to ensure there are checklists in the future that give you the clarity you need even before you ask for it.
If you can go through this kind of a discussion a couple of times, you will see that you can start trusting your team implicitly based on the replies they give you. (If of course despite repeated such discussions you don’t seem to gain the confidence required, you need to evaluate the relationship with your tech team.)
To summarize, when there is a conflict over how long a task must take, go through these steps
- What is the breakdown of the estimate?
- Does the breakdown handle necessary processes and checks to avoid disruptions in service?
- Is there still a conflict over a certain aspect of the breakdown? If so, can we please sit and talk about it?