DEV Community

Discussion on: How to lower your AWS EC2 bill

lewiscowles1986 profile image
Lewis Cowles

One silly bit that really should be removed

For now, let’s just assume that you, dear reader, are a minimally-functional adult who understands the concept of owning the things you build.

Let's just assume you never wrote that, because honestly, it won't convince anyone you deem a non-minimally-functional adult to take on your point of view, and anyone that is that in my view will think it's a bit strong.

Devs that own financial costs have one thing in common. Poor management and higher-up team members.

Finance deals with costings. It's their Job to say no if something is unreasonable. It's the CTO's job to ultimately approve or reject large infra costs, and redirect team energy. It's technical architects with an infrastructure focus to choose what infra plans to forward to CTO for approval. It is absolutely a terrible idea to ask someone who is a bog-standard, or even mid-level developer, or sysadmin to guess at infra, or take on yet more responsibilities, others should handle. It doesn't make a painter a poor painter to say they don't decide upon the structural engineering or budget.

liquid_chickens profile image
Chris Dodds Author

I think I agree with you in the context of larger, traditional enterprise development where a dev's entire job might be to maintain a very narrow silo, like "these 5 classes related to the ERP".

In the context of end-to-end ownership, like one would see in a DevOps practice, or smaller, 2-pizza teams within an enterprise (actually, in any environment where decision-making is distributed) I do not agree.

I don't think it's unfair to ask devs to consider factors other than "just the code". Business cases, cost, and ethics come to mind.

Generally, I think throwing cost over the wall to finance is the same as throwing code over the wall to ops. Many of the decisions made at the code level determine cost, especially in a consumption model, like cloud. Finance isn't going to know what's reasonable, because they don't have the context. They only know what % of their budget something is eating.

If the team is stratified enough that there are architects, they likely carry that burden as part of their designs and reviews. Management will own cost at the macro level, but the micro-level decisions that devs make feed into the macro.

My expectation is not that a junior dev is 100% responsible for the cost of the infrastructure it takes to run their code, merely that they understand their ability to impact that cost and take that into account in their decisions.

lewiscowles1986 profile image
Lewis Cowles • Edited on

We mostly agree. But again

Finance isn't going to know what's reasonable, because they don't have the context. They only know what % of their budget something is eating.

It's not "throwing it over the wall" to buy a VCR, or entrust your friend who is all things AV to advise you or purchase a VCR for you (going 80's). Building your own VCR, getting right into it takes something you cannot get back. Time. So only build your own (metaphorical) VCR if you have to. It's not good advice to learn how to build one, or how much the parts cost.

Yes it would be great if you could ask coders to spec out your infra, you'd be short-term saving a bundle on experts. Long term, you'd be asking the painter about interior decor. They are separate skills.