I’m working on some new features for this website and in order to do so I had to use a reverse proxy to have certain endpoints route to different microservices. Well, I didn’t have to, as I think apache2 has some sort of reverse proxy thing built into it. But from wasting tons of hours on apache2 and WordPress config, I’d rather not mess with it too much.
Much to my dismay, I still had to mess around with it since I think the letsencrypt certbot changed some things. So I fooled around with the Nginx and apache2 config for a couple hours, getting a range of problems from redirect loops, bad gateways, and errors loading mixed content (https/http) until I finally found a plugin to fix the mixed content issue, and, voila, it’s back in business.
All this tedious configuration got me thinking about engineering costs. Recently I have been doing some thinking about how much I cost the companies I work for. Normally I just collect my paycheck and let the company handle the finances since it isn’t really my job. But since I plan on running my own business someday, that is a bridge I will eventually have to cross and I was curious how much something like a feature or a bug fix costs the company.
If a feature takes 50 hours engineering time, to build it out, write tests, documentation, etc. then at $50/hour that comes out to $2,500 which is a decent chunk of money. Normally I’d be happily coding away but now I’m extremely curious how much everything I’ve built has cost the company, and what the ROI was for it.
For me just to add an Nginx reverse proxy to my website took about 2 hours, which would be $100. I would not be happy paying someone that much for that. But I also don’t have any income from this site, so it makes sense that I wouldn’t be happy.
But a company with a huge market and tons of potential money to be made, that would be a steal. If an engineer builds some feature or automates some process that costs the company $2500, and makes or saves them $10,000 / mo, that is a very good investment. But it ultimately comes down to the size of the market a company is targeting, or the potential money to be made, which is a topic for another post.
Having this understanding will also help me find a job. A job interview is essentially a sales pitch, my software engineering services for $X/hour or whatever agreed upon terms. I can then use my predicted ROI as a value prop to get them to hire me for my services which is extremely important to know how to do. Sales is key to any business’s success, and you are a business.
It sure would have been nice to have learned this stuff in school.