Nikhil Das Nomula
Platform engineering is not a new thing anymore and it is great that companies have started to adopt it. However, there are still some questions that the executive leadership generally has about platform team
One of the main goals of platforms team is to reduce the cognitive load for developers so that they can focus on delivering business features.
Now let me elaborate on what I mean by that. For e.g. you are a company with 50 developers(you can extrapolate this to a company of 500–1000 developers). When a business requirement is brought to the developer, lets assume that this is a backend requirement. You can use any of these languages Java, C#, Node, Python, Rust. Now that is one decision he has to make.
Now lets assume the developer chooses Python, now the next decision is do I use Django or do I use Flask or some other framework. I think you get the idea now, the developer has to make a bunch of these decisions before he gets to working on the business problem
That is where the platforms team comes in to reduce that cognitive load, let's say by saying we are going to develop all our backend microservices with Java, Spring boot, Kafka, and Mongo databases. We have already simplified the cognitive load by eliminating 4 decisions
Taking this further when it comes to deployment, we run in a world where Kubernetes has become a default gold standard for application run times. Now once the developer has developed an app, they would need to deploy, which means creating kubernetes deployments, gateways to access the application.
This is again where platform team comes in to standardize by providing templates or a self-service mechanism for teams to deploy their services.
As we see for the platform team to be successful, they would need to empathize with the pain points that developers experience to improve Developers' experience(DX, DevEx)
#platformengineering #DX #DevEx #Devops