Myths about platform engineering: what it is and what it isn't
cloud.google.com
cloud.google.com
I think you hit the nail on the head there.
That said, I prefer GCP as a product to AWS (and don't even get me started on Azure).
Nothing like tracking down what magic spell is needed to reveal on the CLI features not exposed on dashboards.
Protip: If it’s useful enough to appear on the console, it’s useful enough for the command line.
I find that AWS is overly account-focused, and it's more difficult to do operations at an org level. Azure is the inverse.
But I also don't like how Azure PaaS/serverless deploys open to the Internet by default.
If customers are asking for this, its important to ask why. The more obvious you make best practices (like via the UI, documentation etc) and what generally GCP offerings should be used for (e.g., Firestore is a NoSQL database that is good for flexible, hierarchical data structures to store and query data) and have strong use case examples, it would got a long way to mitigating this. It won't obviate it entirely, but it would likely move the needle on customer satisfaction. Whats driving these forms of contact is that it isn't obvious and clear what tech should be used for what, and in what common circumstances.
[0]: FWIW I have the same feedback about all the big cloud providers.
I also think these questions are driven from a CYA perspective. Most of the enterprise companies I talk to are interested in offloading risk on to their cloud provider (but still somehow wanting every single knob available).
Self service + APIs for all offerings reduces friction for developers and allow automating the most recurring things they want to do. Pay as you go pricing is the counterweight to the increase in freedom.
Viewing is this way makes the direction the whole platform engineering space is developing towards much more predictable.
YBIYRI and platform engineering are not at odds with each other. In fact, platform engineering should be an enabler of YBIYRI.
https://www.devopsparadox.com/episodes/diving-into-platform-...
of course it depends, but I think the industry is moving toward specific criteria.
I work directly in the space, fellow coworkers just published a series of articles attempting to answer the question about what the “platform” actually is [0]
If your idea is to 'save' developers from becoming experts in devops best practices, I think you're going the wrong way.
“Save devs from devops”
For example, something we as a platform team contribute to our products success is data safety, backups and archiving. Our dev-teams are just using our postgres clusters with little effort. That way they can say they are using a highly available storage layer, with perodic backups, backups being periodically restore-tested, backups being archived long-term and archived to multiple different locations and providers. We check many non-functional boxes overall.
And if a B2B customer wants to be a jerk about it, we can be invited to such meetings. And suddenly they aren't talking to a regular Dev or PO anymore, but someone who has been doing this for 10 - 15 years across different companies and industries.
This kind of backup tends to be very, very valuable to our smaller and more agile teams.
I used the exact phrase "internal development platform" for the automation infrastructure I was developing to provide resources, security, libraries, databases, web endpoints, etc for internal ASP.NET applications at a state university where I worked over 20 years ago. It ran on a half-dozen bare-metal physical servers in the datacenter across the hall from my office. And I knew at the time that we didn't come up with some brilliant new breakthrough idea for organizing application development, because the university's mainframe programmers on the other side of the building had built a similar automation platform over 20 years before that. We modeled a lot of our design on theirs.
And here I am in 2024, working for companies, building exactly the same sorts of solutions, with all the same parameters and components, just in a different computing environment. Templates, access, runtime, database, storage, sessions, load balancing, logging, security. Whether it's a mainframe in the 80s, a few Windows servers in the 00s, cloud VMs in the 10s, or Kubernetes in the 20s, it's all the same problem space, and guess what, Google or anyone else preaching "platform engineering" hasn't created or realized anything new.
Could be worse, could be a lo-code platform.
Could you imagine having a Compiler Engineer define APIs and quotas so that you can use a compiler? Of course no. We can use compilers directly because they are mature software.