Measuring Developer Experience and Improving it through Platform Engineering (feat. Ajay Chankramath)
Published: 2024-04-16 20:21:12

Ajay Chankramath, Head of Platform Engineering at ThoughtWorks, discusses measuring and improving developer experience through platform engineering. Platform engineering is the abstracted set of tools, principles, and techniques that make developers' lives easier and enable DevOps. It focuses on improving developer productivity and reducing friction in the software development process. The key to successful platform engineering is adopting a product management mindset and prioritizing capabilities based on their value. 

Platform engineering can benefit organizations of all sizes, but the scope and implementation may vary. Internal developer platforms and managed platform engineering services are emerging as options for startups and smaller organizations. Platform engineering is the evolution of software development and delivery. It is not a passing fad or a replacement for DevOps, but rather a cultural paradigm that brings together tools, techniques, and processes. 

Platform engineering aims to simplify and automate the development process, improve compliance gating, and provide internal developer portals for self-service. It also involves the use of generative AI to enhance operational productivity and enable proactive issue detection. While there is no one-size-fits-all approach to platform engineering, it is important for organizations to invest in platforms that align with their specific requirements and skill sets.

### Takeaways

-   Platform engineering aims to improve developer productivity and reduce friction in the software development process.
    
-   Adopting a product management mindset and prioritizing capabilities based on their value is crucial for successful platform engineering.
    
-   Platform engineering can benefit organizations of all sizes, but the scope and implementation may vary.
    
-   Internal developer platforms and managed platform engineering services are emerging as options for startups and smaller organizations. Platform engineering is the evolution of software development and delivery.
    
-   It is not a passing fad or a replacement for DevOps, but rather a cultural paradigm that brings together tools, techniques, and processes.
    
-   Platform engineering aims to simplify and automate the development process, improve compliance gating, and provide internal developer portals for self-service.
    
-   Generative AI can be used to enhance operational productivity and enable proactive issue detection.
    
-   There is no one-size-fits-all approach to platform engineering, and organizations should invest in platforms that align with their specific requirements and skill sets.
    
### Chapters

00:00 Introduction to Ajay Chankramath and ThoughtWorks

03:08 Defining Platform Engineering and its Importance

07:48 The Role of Product Management in Platform Engineering

10:21 The Genesis of Platform Engineering and the Importance of Value Modeling

13:22 Platform Engineering for Organizations of All Sizes

22:16 Breaking Down Platform Engineering into Five Planes

25:41 The Importance of Observability in Platform Engineering

29:19 The Role of Orchestrators in Platform Engineering

33:26 The Impact of Platform Engineering on Developers' Daily Work

35:56 The Importance of Compliance Gating

36:47 Internal Developer Portals

38:17 Abstraction with Terraform and Other Tools

49:04 The Potential of Generative AI

55:53 Coexistence of Self-Serve Portals and Conversational UIs

01:06:25 Platform Engineering as an Evolution of Software Development

### Podcast
Check out on [Spotify](https://open.spotify.com/episode/19bN3U7LQqvugjYqzE9tw7?si=IU_Ap4vsQ2uIZwsDVS7j1w).

### Summary

**Understanding Platform Engineering:**
- Discussion on measuring and improving developer experience through platform engineering.
- Differentiating between DevOps and platform engineering.
- Explaining the importance of platform engineering in improving developer productivity.
- Addressing misconceptions and challenges related to platform engineering adoption.
- Exploring the role of technical product managers in understanding developer needs.

**Value Proposition and Investment:**
- Discussing the cost center perception of platform engineering.
- Exploring methods to quantify the value proposition of platform engineering.
- Highlighting the importance of demonstrating ROI and value to stakeholders.

**Applicability and Adoption:**
- Addressing the applicability of platform engineering across organizations of different sizes.
- Exploring the role of platform engineering in startups and larger organizations.
- Discussing the importance of product management and technical product managers in platform engineering.

**Initial Engagement and Assessment:**
- Exploring the initial questions and assessment process between platform engineers and developers.
- Discussing the value stream mapping approach to identify areas of friction and improvement.
- Breaking down the key planes within platform engineering: developer plane, compliance/governance plane, delivery-time plane, networking and connectivity plane, and security plane.
- Emphasizing the importance of observability across all planes in platform engineering.

**Customization and Adaptation:**
- Discussing potential differences and customization needs in platform engineering solutions for different clients.
- Exploring the balance between generic solutions and client-specific customization in platform engineering.
- Addressing the similarities and differences in platform engineering solutions for clients with similar technology stacks.

### Transcript

https://products.snowpal.com/api/v1/file/3d274381-7e5b-4cca-97e2-dc4226c19d5e.pdf