It is the job of the engineer to educate management. if they tell me they need x in y amount of time with z performance and my gut says it can't be done i TELL them! i give them a couple of options but i am not going to deliver a mediocre product. i have, on numerous occasions, gone in against 'the managers' , even in front of our customers. They appreciate this tremendously. Whenever there is a design review meeting or kickoff meeting for a new design one customer DEMANDS that they fly me over ... even if i only need to be there for 10 minutes.
Individual experiences vary. My experience is that I tell them, they repeat the same thing, I tell them again they repeat the same thing again, etc. Any further discussion is useless, might as well get going instead of wasting time.
The reasons why are not that far fetched, for instance:
Sales promised a customer a ridiculous delivery date and has agreed to a contract with a fine for every day the delivery is late. On top of that the contract is not carefully worded, so any last minute changes in demands by the customer will not shift the delivery date back, neither will late delivery of information the customer needs to provide. Just a desperate need for an order to keep a company from going bankrupt is enough to cause this.
I can tell management that the delivery date is shit as often as I like for as long as I like and I would be right. But it is the kind of being right you choke on. They need a design and they need it fast.
And right now, in economic bad times, there are a lot of companies agreeing to some really shitty orders to stay afloat.
better to take an extra day to work it out than spend 3 months trying to fix it later ...
Agree, but it is hard to sell, because while everybody knows this is true, you cannot point specifically to where this saves money and how much money is saved. It is the same for a systems administrator, who cannot point to the network shutdowns that didn't happen, because they hired him.
I simply refuse to deliver crap and i make this very clear. i am not afraid to speak my mind.
Simply nodding 'yes' is the best way to end in the downward spiral of delivering crap , having to fix it later and then being labeled a 'bad designer' since it didn't work right and 'how come your stuff ran over budget and over time'. once you are 'burned' you are 'burned' for the rest of your life. I refuse to fall for that.
And as far as the 'marketing and sales' promises to the customer are concerned : they can get stuffed for all i care.
I have designed a lot of things that needed to be fixed later and I have been labelled a "bad designer" more than once. I also have been labelled "an excellent designer" more than once. In my opinion
mistakes are inevitable when you are pushing the boundaries of what is possible. How someone deals with those mistakes can tell a lot about his/her quality as an engineer/tech/designer.
You can give a good designer a lot of really difficult jobs and make him/her
appear worse than a bad designer you lots of easy jobs.
Also a designer that works 5 times faster than another designer while delivering the same quality will appear to be worse, because in the same time period he/she makes 5 times more mistakes.
As for marketing and sales, without sales you have no orders, without orders you have no job.