pottymouth writes: I've been working as a software engineer or software engineering manager for about 20 years. When I started in this industry software people were treated with a lot of respect. Our estimates of time and scope on a project were taken as accurate (maybe some back and forth but in general) and if something was said to require x number of man hours that was calculated in 40 hour weeks to estimate how many people and how long this delivery would take. Over the last 10 years I've seen such a change in the SW development field I can't imagine anyone wanting to do this for a living. At my current company we don't even bother with schedules. We have a deadline and you're just expected to work to get it done by the deadline. Typically the work gets done in a half assed fashion with little or no testing and the team takes a beating because quality is poor and features are missing. Requirements are more like a list of "have to haves" and "want to haves" with little or no detail. Morale is like a death camp because we're not able to please anyone because the expectation is unreasonable. Push back will get you labelled disgruntled and at the top of the yearly lay off list. Worse, failure to deliver the impossible gets you the same. We've turned over an entire department of SW engineers (15 people) in 7 years.
I spent 6 years in school getting a Master's degree (computer science). I graduated with a 4.0 in undergrad and first in my class in grad school. After 20 years I still love to write code but I hate how I have to do it so much I don't even want to get out of bed in the morning. From what I've read on Slashdot over the years I'm far from unique. My question for the class is, what are we, as scientists and engineers, going to do about this? It's destroying the scientific/engineering community in the US and demeaning our "profession" (yes, NOT TRADE!!) everywhere. Surely a group as diverse and intelligent as the readers of Slashdot can come up with some way to stop this trend.