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

At the Crossroads of Agile and Automation - AWS...

At the Crossroads of Agile and Automation - AWS MENA

At the Crossroads of Agile and Automation - AWS MENA By Joe Scholz

AWS MENA Community

September 25, 2020
Tweet

More Decks by AWS MENA Community

Other Decks in Technology

Transcript

  1. Introductions 2 Joseph Scholz Agile Delivery Lead Joe’s professional journey

    has been eclectic. He started as a Teacher and then moved to playing basketball in Spain. After that he worked at a Cafe and eventually settled in IT as an Agile Delivery Lead for the past 4 years. Currently he works with Cloud Engineering Teams to improve processes and delivery Enterprise solutions
  2. Introductions 3 Eric Schultz Senior Software Engineer Eric is a

    Senior Software Engineer at Capital One. His role is focused on cloud engineering and compliance while improving the developer experience. Eric has experience with several cloud platforms and managing enterprise workloads.
  3. Compliance Opportunities 8 • Limit the amount of compliance notifications

    (email overload) • Track and Prioritize efforts with Agile principles • Automated validation instead of verifying manually
  4. What We Built 9 • Integrated Solution that leverages Agile

    principles and single source-of-truth verification • Automated workflow to map work items to Cloud resources
  5. Basic Agile and Business Intent • Provide a consistent and

    organized format • Adhere to established Agile patterns • Give contextual information • Control over the creation of work • Tracking and Metrics 11
  6. Agile Nomenclature and Hierarchy • ‘Issue’ is a generic term

    for any work item. It doesn’t mean ‘bug’ or ‘defect’ even though it sounds that way, so we will try not to use that term • ‘Epic’ is a defined effort with a result (e.g. Amazon Machine Image Rehydration ‘Epic’) • ‘Story’ is a unit or part of an Epic such that all Stories must be complete for the overall Epic to be done (e.g. AMI Rehydration for a specific cloud resource) 12
  7. Single Source of Truth • Dedicated Agile ‘parent project’ 16

    • System Account with project access ◦ reduce the noise • Labels and Custom Fields ◦ Sorting ◦ Queries
  8. Initial Implementation • Architecture ◦ Python package ◦ Batch (AWS

    Lambda) ◦ DynamoDB (NoSQL) • Dependencies ◦ jira-python ◦ Jira API ◦ Boto3 ◦ ServiceNow API 19
  9. Discovery Clients • Discover non-compliant AWS resources ◦ Across several

    AWS Accounts • Discovery Client per AWS resource type ◦ Example: S3 • Return value ◦ non-compliant resources grouped by Team - “Team” Tag 20
  10. Jira Creator Client • Input ◦ Cloud control / Epic

    ◦ Discovery Client output • Stories are created per team • Creates / Updates / Closes Stories ◦ Create - no story exists or story is closed ◦ Update - story exists and story is open ◦ Close - story is open • DynamoDB 21
  11. The Life of a Story - Daily Cycle 1.Creation a.Boto3

    i. Gather resources ii. Sort by Team iii.Create Story per Team Description includes list of resources 22
  12. The Life of a Story - Accountability 2. Assignment a.Service

    Now i. Engineering Lead b.Additional Stakeholders i. Product Owner ii. Agile Delivery Lead 23
  13. The Life of a Work Item - Compliance Assignment 3.

    Epic a.1 Epic per Cloud Control b.1 story per team c. Each story is assigned to the epic d.Track company’s overall completion status 24
  14. The Life of a Story - Team Management 4. Workflow

    Progression a.Team can make manual transitions Backlog -> In-Progress 25
  15. The Life of a Story - Automated Workflow 5. Closing

    a.Validation i. Resources’ action items are completed b.Completion i. Closed Status ii. Comment 26
  16. Workflow • Daily Trigger • Multithreaded ◦ 1 per Cloud

    Control • Discovers resources • Jira Actions ◦ Create/Update/Close • Stores results in DB 27
  17. Results • Clear Expectations for the Teams • Iteration and

    Roadmap Planning Capability • Accountability and Actionability • Ability to evaluate team efforts for improvement • Easier tracking through a defined system of record • Peace of mind 29