Live data from Hacker News

How should I behave as a developer in a project that's headed for failure?

programmers.stackexchange.com

151–160 of 163 posts

Re: How should I behave as a developer in a project that's headed for failure?

#151

Earlier quoted context omitted.

Maybe it sounds extreme, but I agree with @edw519: you don't want to work at a place that lets a project fail as badly as the OP described it. I've been in situations like that too often and I've learned that particular lesson too well. Like @angdis said elsewhere in this discussion, projects "fail" all the time, but the OP is talking about a specific kind of failure. Notice how many commenters mention "finger-pointi…

I think that level of "failure" isn't exceptional in the field. It's very frequent that "Team A" works on a software product and gets some of it done. Then the work gets sent to "Team B". "Team B" usually finds many deficiencies at work in the code. For instance, people frequently bungle the design of 10-table databases, so perhaps there are dragons in the 100s of tables. "Team B" sometimes delivers the product, usua…

> It's very frequent that "Team A" works on a software product and gets some of it done. Then the work gets sent to "Team B".

First: why is that? Are there good reasons for this, and does this happen for those reasons?

Now, knowing nothing about the company, if I learn that every other project suffer a change of team before going into maintenance (officially and actually), then it's substantial evidence that something is wrong with management.

Whether one should quit of course depends on how wrong.

Re: How should I behave as a developer in a project that's headed for failure?

#152
post #87
post #46

I've picked up so many of these types of projects, it's sort of become my specialty. The first thing to do is to ask oneself if it's worth completing the project at all. All stakeholders _will_ have to be ready to make some sacrifices; is it worth it? Also, like others have said, communication is key. If the team can't have open conversations up-front, it may be best to walk. But, if the team can communicate openly a…

As a Developer, I would buy a book or pay for a class on a topic covering how do you improve team dynamics and strive for success. Most of my schooling and knowledge is from the perspective of building a 'thing' and it would be great to learn how to rebuild a team when management is lackluster. Out here in Silicon Valley there are a lot of inexperienced managers working on good or great products, and as an engineer y…

I've had recommended "The 360deg Manager"

Re: How should I behave as a developer in a project that's headed for failure?

#153
post #3

Choose from 2 extreme alternatives: a. Treat this project as if it were your sick child on life support. b. Treat this project as if it were a gazelle being ripped apart by a pride of lions. If you choose (a), do anything and everything you can to save it. Be open and sincere and stop at nothing. If you choose (b), prepare a resume and run the other way. No sense risking your own well-being on a lost cause. The worst…

One thing about b I would hate: Bring a small team they may spin my departure as having been the ultimate cause for the projects failure.

Re: How should I behave as a developer in a project that's headed for failure?

#154
post #3

Choose from 2 extreme alternatives: a. Treat this project as if it were your sick child on life support. b. Treat this project as if it were a gazelle being ripped apart by a pride of lions. If you choose (a), do anything and everything you can to save it. Be open and sincere and stop at nothing. If you choose (b), prepare a resume and run the other way. No sense risking your own well-being on a lost cause. The worst…

There's a good idea here, to manage your level of commitment, but it's lost in the idea that it's a binary decision. To get high performance without burnout it is necessary to switch from complete engagement to complete disengagement every few hours. The Serenity Prayer from Alcoholics Anonymous is asking for the right thing here, even if you aren't religious. "God grant me the serenity to accept the things I cannot…

It's great to be passionate but it's also important to be detached about things you can't control.

This is fantastic advice, and one of the main things I tried to drill into my team (when I had one), with fairly mixed success. It's very hard to convince people who are attached to a project that they should at any point just go "meh, what can you do?" but sometimes that really is your only option. Advice for any startups in this situation - if you really have to impose some awful condition on your workers, make sure you explain it fully to them. It's easier to accept something you don't like being imposed on you if you understand it, even though you don't agree with the reasoning.

Another really tricky fine line is, having done this a couple of times, to then stop people going "meh, screw it" when they really can control the outcome, but just don't feel like it for whatever reason.

Re: How should I behave as a developer in a project that's headed for failure?

#155
post #3

Choose from 2 extreme alternatives: a. Treat this project as if it were your sick child on life support. b. Treat this project as if it were a gazelle being ripped apart by a pride of lions. If you choose (a), do anything and everything you can to save it. Be open and sincere and stop at nothing. If you choose (b), prepare a resume and run the other way. No sense risking your own well-being on a lost cause. The worst…

One thing about b I would hate: Bring a small team they may spin my departure as having been the ultimate cause for the projects failure.

Ultimate compliment?

Re: How should I behave as a developer in a project that's headed for failure?

#156
post #3

Choose from 2 extreme alternatives: a. Treat this project as if it were your sick child on life support. b. Treat this project as if it were a gazelle being ripped apart by a pride of lions. If you choose (a), do anything and everything you can to save it. Be open and sincere and stop at nothing. If you choose (b), prepare a resume and run the other way. No sense risking your own well-being on a lost cause. The worst…

It makes sense if you're absolutely, positively sure that the project is doomed and there's not a slightest hope for it. But even assuming this, choice (b) is only local optimization. One could consider instead doing (c) - to try as hard as possible to convince the management to shut down that project ASAP, and thus saving the company many man-hours of wasted work. The global gain will be much greater then. Of course…

I just today talked with friends that work for Samsung and the amount of wasted everything they told me about was staggering. I don't think that there is anything such companies couldn't waste and forget about. This makes the management stubbornness all the more probable and makes trying to save "work-hours" pointless. That's pretty scary shit, but apparently that's how it works in such companies. I don't want to ever work in such an environment.

Re: How should I behave as a developer in a project that's headed for failure?

#157

Earlier quoted context omitted.

It makes sense if you're absolutely, positively sure that the project is doomed and there's not a slightest hope for it. But even assuming this, choice (b) is only local optimization. One could consider instead doing (c) - to try as hard as possible to convince the management to shut down that project ASAP, and thus saving the company many man-hours of wasted work. The global gain will be much greater then. Of course…

I just today talked with friends that work for Samsung and the amount of wasted everything they told me about was staggering. I don't think that there is anything such companies couldn't waste and forget about. This makes the management stubbornness all the more probable and makes trying to save "work-hours" pointless. That's pretty scary shit, but apparently that's how it works in such companies. I don't want to eve…

Yeah, I guess it depends on the size and make-up of the company. When I was writing that comment I was imagining a small/medium sized company, doing one or two big projects at the same time. If the company is so big that it can waste everything and still go forward by its inertia, then I guess leaving promptly is the right choice.

Re: How should I behave as a developer in a project that's headed for failure?

#158

Earlier quoted context omitted.

Maybe it sounds extreme, but I agree with @edw519: you don't want to work at a place that lets a project fail as badly as the OP described it. I've been in situations like that too often and I've learned that particular lesson too well. Like @angdis said elsewhere in this discussion, projects "fail" all the time, but the OP is talking about a specific kind of failure. Notice how many commenters mention "finger-pointi…

I wonder if a company culture that is heavy on blame when things go poorly is conversely liberal with praise/rewards when things go well? Might not be that bad of a place to work if so.

Dreams are free. In the real world, management will typically take all the credit if things go well, for the same reasons as they'll blame-shift and arse-cover if things don't.

Re: How should I behave as a developer in a project that's headed for failure?

#159
post #68

Earlier quoted context omitted.

That's not true. Being able to endure and suffer silently is a skill that is often the way to survive through struggles and win the game in the end. It is mostly the case for politicians and mafia members, but it is also useful for developers.

Sure, you can play the endure card and just do your job in the hope of one day pulling ahead of everyone. But what if that isn't the case? What if you silently work your ass off and then get laid off anyway? If there's one thing I've learned, it's that you earn what you put in. It's in your interest to push the product, create a drive in the company and basically make it the best environment for you and everyone else…

I'm not advising anyone to "silently work your ass off" because that doesn't work either. If you're on a failing project that will harm your career, leave. But leave silently unless there's a credible chance you can fix it (and usually, you can't).

If the project is doomed to failure, being a PITA means you're more likely to get fired while silently working out a transfer or next gig has only upside.

Re: How should I behave as a developer in a project that's headed for failure?

#160
I found myself doing consulting work alongside running my startup for a company called The Point that had this dumbass idea to create a "cause" and if enough people joined the cause it would reach some kind of tipping point and the thing would happen. The founder I was reporting to, Andrew, was nice enough, but I had no faith in the idea. My job was to develop a web based widget which seemed to have no reason for existing, but I happily did it anyway and took their money. 3 months later they pivoted, rebranded and today their market cap is $4.9 Billion.

1.5 months is nothing. You probably don't have all the data. Be a big boy, stick it out, do a great job and then politely and professionally move on to your next gig.

Post reply on HN