The traditional box drawn around an “application” has been small. Developers don’t need to learn the other stuff like networking, storage, load balancing is a lie we’ve told ourselves for a long time—especially with traditional, on-prem infrastructure. The dividing line between teams was the boundary where applications ended and ops began.
Ops was everything developers didn’t want to do. In reality, the application always included ops just as much as it included application code. Customers don’t care if you’re on-prem with Cisco switches and NetApp storage or in AWS with VPCs and s3. It’s all part of the application.
Cloud Native came along and made infrastructure API driven. It made it possible for applications to take ownership and declare the requirements of their code, but it was not easy to get right. Infrastructure was still a separate thing managed by a different team with unknown skills.
Now infrastructure is regularly managed by application teams whether they realize it or not. The Lambda function with API Gateway and Kubernetes deployment with LoadBalancer service are both managing infrastructure. Things like policy as code, service mesh, and mounted volumes bring security, networking, and storage into application management. It abstracts them into smaller, sane defaults the application code can use without requiring application developers to understand how they’re implemented.
This is a good thing! Application teams can move faster and become customers of the services provided by the other components. Flexibility is available on a per application basis instead of per account or data center.
What goes around comes around and for people familiar with Heroku this is what many people call a platform, but application native is more than that. It’s more flexible than platform guard rails at the cost of learning the additional configuration.
Application developers don’t want to learn infrastructure, but when infrastructure speaks their language, hides the global complexity, and allows them to coordinate less with external teams the benefits are huge.