9 ms·
I have more macro questions about this. Sometimes I find engineers aren’t best placed to evaluate cost at all. What might be perceived as expensive (say relativ
by jbs789 2y ago
I have more macro questions about this. Sometimes I find engineers aren’t best placed to evaluate cost at all. What might be perceived as expensive (say relative to a salary) is not expensive at all in the context of the business problem being solved.
Think there’s a book called “measure what matters” and the idea is what we measure shapes companies and behaviour. So I’d be very careful about implementing anything like this in my org.
- rumno0 2y agoYou're right, there are multiple roles for FinOps in an organization from the engineer up to finance and engineering management. This is tackling one aspect of this - highlighting the cost to the engineer.
- mhuffman 2y agoWhy not provide it to them all then? Have you considered piping your results to a (possibly cloud hosted) dashboard that might offer (possibly aggregated) real-time cost estimates to people higher up the corporate chain? A high-level view of the cost of what is being created, if you will.
- rumno0 2y agoThis is effectively what Infracost Cloud is (https://www.infracost.io/ https://www.infracost.io/) It adds things like management of guardrails and policies that can be maintained by a finops role, or engineering manager. PRs can block or notify if thresholds are going to be breached by a specific PR.
- delusional 2y agoI'd be careful about implementing it without the appropriate support at least. The cheapest option is to do no work, that's not going to get you very far. The cost of the infra always has to be held up against the value of the product.
- gopher_space 2y agoIn this context I'd expect cost to relate to hardware and bandwidth. Simplest example might be bucketing memory or storage requirements against the different tiers of offerings. Personally, baking this kind of spreadsheet work into a pipeline was a moderate pain in the butt and hazardous to fully automate.
- langcss 2y agoI like the idea that a PR could surface a cost $1000 a month say then finops reviews that PR. The dev doesn't worry about it unless it is obviously crazy, I.e. above a team budget. If so they sanity check the code.
- lumost 2y agoA finops person will need to understand the cost and the alternatives. This could add a lot of unnecessary friction to a necessary and reasonable activity.
- pclmulqdq 2y agoThis is why the engineer should be the one understanding the cost.
- langcss 2y agoYes. Everyone involved should. It is a non-functional requirement.
- lumost 2y agoshould they? The business needs to understand the cost trajectory of the service. But it's very easy for large organizations to be penny-wise and pound foolish. A company employees engineers in the hopes of reaping value significantly higher than their pay in the future. Analysis takes time, time requires money - reviews require multiple people's time. If you are looking at 1k per month in expenses - but spend 1 month debating methods of saving ~500 bucks per mont at the cost of ~1 engineer. You can easily be looking at a 20+ month time to return on investment. Computers generally halve in cost every 2 years - so you're time to reach a 2x ROI can easily be 4-5 years. Most businesses need a return on capital of ~10% to justify investors not simply placing their funds in the stock market.
- pclmulqdq 2y ago
- pclmulqdq 2y agoWhat about money doesn't matter to a company? Why should you isolate an engineer from that as though it doesn't matter? As an electrical engineer, we scrounged for every cent on devices when they were being released. A TVS diode can be replaced with a capacitor? That's a cent. A cheaper processor? Several tens of cents. Over ten million devices plus the legacy of your design into the next generations, that's a lot of money. Someone else negotiates the price of the TVS diode and the processor, but that doesn't mean you should be isolated from the cost. A thing that does X and is more expensive is worse than a thing that does X cheaply. Software engineers spend fractional cents on requests executed thousands of times per second. That's the same scale as the electrical engineering example when you do this. As far as I can tell, most good software engineers are very cost aware. That doesn't mean they don't do stuff. They just understand the cost of that stuff. This does seem to be a big divide between senior and junior engineers, as well.
- bongodongobob 2y ago> Why should you isolate an engineer from that as though it doesn't matter? Because it's not their job and therefore they don't have the information necessary to know what is or isn't expensive. Their job is to come up with the best design using common sense when it comes to cost. Cost of a part isn't the only thing that matters either. Ok, we can save 1 cent if we swap this part out. But now we have to purchase lot sizes that are 10x bigger. How does that impact production? How does that affect operational budgets? Etc. The engineers engineer and the bean counters count beans. They meet and find a happy place. Why would you even want that extra workload? The fact that you think it's so easy just goes to show why actual accountants do the accounting, managers do the managing, procurement does the procuring, and operations does the operating. "I know calculus, accounting is easy!" Sure, if you throw out all of the variables other than unit cost.
- Panzer04 2y agoThis seems insane to me. It's not that hard to have a ballpark awareness of how much things cost. You need accountants etc because you need to ensure that all of the little things are done, not so that everyone else in the business can be unaware of the business case for their product. Yes, you shouldn't care about lot sizes and cost breaks (unless they are significant deciding factors), but knowing that one operation is going to cost 2x another, largely equivalent operation is relvant/important.
- Jgrubb 2y agoIt's performance optimization - you're well positioned to make decisions about execution times and app responsiveness but too often app devs are gatekept away from the cost data. Tools like this try to fix that. This is net good.
- natbennett 2y agoYeah I’m all for engineers knowing about the economics of the business but the people saying “this is ridiculous of course engineers should know what things cost” are substantially undercounting the number of engineers who value their own time at $0