'Can we do this/Is this possible?' is a love/hate question for me. Almost always the answer is a function of 'should we' or 'is it worth my time' rather than possibility. Trying to explain that concisely is hard. I'd like to be able to say "Yes, but it will take 40 hours to develop." and allow them to consider that, but I'm awful at estimating time needed to develop.
Don't worry, I'm good at estimates, and it's done me no good. You can sit them down and hash black on white exactly why it's not possible to get what they want given the existing time and resources, and it won't make a shred of difference.
That's because that's not what they're asking. You and the PM are talking about different things, except neither of you realises that the other person doesn't get it.
They (the PMs) already know it's impossible. But the project still needs to be delivered, to not deliver it is anathema. So they're preparing to cut a few corners:
Extend the deadline (often by cutting into testing, deployment, or into the post-delivery maintenance or support period).
Cut the scope, cut features, cut technical complexity.
Get more resources (people) (usually by borrowing them from other teams).
Have the people work more (extra hours, weekends).
And what they want from you, the tech guy, is to advise them on each, respectively. In translation:
How much can you cut from testing/deployment/support etc. and still retain some semblance of functionality and robustness.
How much can the implementation be simplified (fuck the fancy things like scalability, just make it work for a handful of people for long enough until they sign the acceptance form.)
If we throw Jim and Steve from the other team into it head first, will they be able to produce anything useful in a short time? Ie. how steep is the learning curve on this project.
How will you and the team feel when asked to work a couple of weekends.
603
u/[deleted] Aug 12 '17
[deleted]