What do you mean you need 2 weeks for this task? Seriously? Just to make this basic form with a few fields and a couple buttons? Two weeks? You’ve got to be kidding me! Let’s see.
Is input data validation really necessary? Sure it is! And it’s better to divide this field into two, it would be more clear this way. That one needs a mask to be added. And this one should be replaced with a dropdown list. Where do you get options for this list? – In the server base, of course. How comes they are not there? Oh, yeah, we used them in another project…well, should be added then. Take from there and put in here. I’ll give you contacts of the project developer, so you can discuss the details. Actually, he doesn’t work in our company anymore, but I think, you can ask what and how, he is likely to give the answers.
Have we covered everything? We haven’t? What else?
Do we need a background picture? Sure, we do. It’s all grey and dull without a background. Yeah, our designer will do it. He’s on holiday? Well, you can make a place holder for now and our designer will be back on Monday and will make the background. No, not this Monday, the next one.
Are we done now? No? Seriously? What else is there? Yeah, there are two behavioral modes – this one and that one. They both seem logical. So we need a setting option for users to be able to choose. No, definitely not on this form. Can you draw a gear that would open a new window with the options listed? As long as we have a setting form now, let’s add this and that to it and then let’s develop according to those settings. It’s been on my mind for quite a while, but we’ve never managed to start it, so as you will be doing it anyway, you can do this thing as well?
Certainly with unit tests. Yeah, with integrative ones. And the localization as well. Yeah, it should work for both vertical and horizontal orientation. It should also be compatible with the previous version. Yes, asynchronously…and with logs…and the documentation needs corrections. How can you even ask such questions? What is this, your first day?
Well, have we settled it now? Finally! And now that everything is crystal clear, let’s assess the situation once again and define the time needed for implementation…
What do you mean two weeks?!
The moral of the story:
Trying to convince a developer that the evaluated task can be done faster is senseless. They can be wrong underestimating the terms but they rarely (if ever) overestimate. If you can help with extra manpower, cut down on the requirements or provide overtime pay, then do it! But when you are trying to persuade developers that there is nothing difficult in it and it can be done faster, you are just lying to yourself and to the customer.