10 things we hate about platform engineering | Emma Dahl Jeppesen and Dan Grøndahl

Eficode
11 Nov 202421:47

Summary

TLDRIn this engaging talk, Dan Grøndahl and Emma Jeppesen explore the challenges and lessons learned in the world of platform engineering. They share their experiences with Kubernetes platforms at Velux, focusing on the importance of user-centered design, effective collaboration, and balancing agility with strategic planning. Through humor and movie references, they highlight common pitfalls, including the dangers of overcomplicating platforms and neglecting user needs. The session emphasizes the need for clear direction, continuous learning, and aligning platform engineering with business goals to avoid becoming a disconnected, underutilized resource.

Takeaways

  • 😀 Platform engineering is an evolving field where platform owners and advocates focus on providing self-service, product-thinking solutions to developers while avoiding heavy coordination.
  • 😀 DevOps is not dead. While platform engineering is gaining momentum, it still builds on essential DevOps principles like psychological safety, automation, flow, measurement, and knowledge sharing.
  • 😀 Platform teams must navigate organizational challenges and keep demonstrating business value to avoid drifting away from their goals. Effective communication with management is crucial for success.
  • 😀 When building a platform, starting with user needs is key. Pretotyping and validation should come before building full solutions to ensure value is delivered.
  • 😀 Platform teams often risk becoming 'home alone' with no users if they build too complex a platform without engaging with users early enough to understand their needs.
  • 😀 Clear roadmaps and vision are essential for platform teams to avoid aimless work and disorganization. A shared understanding of direction ensures everyone is aligned and committed.
  • 😀 Platform teams should focus on solving specific problems for specific users rather than trying to create a one-size-fits-all solution for the entire organization.
  • 😀 Platform engineering requires a balance between flexibility for developers and avoiding the temptation to build overly complex platforms that no one will use.
  • 😀 Product teams, including platform teams, should be more focused on understanding the problems they are solving rather than jumping straight into solutions. Asking 'why' repeatedly is critical to identifying the right problems.
  • 😀 A platform team must recognize its value stream and set clear boundaries around what they will and will not serve. Not every developer needs to be on the platform, especially those with niche or unique needs.
  • 😀 Platform engineering, when done right, is a powerful tool for businesses, but it requires a deep understanding of both the technology and the business value it brings to be successful.

Q & A

  • What is the main theme of the discussion in the video?

    -The video revolves around the challenges and experiences of platform engineering, focusing on common pitfalls, misconceptions, and best practices for building effective platforms for developers.

  • What is platform engineering and how does it differ from DevOps?

    -Platform engineering is a discipline that provides self-service platforms for developers to work with, while DevOps is more focused on automating the software delivery pipeline. Platform engineering integrates product thinking and emphasizes reducing coordination and increasing autonomy for developers.

  • What is the significance of the term 'golden path' in platform engineering?

    -The 'golden path' refers to the ideal, streamlined way developers should use the platform, ensuring ease of use without mandating its adoption. It's about providing a well-designed, self-service platform that developers can choose to use, making it an optional, but valuable resource.

  • How does the speaker view the relationship between platform engineering and DevOps principles?

    -The speaker believes that platform engineering builds upon the foundational principles of DevOps, particularly the CALMS model, which emphasizes collaboration, automation, lean processes, measurement, and sharing knowledge. These principles are still essential in platform engineering to scale the business and support developers effectively.

  • What analogy is used to describe the potential risks faced by platform teams, and what does it mean?

    -The analogy of the Titanic is used to describe how platform teams may feel overly confident or unprepared for challenges. Like the Titanic, platform teams can face organizational shifts or resistance if they fail to navigate the complexities of platform adoption and demonstrate clear business value.

  • What is the 'Kevin' analogy referring to in the context of platform engineering?

    -The 'Kevin' analogy refers to the feeling of isolation that can occur when a platform is built but lacks users. It highlights the mistake of focusing too much on the technical features and not enough on understanding user needs. The key message is to engage with users early, validate ideas, and iterate based on their feedback.

  • What do the speakers suggest as an approach to building a successful platform?

    -The speakers suggest starting with understanding user needs, pretesting ideas through 'pretotyping' (creating small-scale representations of ideas to validate them), and then building the platform iteratively, starting with the most essential features before adding more complex capabilities.

  • Why is it important for platform teams to have a clear roadmap?

    -A clear roadmap provides direction and vision, ensuring that the platform team is aligned and focused on solving the right problems. Without it, platform teams risk drifting aimlessly without achieving meaningful outcomes or aligning with broader organizational goals.

  • How does the platform engineering approach deal with the issue of 'one platform to rule them all'?

    -The speakers caution against the idea that one platform can solve all problems for every team. They stress the importance of understanding the value stream and recognizing when certain teams or needs are better served by different platforms. Not every developer or team needs to adopt the same platform.

  • What is the role of collaboration in platform engineering?

    -Collaboration is crucial in platform engineering, as it enables teams to understand user needs, align on goals, and share knowledge. The platform team must communicate with product teams and other stakeholders to ensure that the platform delivers true value and aligns with business objectives.

Outlines

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Mindmap

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Keywords

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Highlights

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Transcripts

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now
Rate This

5.0 / 5 (0 votes)

Related Tags
Platform EngineeringDevOps PrinciplesKubernetesUser-Centric DesignTech ChallengesSoftware DevelopmentAgile PracticesBusiness ValueCloud NativePlatform TeamsTech Strategy