I don't work at a fast food restaurant, a pizza delivery joint, or behind the counter at a gas station. In fact, I don't work at any job that is minimum wage or there abouts because in my opinion, it's not a livable wage. And, to be completely honest, I don't understand how people manage to live on so little income.
Instead, I chose a career path that requires a lot of technical knowledge and skill in order to stay competitive in the industry and that pays well enough that I can continue to live the lifestyle I enjoy.
Part of my job is to entertain offers for work from prospective clients. This typically includes hours (often days) of communication, information gathering, research, and other unbillable time that I have to put in for them before I get paid a dime.
The ultimate goal of which is to divide up the work with the intent of putting hourly and iterative work totals to their software desire which gives them a cost estimate for the work they want done.
This is the only part of my job I hate. I hate it because all clients want the sky, the moon, and stars -- for free or very little money and scoff and demand to know why we are 'so expensive'.
We aren't - In fact I know a lot of firms that charge a lot more than we do. We are realistic.
An example prospective client hit us up today with a 20 page document (small type!) full of all the requirements that had to be met in order for us to be complete, had less than 3 months to do the work, and wanted the whole shebang for $10,000. All the while bemoaning the previous developers that offered to do the work for that amount but who were unresponsive.
(I will admit that having such thorough document to talk to is great! Many clients show up with nothing but a dream only to have their hopes dashed when we start asking hard questions that they don't have answers to. Define your product, or we can help you define it. But if I define it, it will be an MVP/POC first and iterate into a full blown product. This is a topic for a different post though.)
But the common thread is that no matter the scope of the work, they always think we are too expensive and quite often expect to pay less than half or even a quarter of what is reasonable.
For example; The $10k job above would have required at least two full time developers to get it done within the 3 month deadline, if it's even possible to make the deadline without working a lot of overtime. But assuming its possible to get it done in the time allotted; $10k divided by roughly 60 days, at 8 hours a day, for 2 developers ends up being just above $10 an hour over the life of the project and that's before taxes.
Not a livable wage. A plumber makes more.
I didn't spend the last 20+ years getting experience in my industry and spending an unconscionable amount of extra time becoming an expert to work for so little. It requires a lot of time, effort and energy on my part to stay current and competitive in my industry so I have very little patience with people who think I get paid too much money for what I do.
Sorry, but anyone who says software engineers and architects get paid too much, don't understand what it takes to do what we do.
I think the issue is most people just see the initial number and think its a lot. On the surface, $10k is a lot of money. And if I were given $10k for doing nothing then I'd be happy as a clam.
Most people have no concept the amount of work, time, and effort that goes into writing software and as such they can't really fathom it. Because they can't wrap their mind around it and because there is nothing physical to put value to, it's very easy to think that they are paying us that $10k for nothing and that we should be just happy as a clam for being offered it.
It pains me to have to be the one to explain to them that this isn't the case. The problem comes when you have those people that are actually offended by the amount I say it would actually require in order to pull their dream off. I'm usually looked at as a greedy bastard and thought of as a criminal.
Most firms would charge closer to $100k for that 3 month job. See what I mean? You scoffed a little didn't you.
And I'm just talking about the initial development cost. Not maintenance fees, server hardware, data storage fees, design costs, testing costs etc..
The problem with going with the $10k firm versus the $100k firm is that you get what you pay for. The perceived value is in dollars only, without any thought or consideration to the quality of the work being done or the support you're going to get before start, during development and after completion. (We give 6 months of bugfixes for free.)
They have already approached $10k firm for the product and they don't like the support / communication they were getting (read: the firm has just disappeared because 10k for this project is too low), so why are they looking for another $10k firm that will likely give them the exact same results?
You get what you pay for and people some how refuse to learn that lesson with software.