innovating with aws: how microservices on aws can transform your business
TRANSCRIPT
Rehan Qureshi
Canada Practice Manager, AWS Professional Services
“Innovating with AWS: How Microservices on AWS Can Transform Your Business”
1995
Amazon.com, since 1995…
disrupted
Innovation is behind the increasing number
of business models being
At Amazon, Innovation is not a goal,
It’s an on-going process
Keys to Digital Transformation
Lean Enterprise
DevOps
Agile - Scrum
Microservice architecture
Customer centric
Minimum Viable Products
Metrics-driven culture
Failure-embracing culture
Low-cost experimentation
Blue-Green and A-B groups
Machine Learning
Internet of Things (IoT)
Mobile
Big Analytics
Enabled
By
CLOUD
Can’t Digital Transformation occur on Premise?
Global economies of scale
Immediate access to latest technology
Improved security and risk visibility
Open – access to industry leading solutions
Elasticity – capacity alignment
Improved resiliency – design for failure
Lower cost of experimentation and innovation
Quicker global expansion
Easier to standardize and automate
Easier to link the supply chain - ecosystems
CLOUD
Easier to digitize in start-ups and companies like Amazon.
Too much legacy in large enterprises that are an anchor.
Monolith development lifecycle
developers
releasetestbuild
delivery pipeline
The
monolith
app
Problems With Monolith Software
System operation is a nightmare(module X is failing, who’s the owner?)
Lack of agility(very long time to add new
features)
Lack of innovation(team always busy fixing inefficiencies)
Long Build/Test/Release Cycles(who broke the build?)
Software architecture is hard to maintain and evolveScalability is compromised
(vertical scalability)
Slow development pace(developers busy fixing issues)
Customers frustrated(new releases take months)
‘Loosely Coupled’ Systems:
The looser they are coupled, the bigger they scale.
The more fault tolerant they get, the less dependencies, the faster you innovate.
Digital Architecture: decoupling
into smaller building blocks
Architecture
Service-Oriented Architecture
(SOA)
Single-purpose primitives
Connect only through APIs
“Microservices”
Each page on Amazon.com is
an aggregation of 200 to 300
Business Services
Team Structure
• Two-pizza teams
• Full ownership
• Full accountability
• Aligned incentives
• “DevOps”
The Anatomy of a Micro-service
Micro-service = Service-oriented architecture + “small” public API*
Micro-service
Software Modules(application, libraries, etc)
Data Store(eg, DynamoDB, RDS,
Cache, S3)
Public API
addProductDetails(ProductId id, ProductDetails details)
removeProductDetails(ProductId id)
getProductDetails(ProductId id) : ProductDetails
*Application Programming Interface
A Micro-service is not a Library, it’s… well, a Service
Product Details
software library
Product Details
micro-service
getProductDetails()
• A new version of a micro-service is immediately noticed by its dependent micro-services
• Micro-services relying on libraries will have to be rebuilt and re-deployed upon a new version of the library
Microservice development lifecycle
developers delivery pipelinesservices
releasetestbuild
releasetestbuild
releasetestbuild
releasetestbuild
releasetestbuild
releasetestbuild
Deploying More Frequently Lowers Risk
Smaller Effort
“Minimized Risk”
Frequent Release Events:
“Agile Methodology”
Time
Change
Rare Release Events:
“Waterfall Methodology”
Larger Effort
“Increased Risk”
Time
Change
Deploying More Frequently Increases Learning
Rapid Learning
Frequent Release Events:
“Agile Methodology”
Time
Change
Rare Release Events:
“Waterfall Methodology”
Infrequent Learning
Time
Change
= 50 million deployments a year
Thousands of teams
× Microservice architecture
× Continuous delivery
× Multiple environments
#MicroServices
Increased agility enables innovation!
Digital Transformation
Means innovation across the entire IT value chain
Changing customer
relationship or
experience
Improve internal processes
Create an entirely new
value proposition
Transformational Drivers
Changing customer behavior will continue to fundamentally transform FSI’s
industry and require investments into the overall Customer Experience
New competitors e.g. Fintech’s and disintermediation will put an increased
pressure on the FSI’s and requires investment into innovative solutions
Tighter regulation will put more scrutiny on the FSI’s and business process,
compliance workflow automation will become a key differentiating factor
New technologies e.g. Blockchain will disrupt incumbent business models,
players and require banks to be able to integrate with the larger FSI ecosystem
Cost and operational risk reduction requires FSI’s investment into
simplification programs and drive the adoption of and elastic infrastructures
The Innovation Solution:
An API* approach for FSI
Unbundling FSI Value Chains
Monolithic Platforms Decouple by Layering Modularization
Monolithic Core Banking Platforms
Etc.
Monolithic Architecture:
• Tightly-integrated core banking platforms
• Inefficient, hard-to-change core banking
solutions
• Long, expensive change cycles
• Limited options for effective out-/in-source
business capabilities
• Tight-coupling increases single point of failure
and operational risk
Reference DataOperations &
Execution
Risk &
ComplianceEtc.
Customer Experience
Tightly-coupled, hard-to-change legacy core banking platforms result in…
…poor customer experience, slow innovation cycles and expensive IT platforms.
Client Advisor
Capabilities Client-facing
Capabilities
Core Banking
Decoupling by Layering
Enterprise Service Bus
Client Advisor
Capabilities
Client / eBanking
Capabilities Etc.
Enterprise Service Bus Architecture:
• Many companies use an Enterprise Service Bus
(ESB) to decouple front end capabilities from
legacy core banking solutions
• ESBs become critical dependencies
• Unclear business and IT cost ownership for the
ESB - layer
• Performance bottleneck, single point of failure
• Minimal increased efficiency in time to market
• Increased complexity, introducing another layer
Reference DataOperations &
Execution
Risk &
ComplianceEtc.
Customer Experience
Enterprise Services Buses are widely used to decouple core banking solutions…
…but resulted in increased complexity, cost and minimal time to market increase.
Core Banking
Adoption of Standard API’s
Etc.
Component-based, Service-oriented
architecture
• Functional and information master components
• Use Application Programming Interface’s (API’s)
to access information objects
• APIs implement functional and data access
control
• Customer-facing applications become decoupled
from the core banking platform
• Improved time market delivering a client and
client advisor functionality
• No bulky ‘Integration’ layer and clear cost
ownership
• Functionality and information accuracy is
constraint by legacy core banking platform
Customer Experience
API’s are an efficient way to decouple client-facing business capabilities however…
…the customer experience is still constrained by legacy core banking systems.
Client Advisor
Capabilities Client-facing
Capabilities
API API API API
Reference DataOperations &
Execution
Risk &
ComplianceEtc.
Core Banking
Again? What is a Micro Service?
Micro-service
Software Modules(application, libraries, etc)
Data Store(eg, DynamoDB, RDS,
Cache, S3)
Public API addProductDetails(ProductId id, ProductDetails details)
removeProductDetails(ProductId id)
getProductDetails(ProductId id) : ProductDetails
Micro service = Service-oriented architecture + “small” API
Adoption of Micro Services – API Banking
Trade
Execution
Micro Service Architecture:
• Innovate faster by using standard APIs for
application development
• Customer experience is based on a aggregation
of micro services
• Loosely-coupled micro services integrate
through standard APIs
• Elastic scaling of individual micro services
• Enable business to source capabilities in the
most cost efficient way:
• Build business differentiating capabilities
• Source non-differentiating capabilities
• Increase agility by enabling teams to develop
independently – Two Pizza Team
Customer Experience
Provide an integrated customer experience by aggregating micro services…
…every banking service is a Application Programming Interface (API)
API API API API
Corporate
Actions
Anti Money
LaunderingEtc,
Payment
API API API API
Client
InformationSuitability
Rules
Trade
Capture
Build Your Applications as a Web Of Micro
Services
Position and Transaction
Customer InformationProduct Information
Client Report / Monthly Statement
Investment Proposals
Benefits of Micro-services
System operation is simple(developers can be on-call )
Agility(new features added quickly)
Innovation as its best(team has time to think big)
Short Build/Test/Release Cycles(fix problems soon)
Software architecture is easier to maintain and evolveScalable Software
(horizontal scalability)
Fast development pace(developers fully focused on writing code) Customers Excited
(new software releases every day!)
AWS has the Optimal Combinations of Interoperable
Services
Amazon Redshift Amazon Elastic
MapReduce
Data Warehouse Semi-structured
Amazon
Glacier
Amazon Simple
Storage Service
Data Storage Archive
Amazon
DynamoDB
Amazon
Machine
Learning
Amazon Kinesis
NoSQL Predictive Models Other AppsStreaming
Use Case: Automated Advisory Platform
Customer
Profile
Position
&Transaction
Research
Information
Benchmark /
Asset Alloc.
Social Media
Investment
Proposal
Investment
Proposal
Investment
Proposal
Portfolio
Assessment
Investment
Proposal
Suitability
Checks
Ingest/
Collect
Consume/
visualizeStore
Process/
analyze
1 40 9
5
DataAnswers &
Insights
Automated Investment ProposalCustomer
Bank
Client
Advisor
Portfolio
Assessment
Investment
Opportunities
Investment
Proposal
Customer
Internet
Etc.
Architecture: Automated Advisory Platform
Ingest/
Collect
Consume/
visualizeStore
Process/
analyze
Data
1 40 9
5
Amazon S3
Data lake
Amazon
EMR
Amazon
Kinesis
Amazon
RedShift
Answers &
Insights
BI / Reporting
Investment
ProposalInvestment
ProposalInvestment
Proposal
Customer
Bank
Client
Advisor
Internet
Amazon Machine
Learning
Amazon
DynamoDB
Amazon S3
Portfolio
Assessment
Investment
Opportunities
Investment
Proposal Amazon
QuickSight
Use Case: Automated Risk & Compliance
Monitoring and Reporting
Client
Information
Securities
Transactions
Payment
Transactions
Transaction
Monitoring
AML
Monitoring
Suitability
Monitoring
Ingest/
Collect
Consume/
visualizeStore
Process/
analyze
1 40 9
5
DataAnswers &
Insights
Risk and Compliance Monitoring
Etc.
Order
Manager
Settlement
System
Etc.
Bank
Transaction
Regulatory
Suspicious
Transactions
Transaction
Report
Suitability
Report
Suspicious
Transactions
Etc.
Architecture: Automated Risk & Compliance
Monitoring and Reporting
Ingest/
Collect
Consume/
visualizeStore
Process/
analyze
Data
1 40 9
5
Amazon S3
Data lake
Amazon EMR
Amazon RedShift
Answers &
Insights
BI / Reporting
Order
ManagerTransaction
Report
Suitability
Report
Suspicious
Transactions
Etc.
Amazon S3
Settlement
System
Etc. Amazon
QuickSight
Bank
Micro-services are usually part of a bigger strategy
that AWS can make possible!
Rethink your Processes
• Favor small focused development teams
• Move towards a full DevOps model (short feedback cycles, regular
deployments)
• Adopt an Agile methodology (eg, Scrum, Kanban, XP, etc)
Engage your People
• Embrace the new culture
• Develop new skillsets
• Recruit the right people