4 ms·
If this person worked on my team, they wouldn’t any longer. Not even addressing the question at hand of why we give estimates, the idea that you just want to co
by gabereiser 4y ago
If this person worked on my team, they wouldn’t any longer. Not even addressing the question at hand of why we give estimates, the idea that you just want to code without any repercussions shows me that you don’t understand the job.
Companies (most) don’t hire you to perfect the art of software. They hire you to deliver business value. Estimates are them trying to frame how long it takes to get that value. Coordinating the delivery of that against other company projects/plans or customer project/plans is the business you are in. If you want to just code and experiment, go pursue a PhD and stay in academia.
The people who work for me, with me, report to me, or interact with me know that I’m always focused on value. I could program the best platform I could design but without customers that see value in it, it’s worthless (or worse, costs you money).
- ShamelessC 4y agoIf I worked on your team, I wouldn’t any longer.
- newswasboring 4y agoWould you like to elaborate on why?
- gabereiser 4y agoThat’s fair. At-will employment laws…
- rendall 4y ago> If this person worked on my team, they wouldn’t any longer. So, literally, if you found that a member of your team was the one who posted this question, you would work to get them out of your team? Fired, managed out? No discussion? No, for instance, conversation about how things could improve?
- gabereiser 4y agoNo, not in the slightest. I’m not one to hunt people down. I would tell the author that here’s what we do, why we hired them, if that isn’t in alignment then we wish you the best and will gladly offer a referral towards your next endeavor. Jesus. I’m not toxic. I’m also not going to let toxicity ruin my team(s). Such as baulking at requests for timelines. If you don’t know, say you don’t know to your manager and let the manager, manage. The author doesn’t understand their place in the business just like you don’t understand that you can have hard conversations without playing office politics or being a toxic manager. Hunting people out that don’t believe in the mission. I never work to get people fired. They usually do that on their own.
- gabereiser 4y agoMy point about them not being on my team is that I don’t run a daycare. I also don’t run a research firm with endless cash. I pay you a ridiculous salary to deliver business value. I get paid a ridiculous salary to deliver business value. Anyone in our profession needs to understand this. $150k+ salaries aren’t necessarily normal elsewhere. I’ll pay top dollar for top value but you have to deliver. Does that make sense?
- re-thc 4y agoIs this Twitter where janitors get fired because they don't add "business value" and we have to all bring our own toilet paper? Maybe there's something wrong with this concept of business value then. There's more to it than just a feature = $x. Can you add a new window to your house just by adding $x?
- gabereiser 4y agorefactoring (remodeling) to fit said $x (window) with a competent contractor (software engineer) should be something he/she can estimate.
- re-thc 4y agoIf there are strict deadlines it's not an estimate. Understanding that a deadline is not an estimate is something that a competent manager (or owner) should be able to do.
- lp4vn 4y agoYou use a platitude(creating business value) to reach a non sequitur(that's why developers must estimate their tasks). To say that a developer is there to create business value is a truism that's completely irrelevant to this discussion.
- deleted 4y ago[deleted]
- gabereiser 4y agoThe fact that you see creating business value as a platitude means that you are in a position where any ask of you to help the business succeed will be met with argument. My non sequitur is only a non sequitur to you because you don't understand the statement. You wouldn't say that if you were in a position where delivery was dependent on deadlines and in order for you to capitalize on it, you must deliver before/on the deadline. To be able to tell the business "This is what it's going to take" so that you can execute and deliver is called estimating. Something every developer should learn to do.
- tailrecursion 4y agoThe people who work for you, are their estimates accurate? What fraction of their time is spent on them? What have you as a manager done to improve the accuracy of the estimates?
- reactordev 4y agoMostly, there's still some slippage of some but for the most part we estimate accurately and pad a bit for testing and unexpected side-effects. I've used retrospectives to get better at estimating things and are honest about how well we did with respect to the timelines. Either we missed the timeline because we didn't understand the lift or we shaved the features of delivery to match the timeline. We monitor our velocity and adjust accordingly.
- jiggawatts 4y ago> you just want to code without any repercussions Am I reading this right? You — a manager — just want to be able to assign blame for your own failings to the developers under your command? And then fire them, like sacrificial lambs?
- gabereiser 4y agoNo, you didn't read it right. I was referring to the OP that justs wants to code without giving estimates or any kind of confinement to their exploratory software engineering. I don't assign blame. I don't have sacrificial lambs. This isn't a meat factory.
- austinjp 4y agoDude. Come on. Maybe start with asking your reports how you can help them, rather than jumping straight to quit/fire. And if that's not in your (literal, written) job description, it should be.
- gabereiser 4y agoI do, I don't let it get to this point. But once it is, there's no recourse but to let them find their ikigai.
- re-thc 4y agoDeliver but deliver what? What does value mean? Unless you can ask for precisely what you want (none 1 can in 1 go even if they think so) then if you don't ask how do you deliver? What's the point of providing an estimate that's useless? If you talk about focusing on value then estimates provide no value to that value. All they do is serve a reporting purpose - not delivering in any way to make money so you've just contradicted yourself. So let me ask what value are you asking for? Do you want a website? Well ok you'll get a blank page that says "WEBSITE". Clearly that's not what you want so how do people estimate nothing? Even the owner likely doesn't know what they want. You may feel like it. As others said you'll just lose value because if I come up with x/y/z that DO add value I'm no longer going to mention it because it's outside of estimates and clearly not valued. If I see anything that's wrong with what we're trying to deliver again I'm not going to mention it because it doesn't add value!?
- gabereiser 4y agoHere’s a concrete example. A customer of mine wants to process some data, this processing of data is needed for their fizzbuzz widget they are developing and they need the data before they launch the widget. They want to know how long it will take, at what cost, because I’m bidding against others who also want to do the job. In order for me to continue to operate as a business (and pay staff), I need to sell, in order to sell, I need to give an estimate to the client on how much effort it will be so that they can plan accordingly or select a different vendor. This is an engineering task. Estimate the steps and time it will take. Deliver it. Plain and simple. You don’t know what the data looks like so it’s going to be new. You don’t have a framework. You have some semblance of a schema but it’s written by business folks.
- re-thc 4y agoLike all the other commenters have said you're not really asking for an "estimate". A fixed cost project does NOT have estimates. Estimate occur when you do time and materials i.e. you get charged per hour and it can always get extended. There's competition and you roughly know where the bid will land (assuming you're already experienced) and likely talking to each other. Instead of giving a real estimate anyone knows you pad any real estimate 3x and then drag it out if you're under time. I once tried to give a real estimate, finish it under time and got told for it because then we can't bill the client (time based). Again, no it's not an estimate. It's called I have $x and y time and want to do <z>, how many corners can I cut whilst the client won't notice?