6 ms·
Confession time: In 40+ years of doing software, I've met my schedule once. Actually, that's a lie. I missed by a week on a 150-day long project, my very first
by kabdib 6y ago
Confession time: In 40+ years of doing software, I've met my schedule once. Actually, that's a lie. I missed by a week on a 150-day long project, my very first project at my very first real company, and that's the closest I ever got with my own estimates. And on that project, marketing wanted it pulled into 30 days (and to hit that 150 days I was doing all-nighters and basically killing myself, so it wasn't a very good schedule to begin with). [For the curious, it was a game cartridge].
The real losers of "schedule chicken" are the customers, who receive buggy and bad products. The company will suffer long product update cycles because of the effort needed to stay ahead of the quality debt. Explaining this to a manager who's never even read even one of his copies of The Mythical Man-Month can be tough.
Things aren't necessarily better when you let a project freewheel. "You'll ship someday, just do a good job and get it right" doesn't necessarily translate into the urgency to ship a product, and I've seen efforts on the scale of tens of millions of dollars fail.
Other arbitrary dates include things like shows (well, what is the real cost of missing that show versus shipping something buggy to bad reviews?) or holidays (hitting Christmas used to be a good excuse for schedule pressure in the game industry, much less of an excuse now).
[Anecdata: Years ago there was a manager at Microsoft who told his team to ship by some arbitrary date, which turned out to be when he was planning to go on a long vacation. I'm happy to say that Microsoft fired him.]
- commandlinefan 6y ago> I was doing all-nighters and basically killing myself I often suspect that the true goal of most time-estimation exercises is to guilt you into working unsustainable amounts of unpaid overtime.
- xupybd 6y agoI honestly don't think so. Companies have finite resources and need to allocate their use efficiently. That's hard to do when you don't know how long it will take / how much it will cost. If you don't think you have the money to meet the estimated project time you need to find ways to reduce the time. Sadly that leads to problems as described in the article. The is an impedance miss match between software development and real world business reality.
- almostdeadguy 6y agoIf your product development process constantly places you into dilemmas where a development effort requires a commitment to cost and timeline that could damage the company if either is overshot, they either: A. aren't testing enough / at all or haven't given any consideration to what is the smallest change needed to deliver value B. have serious organizational problems around coordination C. are running a company completely unsustainably
- xupybd 6y agoD. You are a consulting company and fix price your work.
- jerkstate 6y agoyes, it's called a "forcing function" and management is full of similar techniques
- Insanity 6y agoWhy would you though? I don't see the point in working all-nighters for a company unless you have a stake in the company (shares or owner). For my own company, sure I'll pull an all-nighter before an important meeting, for a company where I am one of hundreds? No thanks. Labour laws tend to be more protective here in the EU though so no fear of being fired by refusing rediculous requests.
- latencyloser 6y agoIf you don't do it, there's always a willing colleague who will. At least, that's been my experience in FAANG and related companies. Since I became...complacent, I guess... and started only working 9-5 for the most part, I can't keep up with my colleagues who are working seemingly every waking minute. It's a great way to get passed up on promotions, not get handed the "good" projects, and just generally be sidelined from decision making. Ymmv of course.
- throwaway713 6y ago> If you don't do it, there's always a willing colleague who will Haha, isn't this the truth. I work at one of FAANG as well and was curious how one of my colleagues was accomplishing so much. His output is astonishing. I checked his work profile and noticed he had commits, notes, and research actions starting at 7:00 AM and going until 1:00 AM the next day, every day, including weekends. I don't think the founder of this company ever even worked that much. I guess there's just some people who never burn out. Meanwhile, my wife gets annoyed about dinner when I work past 6 PM...
- mjfisher 6y ago> Explaining this to a manager who's never even read even one of his copies of The Mythical Man-Month can be tough. Perhaps he should read both simultaneously and finish in half the time...
- wool_gather 6y agoThe manager and their boss should read alternating pages and then explain each chapter to the other.
- rubidium 6y agoCounter anecdote: I’ve been on teams shipping 50 custom software projects a year. We hit 90% of our deadlines.
- chasd00 6y agoI bet you worked in a small consultancy right? Smaller firms are eat-what-you-kill hard nosed business and if you can't make good estimates and deliver on your promises then the lights go out. I led delivery in a small firm for the past 2 years before leaving for one of the big players, we were very good at estimating and delivering on those estimates because that's how we made bank account deposits. I think a lot of developers deep in the bowels of large companies are completely disconnected from their work and their paycheck. Granted, a lot of management deep in the bowels of large companies are equally disconnected. It would be good for a developer out of college to spend a couple years in a small consulting shop. You get to see the whole business of software development end-to-end. It gives you perspective you wouldn't get in a large company or in like a highly specialized technical team.
- JamesBarney 6y agoI think there is some truth to this. I was better than most devs when I was in a big organization (due to reading Steve McConnell's the black art of software estimation), but starting my own consultancy has made a huge difference. Nothing like eating a part of an invoice to keep a client happy because you mis-estimated to take your estimation skills to the next level.
- rubidium 6y agoYour bet is correct.