I couldn't agree more, I've come to the exact same conclusion over the past year. I've built two different web applications, where the backend was entirely composed of Lambda functions. In theory it sounds great, and in the beginning it was. We didn't have to worry about environments, servers, containers, up-time, etc. But I quickly realised, that the complexity was just moved, to now be about executions, orchestration, event communication, and most importantly, the lack of a great local development workflow.
... I'm sure you can cut the bill by 50% if using serverless, but is it really necessary? What things are you trading off by doing that?
Exactly! Sure, your infrastructure bill will go down, but without a great local development setup, your productivity will go down too! And IMO serverless hasn't yet solved that problem. In the software industry, the cost of time is MUCH higher than the cost of infrastructure (many miss this point). If the developers are just 5 % slower, because it's a bit more complicated to run the backend while developing, you will NEVER see those savings, because the developers' pay-check is huge compared to the infrastructure bill.
And that's just talking money, now factor in employee satisfaction, planning, etc.
I run technology at Ingenious, an agency specializing in building products for the healthcare industry. 💛 remote work ‧ sometimes 🔨 are the best tool for the job.
I totally agree! I do feel we tend to copycat what works for other companies and extrapolate to our own use case, and here's the catch, most of us don't need the scalability serverless provides, but all of us using serverless will pay the upfront cost of service orchestration, and reduced developer experience.
Yeah, it's totally underestimated how many millions request ywe can handle a day with even a medium sized EC2 instance or similar, and the majority of us will never need more than that.
You're exactly right. Human time will almost always cost more than hosting.
I'll add that "serverless" is not always cheaper than traditional hosting. By the time you hook up all the services, and require more usage than the free tier but less than the high volume discount tiers, you could end up spending around the same. The cost savings really depend on the use cases.
I'm a father of four. I started out as a self-taught programmer, completed a B.S. in Computer Science and am currently employed full-time since 1998.
I also own a small mobile software company.
Don't forget that going serverless, in its current state, is also handing control over to a few companies (primarily GCP, Azure and AWS). Hosted servers give you a little more control and the freedom to jump ship to another host if something goes wrong (or prices increase).
I run technology at Ingenious, an agency specializing in building products for the healthcare industry. 💛 remote work ‧ sometimes 🔨 are the best tool for the job.
I couldn't agree more, I've come to the exact same conclusion over the past year. I've built two different web applications, where the backend was entirely composed of Lambda functions. In theory it sounds great, and in the beginning it was. We didn't have to worry about environments, servers, containers, up-time, etc. But I quickly realised, that the complexity was just moved, to now be about executions, orchestration, event communication, and most importantly, the lack of a great local development workflow.
Exactly! Sure, your infrastructure bill will go down, but without a great local development setup, your productivity will go down too! And IMO serverless hasn't yet solved that problem. In the software industry, the cost of time is MUCH higher than the cost of infrastructure (many miss this point). If the developers are just 5 % slower, because it's a bit more complicated to run the backend while developing, you will NEVER see those savings, because the developers' pay-check is huge compared to the infrastructure bill.
And that's just talking money, now factor in employee satisfaction, planning, etc.
I totally agree! I do feel we tend to copycat what works for other companies and extrapolate to our own use case, and here's the catch, most of us don't need the scalability serverless provides, but all of us using serverless will pay the upfront cost of service orchestration, and reduced developer experience.
Yeah, it's totally underestimated how many millions request ywe can handle a day with even a medium sized EC2 instance or similar, and the majority of us will never need more than that.
You're exactly right. Human time will almost always cost more than hosting.
I'll add that "serverless" is not always cheaper than traditional hosting. By the time you hook up all the services, and require more usage than the free tier but less than the high volume discount tiers, you could end up spending around the same. The cost savings really depend on the use cases.
Don't forget that going serverless, in its current state, is also handing control over to a few companies (primarily GCP, Azure and AWS). Hosted servers give you a little more control and the freedom to jump ship to another host if something goes wrong (or prices increase).
I agree with you. It's not something I think every day, but it's definitely true that we have less players for serverless than for regular servers.