Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AEON’s blueprint for technological maturity an...

AEON
October 15, 2024
1.3k

AEON’s blueprint for technological maturity and market competitiveness/aeon-for-technological-maturity-and-makert-competitiveness

AEON

October 15, 2024
Tweet

More Decks by AEON

Transcript

  1. ‧Originally established in 1758 ‧300+ subsidiary companies ‧600,000+ employees ‧Over

    17,000+ stores in 14 countries and online markets AEON is … 2.セクションタイトル
  2. ”Give the central pillar wheels” -AEON’s Philosophy- Adapt to changes

    in the environment and transform the company itself.
  3. AEON’s Digital Transformation Challenge • seamless shopping experience • customer-centric

    ecosystem • data integration • Revamping existing operations
  4. How to get there? • Customer Centric • Agility •

    Security and Governance • Data-Driven
  5. Role of AEON Smart Technology • Lead Digital Transformation of

    the group • Promote insourcing development • Agile • Create a New development culture
  6. history of cloud adoption • AEON have used public cloud

    for 8+ years • Mainly Azure As we have grown… • The complexity has increased • The cognitive load has increased • Inconsistent architecture
  7. The purpose of Platform Engineering Empower the Application Developer Team

    to concentrate on their core activities Finally, maximize the value for customers
  8. Step 0: Before starting… We didn’t start from the installation

    of IDP The fantasy of platform engineering is “one-click deployment” Platform Engineering: The Next Step in Operations
  9. Overview Step 1: Build Team and Reliability Step 2: Wiki

    and Inventory Step 3: Standardization & Higher Reusability Step 4: Self-Service & IDP
  10. Step 1: Build Team and Reliability Step 1: Build Team

    and Reliability Step 2: Wiki and Inventory Step 3: Standardization & Higher Reusability Step 4: Self-Service & IDP
  11. Step 1: Build Team and Reliability • Built SRE Enabler

    and Platform Team as One Team at first • Identify the “high toil” and resolve it • Build reliability with the development team
  12. Step 1: Build Team and Reliability Start from “Collaboration” Discover

    Establish Collaboration X-as-a-service Matthew Skelton, Manuel Pais (2019) 『Team Topologies: Organizing Business and Technology Teams for Fast Flow』
  13. Step 1: Build Team and Reliability Example of toils… •

    Create Cloud Account • Determining Architecture • Deployment of Application • Deployment of Platform Stack
  14. Step 1: Build Team and Reliability Summary of this step

    Why? Outcome • Everything from team building and reliability • Reliability built • Human Resources for deployment • Deployment frequency • Reduction of incident triggered deployment
  15. Step 2: Wiki and Inventory Step 1: Build Team and

    Reliability Step 2: Wiki and Inventory Step 3: Standardization & Higher Reusability Step 4: Self-Service & IDP
  16. Step 2: Wiki and Inventory Provide a centralized inventory of..

    • Existing tools, platforms • Best practices These will reduce redundancy of onboarding and education
  17. Step 2: Wiki and Inventory Education will equip developers with

    the knowledge to manage infrastructure and tools • We don’t only use Wiki • We hold Internal Workshops • Platform Team has role of enabler.
  18. Step 2: Wiki and Inventory Summary of this step Why?

    Outcome • Reduce redundancy of onboarding and education • Sharing knowledge • Number of days it takes for a new employee to do first PR • Tool usage • Reduction of Support Tickets
  19. Step 3: Standardization & High Reusability Step 1: Build Team

    and Reliability Step 2: Wiki and Inventory Step 3: Standardization & Higher Reusability Step 4: Self-Service & IDP
  20. Step 3: Standardization & High Reusability To maximize the leverage

    of developer productivity • Standardize workload infrastructure • Enhance reusability by terraform modules • Provide templates Database AKS Azure Functions App Service Redis • Managed by modules and variables • Standardize the parameter • Developer can reconfigure following their requirement
  21. Step 3: Standardization & High Reusability Platform Reliability Security Governance

    Observability CI/CD It is efficient for points that • Developers don’t want to consider about them • Developers want to ensure quality of them Scalability
  22. Step 3: Standardization & High Reusability Summary of this step

    Why? Outcome • To maximize the leverage of developer productivity • Lead time to deploy the platform • Reduction of human resources spent on design and configuration
  23. Step 4: Self-Service & IDP(future work) Step 1: Build Team

    and Reliability Step 2: Wiki and Inventory Step 3: Standardization & Higher Reusability Step 4: Self-Service & IDP
  24. ‧Interface Improvements ‧IaC Code? CUI? GUI? ‧Requirements depends on developer’s

    skill or preference ‧GUI is not always best solution ‧focus on increasing its value for the customer(=developer) ‧If we install IDP, we need UI/UX skills Step 4: Self-Service & IDP(future work)
  25. “Software developers probably already have tools and processes for managing

    the simplest and most commonly used paths (which aren’t necessarily the same). ” Platform Engineering: The Next Step in Operations Step 4: Self-Service & IDP(future work)
  26. About Team Design ‧We should review the team design depending

    on the phase and situation. ‧Consider splitting the team if the team grows. ‧Keep two-pizza size
  27. Team Design #1 SRE Team Developer Teams • It all

    starts with the smallest size and most simple structure • In this phase, SRE Team is responsible for platform engineering as well 👍 Simple, Close communication 👎 Scalability, grown cognitive load in SRE Team Developer Teams Developer Teams
  28. Team Design #2 SRE Team Developer Teams • As SRE

    Team grows, split into Platform Team and SRE Team to keep two-pizza size and divide responsibilities Developer Teams Developer Teams Platform Team
  29. Team Design #2 Team Responsibility SRE Team ‧Implement SRE practices

    with the developer teams through embedding or enabling. ‧Responsible for Reliability ‧This team is customer of Platform as well. Platform Team ‧Responsible for Reliability ‧focus on providing Wiki, inventory, templates, and useful tools.
  30. Team Design #3 (we are here) SRE Team Developer Teams

    • To further expand Platform Engineering within the group, establish a CCoE. • CCoE is responsible for the strategy. Developer Teams Developer Teams Platform Team CCoE
  31. Team Design #4 (future work) Platform Team • To install

    IDP, Platform Team needs variety of skills. • If necessary, split platform team by skills Templates Team Platform Team IDP Team SRE Team (for platform) Idea to consider Enabler Team
  32. Outcomes( in the last 2 years) Number of Teams Number

    of Products Number of Download Apps 6x 5x 10m Number of critical Incidents 1/4
  33. HCP Terraform Why we use Terraform? (why we don’t use

    Bicep?) ‧De facto Standard of IaC languages ‧Only using a single cloud will not cover everything. ( like PagerDuty, New Relic..) ‧Advantage of “state file”
  34. HCP Vault • Periodical rotation • Minimum privileges • Audit

    • Encryption Best practice of secret management HCP Vault provides • Centralized management • Automatic rotation • Dynamic Secret • Encryption
  35. ”Give the central pillar wheels” -AEON’s Philosophy- Adapt to changes

    in the environment and transform the company itself.