-2

I (senior resource) used to work for a startup and the working hours were (14-16hrs/day) so i joined a new company recently. Now, the team is assigned a task and it involves a lot of POCing, and R&D. The timelines are getting slipped. THis is adding pressure on me which is making me work for 14hrs/day again. (in my team only my task requires POC R&D)

The PM of the project was being informed on daily basis --with the challenges i am facing. However he keeps pushing me or finger pointing at me for the delays. Recently in the updates being given to the higher management the project status was painted green.

At first we were told to send the untested code to prod just to keep the management shut. NOw in the meetings they are also promising to open tothe clients. Clearly its a ticking timebomb. As if this is not enough, as days progress new unknowns are also surfacing.

The PM and my Manager are both in sync. Meaning anything i do, i will have to face both of them + i am in probation.

What can be done to improve the situation. I wish not to work more than 7hr/day.

12
  • 2
    Then why did you not estimate it to be 8 weeks? It seems to me you are working overtime because you promised to be done in 4 weeks, which is totally unrealistic. Nobody but you can fix your estimates.
    – nvoigt
    Sep 22, 2022 at 5:35
  • 2
    no you lost the point. We cant estimate R&D. We cant anticipate unknows in start of the project. Inspite of giving buffers. The problem is that the PM, Managers dont want to sound 'bad boys' and want to keep dodging. NOw i want to gracefully handle the situation -- which i dont knw
    – chendu
    Sep 22, 2022 at 7:10
  • 2
    Well, if you cannot estimate something, then say that you cannot. And state what you need to be able to. Just giving a wrong number instead... well, that is your problem, there is nothing anybody else could do to fix it.
    – nvoigt
    Sep 22, 2022 at 7:14
  • 2
    @Nvoigt one problem is that you tell the manager an estimate, and they hear "100 percent guaranteed time".
    – gnasher729
    Sep 22, 2022 at 11:58
  • 1
    @gnasher729 In my experience, that is mostly a communication problem. If you tell your manager "it will be done in about 6 weeks", they will expect results after 6 weeks. If you tell them "it will take between one and three months" then they have a better understanding that there is uncertainty involved.
    – nvoigt
    Sep 22, 2022 at 12:20

2 Answers 2

13

You said in the comments that you yourself are estimating how long it would take and that you work overtime because it takes a lot longer than you thought.

A very common problem with software developers is, that they cannot properly estimate their work. Many think that estimating means thinking how long it might take under good circumstances. "Oh, I think if everything goes to plan, I might be done in a week". Okay. But this is real life. Nothing every goes to plan. And "almost done" is not good enough. Then there is documentation and the code review that has issues, and the tests that uncovered a few bugs. Many software developers fall into the trap of just using their first "I can type it into the compiler in a week" thought and sell that as an estimate.

Don't.

Estimate the whole process. You are not perfect. Assuming you will get it right the first time you type it into your IDE is madness. When you finished it the first time, you need to properly test it, probably fix all the code issues it still has because you only made it work, not made it maintainable, fix all the bugs that come up and then, show it to shareholders and implement their change requests.

If you think you can get it done in X, double that. If you don't know how to do certain parts, quadruple it.

If you boss thinks that's too much, believe me, they will let you know.

And if it really was too much, no boss ever complained about an employee finishing a task earlier/with less hours than estimated.

If you do find that something takes longer than you estimated, go talk to your project manager and tell them you made a mistake in the estimation and it will take longer.

The one thing that isn't helping anybody is working overtime. Your work quality suffers considerably. It doesn't help to do 14 hours of shoddy work, instead of 8 hours of good work.

So what to do: you need to learn how to estimate. Estimate does not mean give a guess of what it might take under the best circumstances. It's making a list of things to do and then give an estimate how long that will take under normal to bad circumstances.

Nobody can change your bad estimates but you. Learn how to do it. Changing jobs will get your nowhere, if you don't learn to give a realistic estimate, because all your jobs have one constant in common: you.

An addition since you commented it cannot be estimated properly because there are too many unknowns: that is an option. Nobody expects you to work miracles. If you cannot estimate how long your part will take because you do not know how X works, then say "I cannot estimate that properly without more knowledge about X. If you agree, I will look into X for a week and then come back with an estimate of the project". Nobody wants you to give a guess on top of your head. Because that is utterly worthless. If you need more information for a good estimate, tell them.

2
  • 4
    Estimates: A manager shouldn't take estimates by their employees as 100% accurate. If employee X always takes twice as long as their own estimate, then a manager with an IQ > 80 should figure that out, and if X says "3 days" put "6 days" into their own notes. That's what they are a manager for. Especially if the employee is unexperienced.
    – gnasher729
    Sep 22, 2022 at 11:51
  • 1
    +1 - estimates are very important in an SE role. EVERYONE is bad at it at first. Nobody knows off the bat how long something would take, especially in an unfamiliar system. A good manager will know this, but still encourage you to make estimates to help you both learn. Personally, I "x3" the entire estimate.
    – user83977
    Sep 22, 2022 at 14:59
5

Here's a way to give good estimates:

Create a spreadsheet. Then for every task that you do, you write down your estimate, and you write down how long it actually took. The spreadsheet can then calculate the ratio, for example if you always underestimate then you take 273% of the estimated time, or you always overestimate and take 77% of the estimated time.

And after say ten estimates, you let the spreadsheet apply a correction factor to your estimates. So if you estimate 10 hours, in these two cases the spreadsheet will show an estimate of 27.3 or 7.7 hours. And that's the estimate you tell others.

This will get you excellent estimates as long as your own estimates are reasonably consistently wrong.

And stop working more than 8 hours a day. It slows you down. I think the rule is that 6 weeks at 60 hours a week and 6 weeks at 40 hours a week produce the same results, but after six weeks the one doing 60 hours a week will be exhausted and fall behind.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .