Fog Creek Software
Discussion Board




How to let managment know about quoting

Typcially, at my current workplace,  management makes quotes for software development without consulting the software developer.  This has led to some extremely interesting situations.....people have tried to sue us for being late on software.

Nobody seems to have learned the lesson.  Just today a quote was finalized and signed by the customer without a developer seeing if the timeline was reasonable for the amount of software changes required.

What can I do to change this without jeopardizing my employment.

Frustrated at Work
Monday, November 25, 2002

As soon as you receive the schedule or timeline or whatever you get, evaluate it for risk and report it, preferably numerically (i.e.  "we have a 30% chance of meeting this timeline given current scope, resource, quality, and budget constraints).  In other words, get as many facts and figures onto the table as possible and make them as public as possible.  Someone will see those numbers, panic, and hopefully do something about it.  This also puts the responsible parties into the position of either explicitly telling you to lie by altering the numbers, or answering some difficult questions.

burned out PM
Monday, November 25, 2002

"we have a 30% chance of meeting this timeline given current scope, resource, quality, and budget constraints"

It's been my experience that a lot of management will just say "great, we can do it ..."

That is to say, they plan to hit a series of home runs out of the park, without considering that, for the majors, a .300 batting average is pretty good.

So, 30% might not do it ... far too many people will simply roll the dice and hope they get lucky.  But it's better than nothing ...

Matt H.
Monday, November 25, 2002

To a large degree, you can't, although 'Burned out PM' is on the right track: get something in writing as soon as possible.  Do the best you can to educate the "people above you" about the situation.

At my former (notice I say former) job, the sales guys would literally just pick numbers: the highest dollar amount they could squeeze out of the client and still get them to sign, and whatever delivery date the client wanted they were promissed.  Either you have project managers and Owners who support this mentality or your don't.

There has been some good discussion in another thread about questions to ask an employer during the interview process.  Some of these may help in finding your next job.

By the way, does anyone know of a good forum that lets developers "vote" on employers as to whether or not they are "good"?  We can't all work at Fog Creek, and employers can lie to our questions at interview time.  It would be great to at least help distinguish the good situations from the bad, based on other people's experiences.

Scot
Monday, November 25, 2002

In some companies it is totally intended to give the customer impossible delivery dates. I know two reasons
for this:
1. The customer won't buy if he is promised delivery in three years. He will sign if he is promised delivery in half a year. If , after half a year, the customer does not get the full thing, he is promised "just another 6 weeks" ... and so on. The customer wants to be lied at at first. (It is the same with elections. Usually the party gets voted that promises to reduce taxes ...)
2. A second reason may be to build pressure onto the
developers.
But in my experience the first reason is much more important.

AW
Monday, November 25, 2002

AW has the right of it - the deadline pressure is typically there to drive down lead times when negotiating with the client.  The general approach is to make unreasonable promises to the client about delivery dates and then build some safety back in later on when negotiating changes with the clients.  Since all the folks trying to land the contract are adopting the "lie now, fix later" approach, you actually place yourself at a serious competitive disadvantage by being honest.

Lots of industries do this.  Ever wonder why all those constructions projects run so far over schedule and budget?

To gain a competitive advantage in a market like this requires a whole lot of work, especially in educating the client - solid information in the key.  They need to know why they should choose you even when your quoted lead times are longer than those of your competitor.  Tricky situation, for sure.  You also need to drive your lead times down as much as possible while preserving your ability to deliver on time reliably - also difficult, but not impossible, to do.  If you can pull these two things off, though, you will own your market segment while your competitors scramble to play catch-up.

burned out PM
Monday, November 25, 2002

The key objective for you is to less frustrated at work, the first step is to see the time estimates for what they are.

That's not to say that management dont need an accurate picture of the actual timeframe so that they can manage the when and where of the lies they are going to need to tell.

I understand the problem though, to tell management that you cant do it on time can cast you in a bad light, even though you are right.

Play the game, if they can lie, you dont need to worry too much about agreeing  or disagreeing with them, either way.

Alberto
Monday, November 25, 2002

Over the years I have come to the depressing conclusion that in companies where the managers or sales do the quoting then there's nothing a programmer can do to improve the quoting.

There are usually political issues in those companies that will stop any change ever happening.

Matthew Lock
Monday, November 25, 2002

Frustrated, when you're working for morons, you have to learn to treat them as morons. Use your imagination. But get rid of the idea you will be able to reason with them.

Must be a manager
Monday, November 25, 2002

Unfotunately, that's just sales in any industry.

They don't care about the reality of your situation.  The reality of their situation is to close the deal, beat the competitor, get the commission, etc.

And the more they lie and cheat, the more your company probably takes notice and rewards them.  The "quality" of a sale is only measured by the dollar amount.  When the penalty for doing wrong is 10% commission and a full-paid week at some island resort once a year, don't expect you'll be able to change anything.

Torment
Monday, November 25, 2002

In quite a few companies, many projects do not get completed. From the "looks" of it don't think you can make much of a difference.

Do a good job of whatever you are working on, update your resume, and be on the lookout for a new job, 'cos when the project is not done on time, someone has to take the blame, invariably that will be a few consultants and programmers.

Prakash S
Monday, November 25, 2002

Remember that bad news is always best early.

As soon as you get that situation arising, you have to start carrying on really loudly about how you can't meet the deadline. Throw out all those rosy ideals of "Maybe... if I work 18 hours and sleep under my desk..." Nah - That's just not the way life works.

Tell your boss. Tell the boss of your boss. Ask them when you're hiring all the new staff. Make it clear that you live in real life, even though management don't.

No amount of delusion will force the software to ship on
time.

pod
Tuesday, November 26, 2002

No, no, no, this stuff about "carrying on really loudly about how you can't meet the deadline, " and "Tell your boss" never works when you're dealing with morons.

They will just congratulate themselves on how clever they are at fobbing you off and "encouraging" you to work harder. People like this deal in leverage. Be creative. Find the porn on their hard disks or something.

Must be a manager
Tuesday, November 26, 2002

My guess is management thinks this is how things should be, and that management is responsible for scheduling. 

While this is partly true, you have to make them understand that while they are indeed responsible for scheduling they should also take into consideration input from the people who will actually do the work (ie. the developers) before finalizing the schedule.  Additionally, to help back up your suggestion, give them links to articles on the web, etc. for them to read which promotes involving estimate inputs from developers.

By putting it this way, management will still feel they are still important and needed, which is usually the most important thing to most of them; and this probably also applies to everyone and not just management.

HeyMacarana
Tuesday, November 26, 2002

Many good points here already; I'd only add that if you decide to solicit 'ammunition' to present early on to management, once the irrational deadlines land in your lap, don't forget to hit up members of the team besides just the developers--visual designers, documentation folks, sysadmins, QA folks, etc. If you're going to try to show how big the 'pie' really is to mgmt, you might as well try to get all of it considered. I guess if you're really lucky, these other folks might throw their voices behind you as well (ok, so maybe that's a bit too optimistic, but I guess it could happen someplace, someday).

I heartily agree with including these sorts of things in your interview questions for the company as well -- that was a very good point. Sales folks are not inherently evil <g>, but like all of us they will react to their reward structure, so you might want to ask how the sales people are rewarded, e.g. do they get commission based on what was signed, or do they also have some monetary stake in actual delivery? If they are constrained to sell what can actually get built in order to get their all their compensation, that can correct a lot of this sort of thing. Not all places work this way, though.

anonQAguy
Tuesday, November 26, 2002

anonQAguy:

this is why Joel says:

http://www.joelonsoftware.com/articles/fog0000000070.html

Prakash S
Tuesday, November 26, 2002

I heard once :

- In a company ruled by salesmen, every project fails and the turnover is high because teams are demotivated by unrealistics schedules.

- In a company ruled by PMs, you can't sell a project because potential customer are scared with risk lists longer than the arm.

Maybe the two worlds should match one day.

I once worked for a big french car constructor. Every single hired employee spends one month building cars on an assembly line and one month selling cars for a dealer.

I think it's great, because you understand much better what the business is about.

We all tend to stay in Plato's cave when considering other people's work. Then it's really easy to say :

- Salesmen only see numbers.
- Managers are morons.
- Users are dumber who don't care about the tools we make for them.

Maybe the world is not that simple.

Maybe we should all spend 2 month in a sales departement making phone calls all day long.

Ralph Chaléon
Tuesday, November 26, 2002

I have met one or two sales people who have been really good, both at their job, and who actually understand the realities of what they are promising or selling.

However, that does seem rare. The problem is that you don't need any quantifiable skills to be a salesman so it's the place where people with no skills at all often end up. This probably irritates the good salesmen as much as the rest of us...

JB
Tuesday, November 26, 2002

Monsieur Chaléon, it's certainly true that it's good for staff to experience different roles. The problem we are discussing arises because the salesmen have never experienced development roles.

Must be a manager
Tuesday, November 26, 2002


Frustrated:

You might want to read "Death March" by Yourdon.  It's got a few interesting points.  Take it with a grain of salt, but some things in it might help.

Matt H.
Tuesday, November 26, 2002

'Never ask someone to keep the secret about what you told him. Because you can't expect him to do what you just didn't'.

If we're the smart people and they are the 'sometimes good but easily not', we have to show it with our work but also with a better understanding of how it fitts in a whole (in which sales, I'm afraid, has a VERY large part).

Don't believe I don't have my own proplems with salesmen, we all have. But I think they all can be solved by understanding each others point of view.

Ralph Chaléon
Tuesday, November 26, 2002

What can you do to CHANGE this?  Probably nothing.  What can you do in RESPONSE to it?  Quite a bit.  If people are going to be making unrealistic commitments on your behalf, the least you can do is prevent them from living in a state of delusion about what they're doing to you.

I suggest you do what Joel described in his Painless Software Schedule articles - you make your own estimate and post it in a very public place alongside the manager/salesman's estimate, updating it weekly.  Let everyone see who's numbers stack up to reality.

Norrick
Tuesday, November 26, 2002

*  Recent Topics

*  Fog Creek Home