Is it common to only pay developers for the time they said a project would take?
- by BAM
I work at a small startup (<10 people), and I was recently assigned (along with one other developer) to a relatively small project. The project involved moving an existing iOS app to Android. The client told us they had built the app for iOS in 300 man-hours. Not knowing at the time that this figure was completely false, we naively and optimistically assumed that if they could build the app from scratch in that amount of time, we could easily "port" it in a similar amount of time. Therefore, we drafted up a fixed-price contract based on 350 man-hours, with a 5 week deadline. (We are well aware now of how big of a mistake this was... Never let the client tell you how long it's going to take!)
Anyway, by week 4 we had already surpassed our 350 hours, and we estimated that there were at least 2 more weeks left on the project. We were told to continue working, but that the company could not afford to pay out on overdue projects anymore. I thought this just meant "be more careful about estimates in the future". However a few weeks later, the company president informed us that we would not be getting paid for any time past 350 man-hours.
We argued over the issue for almost an hour. He claimed, however, that this is standard practice for many organizations, and that I was unreasonable for making a big deal out of it.
So is this really a common thing, or am I justified in being upset about it?
Thanks in advance for any advice!