Our IT Managers give me a project and says estimate it, how long will it take to get it done. I say well 2 days or more. He think it can be done in 2 hours. Now the project is basically about adding functionality so that we link new accounts with old one. There are definitely going to a challenges that I don't see now. I see such challenges in every project that I do. The problem is, our IT Manager (and some other people) don't seem to think that way. To them it is just straight forward, write some code and it is done, no planning or whatsoever is required.
Well I am company employee. If it gets done in 4 hours, good enough, I will move on to other things. But I need to give a reasonable estimates so that I don't get myself in hot water. If the project does not get done in 2 hours and possibly 1 day, I will be the one to be blamed. This trend has been going on lately in our department where we are given no 'room' in estimating the project. No cushion at all. Just give us minimalistic time to get it done. In that case I can ask, why don't they estimate it and give it to me. And I will most likely get fired (which is fine with me).
But asking me for estimates and then not agreeing with it, who is wrong? Who should be estimating the project? Is my idea of estimating the project wrong that you have to consider unforeseen circumstances and some cushion? How can I educate them that IT projects are not that straight forward? It needs planning, evaluating, writing code and testing.