Leveraging
Serverless
Architecture for
Agile Software
Development
AWS COMMUNITY DAY 2023
Petra Novandi Barus
Slide 2
Slide 2 text
Hey there! You can call me
Petra
Technology Advisors Feb-2023
CTO, Kuncie.com 2021-2023
Developer Relation, AWS Indonesia 2019-2021
CTO, 99.co Indonesia 2018-2019
CTO, UrbanIndo.com 2011-2018
Slide 3
Slide 3 text
Agenda
1.Agile Software Development
2.Serverless Architecture
3.Benefits Serverless for Agile Development
4.Example Architecture Patterns on AWS
5.Best Practices
Slide 4
Slide 4 text
Agile
Software
Development
Slide 5
Slide 5 text
Individuals and interactions
over processes and tools
Working Software
over comprehensive documents
Customer Collaboration
over contract negotations
Responding to Change
over following a plan
Values of
Agile
Slide 6
Slide 6 text
Iterative and
Incremental
Development
In every iteration, we experiment
new ideas to our customers.
We build, measure, learn, and replan
Slide 7
Slide 7 text
Serverless
Overview
Slide 8
Slide 8 text
Serverless Overview
No Server to
Setup/Manage
Automatic Scaling
Built-in High-Availability
and Reliability
Pay only by Usage
1
Benefits of Serverless for Agile
REDUCED
TIME TO
DELIVER TO
MARKET
INCREASED
FOCUS ON THE
CUSTOMER’S
NEEDS
IMPROVED
COLLABORATION
WITHIN THE
TEAM
2 3
Slide 12
Slide 12 text
Example
Serverless
Architectures
My Personal Experiences
Slide 13
Slide 13 text
Single Page Application
Slide 14
Slide 14 text
Simple PHP Application
Slide 15
Slide 15 text
Image Processing
Slide 16
Slide 16 text
Best Practices
(Again) My Personal Experience
Slide 17
Slide 17 text
Application Design
1.Modular, well-encapsulated and loosely
coupled architecture design.
2.Lightweight model for custom ad-hoc
code
3.Stateless Application
Slide 18
Slide 18 text
Develop and Operate
1.Continuous delivery and deployment
2.Multiple environments (Development &
Production)
3.Infrastructure as Code
4.Monitoring
5.Empower with resource autonomy.
Slide 19
Slide 19 text
Budgetary
1.Leverage Free-Tier (e.g. 1million request
Lambda)
2.Tag resource by team / projects /
products
3.Implement Cost Policies
4.Evaluate ROI periodically
Slide 20
Slide 20 text
Learn and Embrace Change
1.Learn about customer.
2.Learn about your team.
3.Always experiment to deliver value
4.Architecture is evolutional. Always
prepare for improvements.