SlideShare a Scribd company logo
Craeg K. Strong
Outline
1. About me
2. Customer Context
3. Training Solution
4. Initial Deployment Topology
5. Drawbacks
6. Re-Architecting to Serverless
7. Final Product: Tim
8. Next Steps for Tim
9. Summary & Key Takeaways
Craeg Strong § Software Development since 1988
§ Large Commercial & Government Projects
§ Kanban Coach / DevOps Engineer
§ Kanban Trainer / SpecFlow Trainer
§ Performance & Scalability Architect
§ Certified Ethical Hacker
§ New York & Washington DC Area
CTO, Ariel Partners
AKT, KCP, KMP, CSM, CSP, CSPO,
ITILv3, PMI-ACP, PMP, CLP, SPC,
ICP-ACC, ICP-ATF, PSM-II, PSK
CEH, ACP-JSW, AC-JPA, ACP-MJCP
www.arielpatners.com
cstrong@arielpartners.com
@ckstrong1
US Air Force Business and Enterprise Systems Directorate
Mission: Train all 1,200 in Directorate, ASAP
Constraints
1. All working from home
2. GFE cameras inoperative or disabled
3. All roles, all ranks
4. Widely disparate needs
Maintenance vs Development
non-Software teams
5. Many have no background in Agile
6. Many have no access to Jira
7. Borrowing Jira from another Agency
(DI2E)
8. Training in one shot
Cannot be stretched over half-days
Solution Design
1. Two-day intensive course
2. Hourly zoom fatigue breaks
3. Browser-only zero Install
4. Everyone gets their own instance
5. Way more hands-on, less lecture
6. Highly realistic scenarios
7. Don’t ignore the elephants in the room
Dependencies
Forecasting
Documentation
Program Initiation & Customer Discovery
...Let’s Bring Some Friends
What We Configured For Training
Confidential © Copyright Ariel Partners 2021
6 11/6/21
Scrumban
Automated Business Services System
ABSS
Scrum Development
Automated Civil Engineer System
ACES
Kanban O&M
AFEMS
Air Force Equipment Management System
Scaled Agile Software Development
Depot Maintenance Accounting & Production System
DMAPS
Time & Attendance Team
Defense Information Financial Mgmt System Team
Integration Engine Team
DevOps Team
7
Curated Set of Jira Plugins
No App Name Category Type
1 Ascend Integrated Color Cards for Jira Visual Boards Free
2 Okapya Software Solutions Checklist for Jira Visual Boards Commercial
3 Easy Agile User Story Maps for Jira Visual Boards Commercial
4 Atlassian Automation for Jira - Server Scripting Commercial
5 Adaptavist ScriptRunner for Jira Scripting Commercial
6 Beecom Products JSU Automation Suite for Jira
Workflows
Scripting Commercial
7 eazyBI Reports and Charts for Jira Reports Commercial
8 55 Degrees AB ActionableAgile for Jira Metrics Commercial
9 ALM Works Structure – Product Management at
Scale
Scaling Commercial
10 Fine Software JXL Spreadsheet Table Issue Editor Bulk Editing Commercial
Initial Deployment Topology
Build
Time
Configure
AWS Creds
Build
Docker
Image
Scan
Docker
Image
Smoke
Test
Image
Publish
Docker
Image
v8.14.102
Plugins
DB
Backups
Dockerfile
GitHub Action
Date Shift
Scripts
ECS Container Registry:ariel-jira-fundamentals
Run
Time
Docker Container
Instance
Postgre
SQL
Docker Container
Instance
Postgre
SQL
Docker Container
Instance
Postgre
SQL
Docker Container
Instance
Postgre
SQL
Primary Docker
Container Instance
Postgre
SQL
Docker Container
Instance
Postgre
SQL
Docker Container
Instance
Postgre
SQL
clone
aws login
clone jirastudent 1 28
. . .
Labor Intensive
Trainer Operator Support
Drawbacks with Initial Solution
• Operations person to start/stop instances with script
• Operator must have AWS CLI tools installed
full computer required, no mobile
• Provisioning a class is very slow
20 instances take up to 3 hours to spin up and validate
• Operator has to time the startup perfectly
Too soon: AWS $$ for idle instances
Too late: class is not ready
• Extra instances required in case instances crash
• Manual coordination to match students to URLs
• Trainer cannot see if student instances are healthy
• Switching a student from a dead instance is clumsy
• Primary instance constantly running: AWS $$
• If Operator does not spin down training instances
timely: AWS $$$
Costly
Re-architecting to Serverless
AWS Cloud
Infrastructure API Gateway
CloudFront
Elastic Container
Service
Elastic Container
Registry
Simple Storage
Service
Infrastructure as a
Service (IaaS) Serverless
Application Model
Container
orchestration Elastic Beanstalk Fargate Lambda Step Functions
App Services
DynamoDB Cognito CloudWatch
Web App
Redux Websockets
Application
Lifecycle
Management
Why Not Kubernetes?
• Kubernetes is designed to run distributed systems resiliently
This is not a distributed system. Quite the opposite– everything in one Docker
• Kubernetes automatically scales your app
We don’t need scaling. Everyone has their own unique instance
• Kubernetes automatically restarts in case of failure
We don’t need auto-restart. It is a better user experience to switch to a hot standby instance
• Kubernetes has a steep learning curve
• Kubernetes would increase complexity, cost
• Kubernetes could be added later if needed, under Fargate
Fargate has hypervisor isolation; Kubernetes alone only has kernel level isolation
Bottom Line: Kubernetes is overkill;
it is not the right solution for this use case
Web App Improvements
Web App
Why?
1. React: Preact not compatible with
some libraries
2. Redux: Need Sophisticated State
Management
3. MaterialUI: Need Rich Widget Set
4. Typescript: Helps Manage
Complexity
5. Websockets: superior performance
and scalability over polling
Benefits
1. Much more user friendly and
intuitive
2. Supports Non-Technical Users
3. Nothing to install, 100% browser
based
4. No more “security through
obscurity” à Proper Authentication
and Authorization
Redux Websockets
App Services Improvements
Why?
1. Go: Only Python, Go, Java have
native support in AWS. Go has
fastest startup time and better
inherent reliability
2. DynamoDB: For storing metadata
about an instance e.g., student
name, title, email, instance URL
3. CloudWatch: For monitoring
instance metrics e.g., CPU, disk,
memory
Benefits
1. Student instances start up faster
2. Trainers can see list of students with
their instances
3. Trainers can see ranks and titles
4. Trainers can monitor instance health
5. Trainers can instantly move a
student to an available instance
6. Trainers can take attendance during
class
App Services
DynamoDB Cognito CloudWatch
Container Orchestration Improvements
Why?
1. Fargate: Auto-manages and
provisions instances, provides
metrics via CloudWatch, and pay as
you go. Full hypervisor isolation
2. Step Functions: Trigger workflows
via events or via a schedule. Keeps
Lambdas very simple by capturing
workflow and orchestration
3. Lambda: serverless single-task
microservice. very low overhead,
Benefits
1. Pay as you go, only when services
are active.
Delayed start does not cost money per
minute: step functions are pay-per-step
2. Trainers can schedule a class far in
advance, with confidence the
instances will be there when needed
3. Trainers can schedule a time after
the class to automatically delete
Container
orchestration Elastic Beanstalk Fargate Lambda Step Functions
Infrastructure as a Service (IaaS) Improvements
Why?
1. SAM: Much higher-level
constructs than Terraform.
Purpose-built to support
serverless architectures.
Benefits
1. No need to purchase or
support Terraform
Infrastructure as a
Service (IaaS) Serverless
Application Model
New Docker Image?
Just define it in YAML
Application Lifecycle Management (ALM) Improvements
Why?
1. Github Actions: Much simpler
model-- YAML versus Groovy-based
Jenkinsfile. Extensive library of
third-party actions
2. GitHub Issues: Simpler version of
Jira tickets, good enough for small
teams.
3. GitHub Wiki: Simple wiki pages
suffice for most projects
Benefits
1. Huge labor saver– no need to setup
an environment to host the build
server.
2. Much lower learning curve
3. No extra licensing costs, modest
costs if free minutes exceeded
4. Everything is in one place: one
password to remember
5. READMEs can link to wiki pages for
more information (two-way links)
Application
Lifecycle
Management
Logical Architecture
Amazon API
Gateway
(WebSockets)
Amazon API
Gateway
Lambda
REST
function
Lambda
onConnect
function
Lambda
onMessage
function
Lambda
onDisconnect
function
AWS Step
Function Start
Class
AWS Step
Function Stop
Class
Lambda Start
Class function
Lambda Stop
Class function
AWS Fargate
Amazon
CloudWatch Logs
container
insights
Amazon
DynamoDB
Persistence Layer
Amazon Cognito
Authentication
Custom
Authentication
Static website
assets (html, js,
css)
Amazon
CloudFront
TIM Users
Lambda Auth
function
Serverless Architecture
Creating a Class
AWS Step Function
Coordinates Delayed Spin-up
1) SAM Configuration File
Registers Our State Machine
3) AWS State Machine Console
Confirms Delayed Start
2) State Machine Specifies
Wait Until LaunchTimestamp
Monitoring a Class
Vision Going Forward
Training Image
Manager
Instructor-Led Training
Tools
Agile Practices
Technical Practices
Programming Languages
Certified Training
Learning
Management
System
Video On Demand
Self-Service
Setup Learning Path
Track Progress
Grading
Calendar
Course Enrollments
Print Certificates / Diplomas
Training
Management
System
Class Management
Rostering
Signups
Postings
Collect Dues
Earlybird Discounts
Marketing Campaigns
Key Takeaways
Will Serverless technology work for me? Yes, if:
§ Work is bursty; you don’t pay for downtime
§ You have workflow steps and coordination
§ You are free to rearchitect logic into lambdas
§ You can use best supported platforms (Go, Java, Js)
Is Re-architecting to optimize your use of cloud
technology worthwhile? YES
§ Huge Usability, Responsiveness Gains
§ Significant Performance and Reliability
Improvements
§ Excellent tool and API support
We started here... We ended here
Cost Savings
Will Serverless technology save
money? Yes,
§ You don’t pay for downtime
§ Services only running when they are
actually needed
§ We realized 45% savings, but YMMV
Thank You!
www.arielpartners.com
cstrong@arielpartners.com
Twitter: @arielpartners

More Related Content

Similar to 20211202 NADOG Adapting to Covid with Serverless Craeg Strong Ariel Partners

Operations and Security at Cloud Scale with Amazon EC2 System Manager - AWS S...
Operations and Security at Cloud Scale with Amazon EC2 System Manager - AWS S...Operations and Security at Cloud Scale with Amazon EC2 System Manager - AWS S...
Operations and Security at Cloud Scale with Amazon EC2 System Manager - AWS S...
Amazon Web Services
 
AWS Lambda from the Trenches
AWS Lambda from the TrenchesAWS Lambda from the Trenches
AWS Lambda from the Trenches
Yan Cui
 
Serverlessusecase workshop feb3_v2
Serverlessusecase workshop feb3_v2Serverlessusecase workshop feb3_v2
Serverlessusecase workshop feb3_v2
kartraj
 
Patterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesPatterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to Kubernetes
QAware GmbH
 
Patterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesPatterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to Kubernetes
Josef Adersberger
 
SpringOne Tour: An Introduction to Azure Spring Apps Enterprise
SpringOne Tour: An Introduction to Azure Spring Apps EnterpriseSpringOne Tour: An Introduction to Azure Spring Apps Enterprise
SpringOne Tour: An Introduction to Azure Spring Apps Enterprise
VMware Tanzu
 
Getting Started with MariaDB with Docker
Getting Started with MariaDB with DockerGetting Started with MariaDB with Docker
Getting Started with MariaDB with Docker
MariaDB plc
 
Breaking the Monolith Road to Containers
Breaking the Monolith Road to ContainersBreaking the Monolith Road to Containers
Breaking the Monolith Road to Containers
Amazon Web Services
 
20171122 aws usergrp_coretech-spn-cicd-aws-v01
20171122 aws usergrp_coretech-spn-cicd-aws-v0120171122 aws usergrp_coretech-spn-cicd-aws-v01
20171122 aws usergrp_coretech-spn-cicd-aws-v01
Scott Miao
 
devworkshop-10_28_1015-amazon-conference-presentation
devworkshop-10_28_1015-amazon-conference-presentationdevworkshop-10_28_1015-amazon-conference-presentation
devworkshop-10_28_1015-amazon-conference-presentation
Alex Wu
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
Amazon Web Services
 
Exploring Cloud Computing with Amazon Web Services (AWS)
Exploring Cloud Computing with Amazon Web Services (AWS)Exploring Cloud Computing with Amazon Web Services (AWS)
Exploring Cloud Computing with Amazon Web Services (AWS)
Kalema Edgar
 
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)
Amazon Web Services
 
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...
VMworld
 
Andrew May - Getting Certified for Fun and Profit
Andrew May - Getting Certified for Fun and ProfitAndrew May - Getting Certified for Fun and Profit
Andrew May - Getting Certified for Fun and Profit
AWS Chicago
 
Feedback on building Production-Ready Microsoft Teams Apps
Feedback on building Production-Ready Microsoft Teams AppsFeedback on building Production-Ready Microsoft Teams Apps
Feedback on building Production-Ready Microsoft Teams Apps
Guillaume Meyer
 
Getting Started with Platform-as-a-Service
Getting Started with Platform-as-a-ServiceGetting Started with Platform-as-a-Service
Getting Started with Platform-as-a-Service
CloudBees
 
Azure Serverless Toolbox
Azure Serverless ToolboxAzure Serverless Toolbox
Azure Serverless Toolbox
Johan Eriksson
 
Getting Started with PaaS
Getting Started with PaaSGetting Started with PaaS
Getting Started with PaaS
CloudBees
 
AWS re:Invent 2016: Deploying Scalable SAP Hybris Clusters using Docker (CON312)
AWS re:Invent 2016: Deploying Scalable SAP Hybris Clusters using Docker (CON312)AWS re:Invent 2016: Deploying Scalable SAP Hybris Clusters using Docker (CON312)
AWS re:Invent 2016: Deploying Scalable SAP Hybris Clusters using Docker (CON312)
Amazon Web Services
 

Similar to 20211202 NADOG Adapting to Covid with Serverless Craeg Strong Ariel Partners (20)

Operations and Security at Cloud Scale with Amazon EC2 System Manager - AWS S...
Operations and Security at Cloud Scale with Amazon EC2 System Manager - AWS S...Operations and Security at Cloud Scale with Amazon EC2 System Manager - AWS S...
Operations and Security at Cloud Scale with Amazon EC2 System Manager - AWS S...
 
AWS Lambda from the Trenches
AWS Lambda from the TrenchesAWS Lambda from the Trenches
AWS Lambda from the Trenches
 
Serverlessusecase workshop feb3_v2
Serverlessusecase workshop feb3_v2Serverlessusecase workshop feb3_v2
Serverlessusecase workshop feb3_v2
 
Patterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesPatterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to Kubernetes
 
Patterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesPatterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to Kubernetes
 
SpringOne Tour: An Introduction to Azure Spring Apps Enterprise
SpringOne Tour: An Introduction to Azure Spring Apps EnterpriseSpringOne Tour: An Introduction to Azure Spring Apps Enterprise
SpringOne Tour: An Introduction to Azure Spring Apps Enterprise
 
Getting Started with MariaDB with Docker
Getting Started with MariaDB with DockerGetting Started with MariaDB with Docker
Getting Started with MariaDB with Docker
 
Breaking the Monolith Road to Containers
Breaking the Monolith Road to ContainersBreaking the Monolith Road to Containers
Breaking the Monolith Road to Containers
 
20171122 aws usergrp_coretech-spn-cicd-aws-v01
20171122 aws usergrp_coretech-spn-cicd-aws-v0120171122 aws usergrp_coretech-spn-cicd-aws-v01
20171122 aws usergrp_coretech-spn-cicd-aws-v01
 
devworkshop-10_28_1015-amazon-conference-presentation
devworkshop-10_28_1015-amazon-conference-presentationdevworkshop-10_28_1015-amazon-conference-presentation
devworkshop-10_28_1015-amazon-conference-presentation
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
 
Exploring Cloud Computing with Amazon Web Services (AWS)
Exploring Cloud Computing with Amazon Web Services (AWS)Exploring Cloud Computing with Amazon Web Services (AWS)
Exploring Cloud Computing with Amazon Web Services (AWS)
 
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)
 
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...
 
Andrew May - Getting Certified for Fun and Profit
Andrew May - Getting Certified for Fun and ProfitAndrew May - Getting Certified for Fun and Profit
Andrew May - Getting Certified for Fun and Profit
 
Feedback on building Production-Ready Microsoft Teams Apps
Feedback on building Production-Ready Microsoft Teams AppsFeedback on building Production-Ready Microsoft Teams Apps
Feedback on building Production-Ready Microsoft Teams Apps
 
Getting Started with Platform-as-a-Service
Getting Started with Platform-as-a-ServiceGetting Started with Platform-as-a-Service
Getting Started with Platform-as-a-Service
 
Azure Serverless Toolbox
Azure Serverless ToolboxAzure Serverless Toolbox
Azure Serverless Toolbox
 
Getting Started with PaaS
Getting Started with PaaSGetting Started with PaaS
Getting Started with PaaS
 
AWS re:Invent 2016: Deploying Scalable SAP Hybris Clusters using Docker (CON312)
AWS re:Invent 2016: Deploying Scalable SAP Hybris Clusters using Docker (CON312)AWS re:Invent 2016: Deploying Scalable SAP Hybris Clusters using Docker (CON312)
AWS re:Invent 2016: Deploying Scalable SAP Hybris Clusters using Docker (CON312)
 

More from Craeg Strong

20231019 Flight Levels Bosch Engagement Day 2023 Business Agility With Flight...
20231019 Flight Levels Bosch Engagement Day 2023 Business Agility With Flight...20231019 Flight Levels Bosch Engagement Day 2023 Business Agility With Flight...
20231019 Flight Levels Bosch Engagement Day 2023 Business Agility With Flight...
Craeg Strong
 
RESPONSIVE TRAINING FOR DIGITAL TRANSFORMATIONS
RESPONSIVE TRAINING FOR DIGITAL TRANSFORMATIONSRESPONSIVE TRAINING FOR DIGITAL TRANSFORMATIONS
RESPONSIVE TRAINING FOR DIGITAL TRANSFORMATIONS
Craeg Strong
 
20230829 DAFITC 2023 Agile For Leaders And Executives
20230829 DAFITC 2023 Agile For Leaders And Executives20230829 DAFITC 2023 Agile For Leaders And Executives
20230829 DAFITC 2023 Agile For Leaders And Executives
Craeg Strong
 
20231004 JiraCon Team Spaces In Confluence
20231004 JiraCon Team Spaces In Confluence20231004 JiraCon Team Spaces In Confluence
20231004 JiraCon Team Spaces In Confluence
Craeg Strong
 
20231023 AgileDC Making Strategy Real with Well Crafted Outcomes
20231023 AgileDC Making Strategy Real with Well Crafted Outcomes20231023 AgileDC Making Strategy Real with Well Crafted Outcomes
20231023 AgileDC Making Strategy Real with Well Crafted Outcomes
Craeg Strong
 
20230829 DAFITC 2023 Agile For Leaders And Executives
20230829 DAFITC 2023 Agile For Leaders And Executives20230829 DAFITC 2023 Agile For Leaders And Executives
20230829 DAFITC 2023 Agile For Leaders And Executives
Craeg Strong
 
20230622 PMINYC Modern Project Management with Lean Kanban
20230622 PMINYC Modern Project Management with Lean Kanban20230622 PMINYC Modern Project Management with Lean Kanban
20230622 PMINYC Modern Project Management with Lean Kanban
Craeg Strong
 
20230622 PMIC Leveraging the 4 Disciplines of Execution & Enterprise Kanban t...
20230622 PMIC Leveraging the 4 Disciplines of Execution & Enterprise Kanban t...20230622 PMIC Leveraging the 4 Disciplines of Execution & Enterprise Kanban t...
20230622 PMIC Leveraging the 4 Disciplines of Execution & Enterprise Kanban t...
Craeg Strong
 
ADDO 2022 Putting the Sec in DevSecOps for an AWS Lambda Based System
ADDO 2022 Putting the Sec in DevSecOps for an AWS Lambda Based SystemADDO 2022 Putting the Sec in DevSecOps for an AWS Lambda Based System
ADDO 2022 Putting the Sec in DevSecOps for an AWS Lambda Based System
Craeg Strong
 
Coaching leaders: how to get it right, and how to get it really, really wrong
Coaching leaders: how to get it right, and how to get it really, really wrongCoaching leaders: how to get it right, and how to get it really, really wrong
Coaching leaders: how to get it right, and how to get it really, really wrong
Craeg Strong
 
20220607 Introduction to Flight Levels
20220607 Introduction to Flight Levels20220607 Introduction to Flight Levels
20220607 Introduction to Flight Levels
Craeg Strong
 
20220824 Kanban Global Summit 2022 Now You See It! Observing Flow Using [ONLI...
20220824 Kanban Global Summit 2022 Now You See It! Observing Flow Using [ONLI...20220824 Kanban Global Summit 2022 Now You See It! Observing Flow Using [ONLI...
20220824 Kanban Global Summit 2022 Now You See It! Observing Flow Using [ONLI...
Craeg Strong
 
20220621 Project Management Innovation Conference Harrisburg PA Seatbelts and...
20220621 Project Management Innovation Conference Harrisburg PA Seatbelts and...20220621 Project Management Innovation Conference Harrisburg PA Seatbelts and...
20220621 Project Management Innovation Conference Harrisburg PA Seatbelts and...
Craeg Strong
 
20220216 Lean In Government Conference Harrisburg PA Agile Tool Clash of the ...
20220216 Lean In Government Conference Harrisburg PA Agile Tool Clash of the ...20220216 Lean In Government Conference Harrisburg PA Agile Tool Clash of the ...
20220216 Lean In Government Conference Harrisburg PA Agile Tool Clash of the ...
Craeg Strong
 
20220329 Ariel Partners Configuring Jira For Maximum Agility
20220329 Ariel Partners Configuring Jira For Maximum Agility20220329 Ariel Partners Configuring Jira For Maximum Agility
20220329 Ariel Partners Configuring Jira For Maximum Agility
Craeg Strong
 
20220301 Atlassian Team Tour Government ArielPartners Innovative Jira Configu...
20220301 Atlassian Team Tour Government ArielPartners Innovative Jira Configu...20220301 Atlassian Team Tour Government ArielPartners Innovative Jira Configu...
20220301 Atlassian Team Tour Government ArielPartners Innovative Jira Configu...
Craeg Strong
 
20211007 PMI LIC Chapter Agile Tool Celebrity Death Match Kanbanize vs Jira C...
20211007 PMI LIC Chapter Agile Tool Celebrity Death Match Kanbanize vs Jira C...20211007 PMI LIC Chapter Agile Tool Celebrity Death Match Kanbanize vs Jira C...
20211007 PMI LIC Chapter Agile Tool Celebrity Death Match Kanbanize vs Jira C...
Craeg Strong
 
20211114 Agile DevOps East Conf 2021 Bringing DevOps to an Entrenched Legacy ...
20211114 Agile DevOps East Conf 2021 Bringing DevOps to an Entrenched Legacy ...20211114 Agile DevOps East Conf 2021 Bringing DevOps to an Entrenched Legacy ...
20211114 Agile DevOps East Conf 2021 Bringing DevOps to an Entrenched Legacy ...
Craeg Strong
 
20210520 MiniVAte Conference Agile Transformation at Scale Craeg Strong Ariel...
20210520 MiniVAte Conference Agile Transformation at Scale Craeg Strong Ariel...20210520 MiniVAte Conference Agile Transformation at Scale Craeg Strong Ariel...
20210520 MiniVAte Conference Agile Transformation at Scale Craeg Strong Ariel...
Craeg Strong
 
20210610 AgileDevOps West Conf Bringing DevOps to an Entrenched Legacy Enviro...
20210610 AgileDevOps West Conf Bringing DevOps to an Entrenched Legacy Enviro...20210610 AgileDevOps West Conf Bringing DevOps to an Entrenched Legacy Enviro...
20210610 AgileDevOps West Conf Bringing DevOps to an Entrenched Legacy Enviro...
Craeg Strong
 

More from Craeg Strong (20)

20231019 Flight Levels Bosch Engagement Day 2023 Business Agility With Flight...
20231019 Flight Levels Bosch Engagement Day 2023 Business Agility With Flight...20231019 Flight Levels Bosch Engagement Day 2023 Business Agility With Flight...
20231019 Flight Levels Bosch Engagement Day 2023 Business Agility With Flight...
 
RESPONSIVE TRAINING FOR DIGITAL TRANSFORMATIONS
RESPONSIVE TRAINING FOR DIGITAL TRANSFORMATIONSRESPONSIVE TRAINING FOR DIGITAL TRANSFORMATIONS
RESPONSIVE TRAINING FOR DIGITAL TRANSFORMATIONS
 
20230829 DAFITC 2023 Agile For Leaders And Executives
20230829 DAFITC 2023 Agile For Leaders And Executives20230829 DAFITC 2023 Agile For Leaders And Executives
20230829 DAFITC 2023 Agile For Leaders And Executives
 
20231004 JiraCon Team Spaces In Confluence
20231004 JiraCon Team Spaces In Confluence20231004 JiraCon Team Spaces In Confluence
20231004 JiraCon Team Spaces In Confluence
 
20231023 AgileDC Making Strategy Real with Well Crafted Outcomes
20231023 AgileDC Making Strategy Real with Well Crafted Outcomes20231023 AgileDC Making Strategy Real with Well Crafted Outcomes
20231023 AgileDC Making Strategy Real with Well Crafted Outcomes
 
20230829 DAFITC 2023 Agile For Leaders And Executives
20230829 DAFITC 2023 Agile For Leaders And Executives20230829 DAFITC 2023 Agile For Leaders And Executives
20230829 DAFITC 2023 Agile For Leaders And Executives
 
20230622 PMINYC Modern Project Management with Lean Kanban
20230622 PMINYC Modern Project Management with Lean Kanban20230622 PMINYC Modern Project Management with Lean Kanban
20230622 PMINYC Modern Project Management with Lean Kanban
 
20230622 PMIC Leveraging the 4 Disciplines of Execution & Enterprise Kanban t...
20230622 PMIC Leveraging the 4 Disciplines of Execution & Enterprise Kanban t...20230622 PMIC Leveraging the 4 Disciplines of Execution & Enterprise Kanban t...
20230622 PMIC Leveraging the 4 Disciplines of Execution & Enterprise Kanban t...
 
ADDO 2022 Putting the Sec in DevSecOps for an AWS Lambda Based System
ADDO 2022 Putting the Sec in DevSecOps for an AWS Lambda Based SystemADDO 2022 Putting the Sec in DevSecOps for an AWS Lambda Based System
ADDO 2022 Putting the Sec in DevSecOps for an AWS Lambda Based System
 
Coaching leaders: how to get it right, and how to get it really, really wrong
Coaching leaders: how to get it right, and how to get it really, really wrongCoaching leaders: how to get it right, and how to get it really, really wrong
Coaching leaders: how to get it right, and how to get it really, really wrong
 
20220607 Introduction to Flight Levels
20220607 Introduction to Flight Levels20220607 Introduction to Flight Levels
20220607 Introduction to Flight Levels
 
20220824 Kanban Global Summit 2022 Now You See It! Observing Flow Using [ONLI...
20220824 Kanban Global Summit 2022 Now You See It! Observing Flow Using [ONLI...20220824 Kanban Global Summit 2022 Now You See It! Observing Flow Using [ONLI...
20220824 Kanban Global Summit 2022 Now You See It! Observing Flow Using [ONLI...
 
20220621 Project Management Innovation Conference Harrisburg PA Seatbelts and...
20220621 Project Management Innovation Conference Harrisburg PA Seatbelts and...20220621 Project Management Innovation Conference Harrisburg PA Seatbelts and...
20220621 Project Management Innovation Conference Harrisburg PA Seatbelts and...
 
20220216 Lean In Government Conference Harrisburg PA Agile Tool Clash of the ...
20220216 Lean In Government Conference Harrisburg PA Agile Tool Clash of the ...20220216 Lean In Government Conference Harrisburg PA Agile Tool Clash of the ...
20220216 Lean In Government Conference Harrisburg PA Agile Tool Clash of the ...
 
20220329 Ariel Partners Configuring Jira For Maximum Agility
20220329 Ariel Partners Configuring Jira For Maximum Agility20220329 Ariel Partners Configuring Jira For Maximum Agility
20220329 Ariel Partners Configuring Jira For Maximum Agility
 
20220301 Atlassian Team Tour Government ArielPartners Innovative Jira Configu...
20220301 Atlassian Team Tour Government ArielPartners Innovative Jira Configu...20220301 Atlassian Team Tour Government ArielPartners Innovative Jira Configu...
20220301 Atlassian Team Tour Government ArielPartners Innovative Jira Configu...
 
20211007 PMI LIC Chapter Agile Tool Celebrity Death Match Kanbanize vs Jira C...
20211007 PMI LIC Chapter Agile Tool Celebrity Death Match Kanbanize vs Jira C...20211007 PMI LIC Chapter Agile Tool Celebrity Death Match Kanbanize vs Jira C...
20211007 PMI LIC Chapter Agile Tool Celebrity Death Match Kanbanize vs Jira C...
 
20211114 Agile DevOps East Conf 2021 Bringing DevOps to an Entrenched Legacy ...
20211114 Agile DevOps East Conf 2021 Bringing DevOps to an Entrenched Legacy ...20211114 Agile DevOps East Conf 2021 Bringing DevOps to an Entrenched Legacy ...
20211114 Agile DevOps East Conf 2021 Bringing DevOps to an Entrenched Legacy ...
 
20210520 MiniVAte Conference Agile Transformation at Scale Craeg Strong Ariel...
20210520 MiniVAte Conference Agile Transformation at Scale Craeg Strong Ariel...20210520 MiniVAte Conference Agile Transformation at Scale Craeg Strong Ariel...
20210520 MiniVAte Conference Agile Transformation at Scale Craeg Strong Ariel...
 
20210610 AgileDevOps West Conf Bringing DevOps to an Entrenched Legacy Enviro...
20210610 AgileDevOps West Conf Bringing DevOps to an Entrenched Legacy Enviro...20210610 AgileDevOps West Conf Bringing DevOps to an Entrenched Legacy Enviro...
20210610 AgileDevOps West Conf Bringing DevOps to an Entrenched Legacy Enviro...
 

Recently uploaded

Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
HarisZaheer8
 
SAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloudSAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloud
maazsz111
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
Miro Wengner
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
Alex Pruden
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
ScyllaDB
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Tatiana Kojar
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 

Recently uploaded (20)

Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
 
SAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloudSAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloud
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 

20211202 NADOG Adapting to Covid with Serverless Craeg Strong Ariel Partners

  • 2. Outline 1. About me 2. Customer Context 3. Training Solution 4. Initial Deployment Topology 5. Drawbacks 6. Re-Architecting to Serverless 7. Final Product: Tim 8. Next Steps for Tim 9. Summary & Key Takeaways
  • 3. Craeg Strong § Software Development since 1988 § Large Commercial & Government Projects § Kanban Coach / DevOps Engineer § Kanban Trainer / SpecFlow Trainer § Performance & Scalability Architect § Certified Ethical Hacker § New York & Washington DC Area CTO, Ariel Partners AKT, KCP, KMP, CSM, CSP, CSPO, ITILv3, PMI-ACP, PMP, CLP, SPC, ICP-ACC, ICP-ATF, PSM-II, PSK CEH, ACP-JSW, AC-JPA, ACP-MJCP www.arielpatners.com cstrong@arielpartners.com @ckstrong1
  • 4. US Air Force Business and Enterprise Systems Directorate
  • 5. Mission: Train all 1,200 in Directorate, ASAP Constraints 1. All working from home 2. GFE cameras inoperative or disabled 3. All roles, all ranks 4. Widely disparate needs Maintenance vs Development non-Software teams 5. Many have no background in Agile 6. Many have no access to Jira 7. Borrowing Jira from another Agency (DI2E) 8. Training in one shot Cannot be stretched over half-days Solution Design 1. Two-day intensive course 2. Hourly zoom fatigue breaks 3. Browser-only zero Install 4. Everyone gets their own instance 5. Way more hands-on, less lecture 6. Highly realistic scenarios 7. Don’t ignore the elephants in the room Dependencies Forecasting Documentation Program Initiation & Customer Discovery ...Let’s Bring Some Friends
  • 6. What We Configured For Training Confidential © Copyright Ariel Partners 2021 6 11/6/21 Scrumban Automated Business Services System ABSS Scrum Development Automated Civil Engineer System ACES Kanban O&M AFEMS Air Force Equipment Management System Scaled Agile Software Development Depot Maintenance Accounting & Production System DMAPS Time & Attendance Team Defense Information Financial Mgmt System Team Integration Engine Team DevOps Team
  • 7. 7 Curated Set of Jira Plugins No App Name Category Type 1 Ascend Integrated Color Cards for Jira Visual Boards Free 2 Okapya Software Solutions Checklist for Jira Visual Boards Commercial 3 Easy Agile User Story Maps for Jira Visual Boards Commercial 4 Atlassian Automation for Jira - Server Scripting Commercial 5 Adaptavist ScriptRunner for Jira Scripting Commercial 6 Beecom Products JSU Automation Suite for Jira Workflows Scripting Commercial 7 eazyBI Reports and Charts for Jira Reports Commercial 8 55 Degrees AB ActionableAgile for Jira Metrics Commercial 9 ALM Works Structure – Product Management at Scale Scaling Commercial 10 Fine Software JXL Spreadsheet Table Issue Editor Bulk Editing Commercial
  • 8. Initial Deployment Topology Build Time Configure AWS Creds Build Docker Image Scan Docker Image Smoke Test Image Publish Docker Image v8.14.102 Plugins DB Backups Dockerfile GitHub Action Date Shift Scripts ECS Container Registry:ariel-jira-fundamentals Run Time Docker Container Instance Postgre SQL Docker Container Instance Postgre SQL Docker Container Instance Postgre SQL Docker Container Instance Postgre SQL Primary Docker Container Instance Postgre SQL Docker Container Instance Postgre SQL Docker Container Instance Postgre SQL clone aws login clone jirastudent 1 28 . . .
  • 9. Labor Intensive Trainer Operator Support Drawbacks with Initial Solution • Operations person to start/stop instances with script • Operator must have AWS CLI tools installed full computer required, no mobile • Provisioning a class is very slow 20 instances take up to 3 hours to spin up and validate • Operator has to time the startup perfectly Too soon: AWS $$ for idle instances Too late: class is not ready • Extra instances required in case instances crash • Manual coordination to match students to URLs • Trainer cannot see if student instances are healthy • Switching a student from a dead instance is clumsy • Primary instance constantly running: AWS $$ • If Operator does not spin down training instances timely: AWS $$$ Costly
  • 10. Re-architecting to Serverless AWS Cloud Infrastructure API Gateway CloudFront Elastic Container Service Elastic Container Registry Simple Storage Service Infrastructure as a Service (IaaS) Serverless Application Model Container orchestration Elastic Beanstalk Fargate Lambda Step Functions App Services DynamoDB Cognito CloudWatch Web App Redux Websockets Application Lifecycle Management
  • 11. Why Not Kubernetes? • Kubernetes is designed to run distributed systems resiliently This is not a distributed system. Quite the opposite– everything in one Docker • Kubernetes automatically scales your app We don’t need scaling. Everyone has their own unique instance • Kubernetes automatically restarts in case of failure We don’t need auto-restart. It is a better user experience to switch to a hot standby instance • Kubernetes has a steep learning curve • Kubernetes would increase complexity, cost • Kubernetes could be added later if needed, under Fargate Fargate has hypervisor isolation; Kubernetes alone only has kernel level isolation Bottom Line: Kubernetes is overkill; it is not the right solution for this use case
  • 12. Web App Improvements Web App Why? 1. React: Preact not compatible with some libraries 2. Redux: Need Sophisticated State Management 3. MaterialUI: Need Rich Widget Set 4. Typescript: Helps Manage Complexity 5. Websockets: superior performance and scalability over polling Benefits 1. Much more user friendly and intuitive 2. Supports Non-Technical Users 3. Nothing to install, 100% browser based 4. No more “security through obscurity” à Proper Authentication and Authorization Redux Websockets
  • 13. App Services Improvements Why? 1. Go: Only Python, Go, Java have native support in AWS. Go has fastest startup time and better inherent reliability 2. DynamoDB: For storing metadata about an instance e.g., student name, title, email, instance URL 3. CloudWatch: For monitoring instance metrics e.g., CPU, disk, memory Benefits 1. Student instances start up faster 2. Trainers can see list of students with their instances 3. Trainers can see ranks and titles 4. Trainers can monitor instance health 5. Trainers can instantly move a student to an available instance 6. Trainers can take attendance during class App Services DynamoDB Cognito CloudWatch
  • 14. Container Orchestration Improvements Why? 1. Fargate: Auto-manages and provisions instances, provides metrics via CloudWatch, and pay as you go. Full hypervisor isolation 2. Step Functions: Trigger workflows via events or via a schedule. Keeps Lambdas very simple by capturing workflow and orchestration 3. Lambda: serverless single-task microservice. very low overhead, Benefits 1. Pay as you go, only when services are active. Delayed start does not cost money per minute: step functions are pay-per-step 2. Trainers can schedule a class far in advance, with confidence the instances will be there when needed 3. Trainers can schedule a time after the class to automatically delete Container orchestration Elastic Beanstalk Fargate Lambda Step Functions
  • 15. Infrastructure as a Service (IaaS) Improvements Why? 1. SAM: Much higher-level constructs than Terraform. Purpose-built to support serverless architectures. Benefits 1. No need to purchase or support Terraform Infrastructure as a Service (IaaS) Serverless Application Model New Docker Image? Just define it in YAML
  • 16. Application Lifecycle Management (ALM) Improvements Why? 1. Github Actions: Much simpler model-- YAML versus Groovy-based Jenkinsfile. Extensive library of third-party actions 2. GitHub Issues: Simpler version of Jira tickets, good enough for small teams. 3. GitHub Wiki: Simple wiki pages suffice for most projects Benefits 1. Huge labor saver– no need to setup an environment to host the build server. 2. Much lower learning curve 3. No extra licensing costs, modest costs if free minutes exceeded 4. Everything is in one place: one password to remember 5. READMEs can link to wiki pages for more information (two-way links) Application Lifecycle Management
  • 17. Logical Architecture Amazon API Gateway (WebSockets) Amazon API Gateway Lambda REST function Lambda onConnect function Lambda onMessage function Lambda onDisconnect function AWS Step Function Start Class AWS Step Function Stop Class Lambda Start Class function Lambda Stop Class function AWS Fargate Amazon CloudWatch Logs container insights Amazon DynamoDB Persistence Layer Amazon Cognito Authentication Custom Authentication Static website assets (html, js, css) Amazon CloudFront TIM Users Lambda Auth function Serverless Architecture
  • 19. AWS Step Function Coordinates Delayed Spin-up 1) SAM Configuration File Registers Our State Machine 3) AWS State Machine Console Confirms Delayed Start 2) State Machine Specifies Wait Until LaunchTimestamp
  • 21. Vision Going Forward Training Image Manager Instructor-Led Training Tools Agile Practices Technical Practices Programming Languages Certified Training Learning Management System Video On Demand Self-Service Setup Learning Path Track Progress Grading Calendar Course Enrollments Print Certificates / Diplomas Training Management System Class Management Rostering Signups Postings Collect Dues Earlybird Discounts Marketing Campaigns
  • 22. Key Takeaways Will Serverless technology work for me? Yes, if: § Work is bursty; you don’t pay for downtime § You have workflow steps and coordination § You are free to rearchitect logic into lambdas § You can use best supported platforms (Go, Java, Js) Is Re-architecting to optimize your use of cloud technology worthwhile? YES § Huge Usability, Responsiveness Gains § Significant Performance and Reliability Improvements § Excellent tool and API support We started here... We ended here
  • 23. Cost Savings Will Serverless technology save money? Yes, § You don’t pay for downtime § Services only running when they are actually needed § We realized 45% savings, but YMMV