SlideShare a Scribd company logo
1 of 107
Download to read offline
Measure and increase developer
productivity with the help of
Serverless
by Christian Bannes and Vadym Kazulkin, ip.labs GmbH, 14.10.2020
Contact
Vadym Kazulkin
ip.labs GmbH
v.kazulkin@iplabs.de
@VKazulkin
@ServerlessBonn (Meetup)
Christian Bannes
ip.labs GmbH
c.bannes@iplabs.de
xing.com/profile/Christian_Bannes
https://www.linkedin.com/in/vadymkazulkin/
https://www.iplabs.de/
Ip.labs GmbH
https://www.iplabs.de/
Let’s talk about the
challenges of the
software development in
general first
Cognitive Load –
the total amount of mental effort
being used in the working memory
• Intrinsic
• Extraneous
• Germane
https://teamtopologies.com/
Cognitive Load
• Intrinsic
• How to write a Java class or use a framework
(Spring)
• Extraneous
• Germane
Cognitive Load
• Intrinsic
• Extraneous
• How to automate tests (unit, integration, end-to-end, web, desktop, mobile)
• How to build, package, deploy and run my application
• How to configure monitoring, alerting, auto-scaling, logging and tracing
• How to operate and maintain infrastructure
• How to build-in fault-tolerance and resiliency
• How to make the hardware, networking and application secure
• Germane
Cognitive Load
• Intrinsic
• Extraneous
• Germane
• Domain Knowledge (payment, e-commerce)
• Business processes and workflows
Cognitive Load
• Intrinsic ->
become fluent in it
• Extraneous ->
minimize amount of what we
implement/operate/support/own by ourselves
• Germane ->
minimize amount of what we have to implement
by ourselves
Productivity
We are productive if we regularly ship products,
which are successfully used by our customers
What is holding us back from
being productive?
Technical Debt - reflects the implied cost
of additional rework caused by choosing an
easy (limited) solution now instead of using
a better approach that would take longer
”The Cost of Poor Quality Software in the US: A 2018 Report”
https://www.it-cisq.org/the-cost-of-poor-quality-software-in-the-us-a-2018-report/The-Cost-of-Poor-Quality-Software-in-the-US-2018-Report.pdf
Technical Debt
• Even a perfect solution can become the
technical debt over the time
• Version of programming language comes
out of support (Java 8, JS Frameworks)
• Security considerations forces us to
upgrade one of our dependencies (library
or web application server version)
• One of our dependencies (e.g. to open
source project) is discontinued
Technical Debt
Think of what can happen to your software over
the entire life cycle of our product
Technical Debt
• is related to amount of code written
• is related to amount of dependencies used
• open source projects, programming
languages, databases, (web) application
servers
Legacy Systems are systems that can’t
evolve
”The Cost of Poor Quality Software in the US: A 2018 Report”
https://www.it-cisq.org/the-cost-of-poor-quality-software-in-the-us-a-2018-report/The-Cost-of-Poor-Quality-Software-in-the-US-2018-Report.pdf
Legacy System
Evolutionary Architecture –
supports guided, incremental
change across multiple dimensions
• Incremental change
• Appropriate architectural coupling
• Fitness functions
”Architectural Coupling” https://learning.oreilly.com/library/view/building-evolutionary-architectures/9781491986356/ch04.html
Evolutionary Architecture –
Fitness functions
• Source code metrics (such as measuring
cyclomatic complexity)
• Unit tests (% of coverage and % of success)
• Performance metrics (such as API latency or
throughput)
• Security (encryption at rest, e.g. checking that all S3
buckets have encryption enabled, or automatic key rotation
for all external APIs, with tools such as the AWS Secrets
Manager)
• ArchUnit, Sonar, CI/CD Tools
Danilo Poccia „ Serverless + Evolutionary Architectures + Safe Deployments = Speed in the Right Direction”
https://blog.usejournal.com/serverless-evolutionary-architectures-safe-deployments-speed-in-the-right-direction-7b4b01e27254
The Value Proposition of
Serverless
But let’s talk about of Total Cost of Ownership of
the Serverless paradigm
TCO Full Picture
No Infrastructure
Operation and
Maintenance
Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless
No Infrastructure Maintenance
Is infrastructure maintenance and
operation your core competency ?
TCO Full Picture
No Infrastructure
Operation and
Maintenance
Auto Scaling and
Fault Tolerance
Built in
Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless
Auto Scaling And Faul Tolerance
Built In
• Can you get capacity planning
and auto scaling right?
• Do you want to solve the hard problem
of fault tolerance by yourself?
TCO Full Picture
No Infrastructure
Operation and
Maintenance
Auto Scaling and
Fault Tolerance
Built in
Do more with less
Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless
Do more with less
By heavily relying on the managed
Serverless services you
• Need fewer engineers to start
implementing your new product idea
• Can do more with the same amount of
people
TCO Full Picture
No Infrastructure
Operation and
Maintenance
Auto Scaling and
Fault Tolerance
Built in
Do more with less
Lower technical
debt
Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless
Lower technical debt
• Whatever code you write today is always tomorrow’s technical
debt © Paul Johnston
• Less code means lower technical debt
• Time and effort required for maintaining the solution over its whole
lifecycle is by far much more than for developing it
Jeff Atwood „The Best Code is No Code At All” https://blog.codinghorror.com/the-best-code-is-no-code-at-all/
Paul Johnston “Cloud 2.0: Code is no longer King — Serverless has dethroned it”
https://medium.com/@PaulDJohnston/cloud-2-0-code-is-no-longer-king-serverless-has-dethroned-it-c6dc955db9d5
TCO Full Picture
No Infrastructure
Operation and
Maintenance
Auto Scaling and
Fault Tolerance
Built in
Do more with less
Lower technical
debt
Focus on Business
Value and Innovation
Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless
Focus On Business Value and
Innovation
Every organization wants exactly this!
TCO Full Picture
No Infrastructure
Operation and
Maintenance
Auto Scaling and
Fault Tolerance
Built in
Do more with less
Lower technical
debt
Faster Time to
Market
Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless
Focus on Business
Value and Innovation
Faster Time To Market
• Time To Market is the key differentiator in
today’s business!
• Ask yourself: what is core for your business
and what you can get as Commodity +(Utility)
as a Service?
Serverless Mindset at ip.labs
“Accelerate Innovation and Maximize Business Value with Serverless Applications”
https://www.slideshare.net/AmazonWebServices/accelerate-innovation-and-maximize-business-value-with-serverless-applications-srv212r1-aws-reinvent-2018
Serverless Mindset at ip.labs
If AWS offers a managed service with acceptable price
and „good enough“ feature set, use it
• AWS-native aka Serverless is your first option.
• For the price consider the Total Cost of
Ownership (TCO)
If market offers a managed service with acceptable price
and „good enough“ feature set, buy/rent it
• PagerDuty instead of CloudWatch Alarm
• Akamai or Digital Ocean CDN instead of AWS
CloudFront
If you have to manage it by yourself, manage it • Prometheus/Grafana instead of AWS CloudWatch
If you can reconsider requirements, do it • Narrow the scope, get 80% of what you need
from AWS or market, instead of building or hosting it
yourself
• Get faster time to market, don‘t lose the focus
• AWS AppConfig instead of own Feature Toggle
solution
• AWS Step Functions instead of Camunda BPMN
If you have to build it, own it • Business logic in the core domains
Jared Short https://twitter.com/shortjared/status/1100887501047132160?lang=de
How to measure success
See DORA State of DevOps 2018-2019 Reports
Software Delivery and
Operational Performance
See DORA State of DevOps 2018-2019 Reports
Example: strategies to reduce
time to restore service
See DORA State of DevOps 2018-2019 Reports
Blue-Green
deployment
“Win-Win Deployment Strategies for Modern Apps” https://rollbar.com/blog/deployment-strategies/
Canary
deployment
AWS Lambda Deployment
Best Practices:
• API Gateway Stage variables and Lambda
Aliases
• Lambda Alias Traffic Shifting
Chris Munns: “Testing and Deployment Best Practices for AWS Lambda-Based Applications”
https://www.youtube.com/watch?v=zJQDAsWm-5k&list=LLYgjRSI2oCzI9eooyFrWR7A&index=1
AWS Lambda Deployment
Best Practices
• AWS Lambda Alias Canary and Linear Traffic
Shifting & AWS SAM Safe Deployments
• CloudWatch Rollback Alarms & Lambda hooks
Chris Munns: “Testing and Deployment Best Practices for AWS Lambda-Based Applications”
https://www.youtube.com/watch?v=zJQDAsWm-5k&list=LLYgjRSI2oCzI9eooyFrWR7A&index=1
Time Spent
See DORA State of DevOps 2018-2019 Reports
Wardley Maps
Simon Wardley https://www.slideshare.net/swardley/why-the-fuss-about-serverless-88107645
Co-evolution of practices
to become productive
with Serverless
Co-evolution of practices with
Serverless 1/2
• True DevOps (even DevSecOps)
• FinDev responsibilities in the teams
• Complete infrastructure automation
• Chaos Engineering
Sheen Brisals “Why the ‘WHY’ matters more than the ‘WHAT’ in Serverless!”
https://medium.com/lego-engineering/why-the-why-matters-more-than-the-what-in-serverless-2ef56c397962
DevOps Topologies: https://web.devopstopologies.com/
Co-evolution of practices with
Serverless 2/2
• Each developer has its own (AWS test) account
• No local testing environment or only for quick
functional tests
• Testing in production
Michael Bryzek “What do you know about testing in production?” https://www.youtube.com/watch?v=z-ATZTUgaAo
Using Serverless ecosystem
with the right engineering practices in place will
significantly reduce
• extraneous and germane cognitive load
• the amount of code written
How to write less code with
AWS Serverless services 1/3
• Write fewer Lambda functions
• use direct AWS service integrations in case the Lambda only
calls the AWS service itself
Less Lambda functions means less:
• code to write, test, run and maintain
• CI/CD (deploy, rollback strategies) to maintain
• Infrastructure as a Code (IAM policies, permission) to write and test
• cold-start worries
• point of failures and retries
• security concerns
• worries about Lambda limits (e.g. concurrency settings per AWS account)
• spending on Lambda, CloudWatch and 3rd party SaaS on (AWS) (monthly) bill
Sheen Brisals “Don’t wait for Functionless. Write less Functions instead”
https://medium.com/lego-engineering/dont-wait-for-functionless-write-less-functions-instead-8f2c331cd651
How to write less code with
AWS Serverless services 2/3
• Write fewer Lambda functions
• use more direct service integrations in case the Lambda only calls the
Service itself
• Write less Infrastructure as a Code
• applies not only for Lambda but also to other services like AppSync
• Use (AWS) Services/Frameworks which provide meaningful abstractions
• Amplify Framework or Serverless Framework Components
How to write less code with
AWS Serverless services 3/3
• API Gateway Service Integration
• HTTP APIs Storage-First Service
Integration
• Step Functions Service Integration
• Event Bridge Filtering and Routing
• Lambda Destinations
• AppSync and Direct Lambda
Resolvers
• Amplify Framework
• Serverless Framework
Components
Sheen Brisals “Don’t wait for Functionless. Write less Functions instead”
https://medium.com/lego-engineering/dont-wait-for-functionless-write-less-functions-instead-8f2c331cd651
API Gateway Service Integration
API Gateway Service Integration with
Dynamo DB : Example ID generator 1/2
Sheen Brisals “Sequence Numbering in Serverless via API Gateway”
https://medium.com/lego-engineering/sequence-numbering-in-serverless-via-api-gateway-40e5f6c83e93
https://github.com/ToQoz/api-gateway-mapping-template
API Gateway Service Integration with
Dynamo DB : Example ID generator 2/2
Sheen Brisals “Sequence Numbering in Serverless via API Gateway”
https://medium.com/lego-engineering/sequence-numbering-in-serverless-via-api-gateway-40e5f6c83e93
https://github.com/ToQoz/api-gateway-mapping-template
Eric Johnson “https://aws.amazon.com/de/blogs/compute/building-storage-first-applications-with-http-apis-service-integrations/”
HTTP APIs Storage-First Service
Integration
• Event Bridge
• Kinesis Data Streams
• SQS
• AppConfig
• Step Functions
Step Functions Service Integration
“Service Integrations with AWS Step Functions” https://docs.aws.amazon.com/step-functions/latest/dg/concepts-service-integrations.html
Event Bridge Filtering and Routing
“Reducing custom code by using advanced rules in Amazon EventBridge”
https://aws.amazon.com/de/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/
Lambda Destinations
“Introducing AWS Lambda Destinations” https://aws.amazon.com/de/blogs/compute/introducing-aws-lambda-destinations/
https://www.trek10.com/blog/lambda-destinations-what-we-learned-the-hard-way
AppSync and Direct Lambda
Resolvers
https://aws.amazon.com/de/appsync
“Introducing Direct Lambda Resolvers: AWS AppSync GraphQL APIs without VTL” https://aws.amazon.com/de/blogs/mobile/appsync-direct-lambda/
Amplify Framework
https://aws.amazon.com/amplify/?nc1=h_ls
Serverless Framework Components
https://www.serverless.com/blog/what-are-serverless-components-how-use
Using Serverless ecosystem will
with the right engineering practices in place will
significantly reduce
• extraneous and germane cognitive load
• the amount of code written
• amount of dependencies (no execution runtime and web
application server to take care of)
Serverless with the focus on you
core domains will enable
• iterative development mind set
• experimentation culture
• focus on business value innovation and
faster time to market
• evolutionary architectures
Evolutionary Architecture –
supports guided, incremental
change across multiple dimensions
• Incremental change
• Appropriate architectural coupling
• Fitness functions
”Architectural Coupling” https://learning.oreilly.com/library/view/building-evolutionary-architectures/9781491986356/ch04.html
• Serverless ecosystem supports
evolutionary architectures really
well
• All Serverless solutions often
suffer from the “Antipattern:
Last 10% Trap”
AWS Serverless ecosystem
Overview of the recent major
improvements
Architecture and
workloads types
• Event-driven
• API-driven
• Batch Job
• Internal Tool
• ML/AI
• Big Data
Image: flickr.com/photos/everywhereatonce/294789504 Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
Lambda Layers
& Lambda
Runtime API
Door opener for use
cases like:
• Big Data
• ML/AI
Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
A Shared File
System for Your
Lambda
Functions
Door opener for use
case like:
• ML/AI
Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
Provisioned
Concurrency for
Lambda Functions
Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
Lambda functions
as targets for
Application Load
Balancers
Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
HTTP APIs in Beta
70% cheaper as API Gateway
• Fewer configuration options
• Well-suited for most use-cases
DynamoDB
On-Demand
Capacity mode
Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
Jeremy Daly: “Mixing VPC and Non-VPC Lambda Functions for Higher Performing Microservices”
https://www.jeremydaly.com/mixing-vpc-and-non-vpc-lambda-functions-for-higher-performing-microservices/ Vadym Kazulkin @VKazulkin , ip.labs GmbH
Lambda behind the
Virtual Private
Cloud (VPC)
Lambda behind the VPC
• The network interface creation happens
when Lambda function is created or its
VPC settings are updated
• Reduced additional cold start from approx.
10 seconds to below 1 second
Chris Munns: "Announcing improved VPC networking for AWS Lambda functions”
https://aws.amazon.com/de/blogs/compute/announcing-improved-vpc-networking-for-aws-lambda-functions/
Amazon Aurora
Serverless Data
API as beta for MySql
and Postgres available
https://docs.aws.amazon.com/de_de/AmazonRDS/latest/AuroraUserGuide/data-api.html Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
RDS Proxy –
Generally Available
for Aurora MySQL, Aurora
PostgreSQL, RDS MySQL
and RDS PostgreSQL
Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
Compute
Savings Plans
now cover AWS
Lambda Usage
Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
Recent CloudWatch Improvements
• Search over multiple Log Groups became possible
• CloudWatch Logs Insights
• enables you to interactively search and analyze your
log data in Amazon CloudWatch Logs
• Embedded Metric Format
• JSON specification used to instruct CloudWatch Logs to
automatically extract metric values embedded in
structured log events.
Further Improvement Areas for
Serverless Ecosystem 1/2
• EFS improvements
• Enable calling Lambda upon EFS Events (file created or updated)
• Integrate with AWS compliance and governance services e.g.
AWS Config, AWS CloudTrail like S3 does
• CloudWatch improvements
• Observability (no match to Lumigo or Epsagon)
• Alarms (no match to PagerDuty or Lumigo or Epsagon)
Further Improvement Areas for
Serverless Ecosystem 2/2
• CodeCommit improvements
• not nearly comparable to GitHub and BitBucket
• X-Ray support for all (async) Serverless services
• EventBridge
Serverless in practice
( for large scale projects)
Situation at ip.labs
• Hybrid (still having monolithic java application)
• One team completely serverless for two years
• Another team just started using serverless only technology
Reduce handover
between Teams
https://hackingchristianity.net/2014/07/justice-is-not-a-sprint-or-a-marathon.html
Before we went serverless...
• Central system administration team
• Tickets prioritized
• Lead to waiting time
Waiting = WASTE
No low level administration
• No need for low level administration at networking level
• No servers and no OS
• Less interaction with administration team
Responsibility Shift
• Still need for operation
• Serverless = Devops
• Less waiting time means you go faster
Less Code
https://www.flickr.com/photos/qubodup/16258492451
Managed Services
• Use managed services for generic subdomains
• Example: Authentication with Cognito
Live Demo
• Static webpage on S3
• API via Http API Gateway
• Authentication via Cognito
• JWT Authorizer
Organize lambdas
around business
domain
Architecture for serverless
• 'just functions' - no need for architecture?
• Architecture = long term investment
• Important for large scale projects
Organize lambdas around business domain
Domain
Organize lambdas around bussiness
domain
...
Subdomain
...
Identity
& Access
Organize lambdas around bussiness
domain
Product Portfolio
Identity
& Access
...
...
Bounded
Context
Product
Inventory
Shop
Integration
Product Portfolio Subdomain
Product Inventory Bounded Context
Bounded
Context
Use Case = One Lambda Function
Use Case
Communication via Events
Communication via
events
Shared Infrastructure
Shared
infrastructure
Namespacing Data
• Each service operates only on
its own data
• HashKey with namespace
prefix
• Policy ensures service can only
access it's own data
• Fine grained access control
Subdomain = Independant Application
Product Portfolio
Identity
& Access
...
...
Product
Inventory
Shop
Integration
Separate business
from
infrastructure logic
https://pixabay.com/de/photos/stra%C3%9Fenverkehr-kreuzung-kreisel-971205/
Why you should separate
• Evolve technology and business independently
• Expect technology changes in the future
• Refactor technology without changing business code
https://en.wikipedia.org/wiki/Hexagonal_architecture_(software)
Ports & Adapters
• Interface in language of your
domain = ports
• Implementation = adapters
• Inject the implementation into your
domain
Ports & Adapters implementation
Adapters
Ports
Ports & Adapters implementation
Business method
depens on interfaces
Convert intput to domain
object
Adapters for injection
Automate
everything
https://pixabay.com/de/photos/roboter-arm-technologie-roboterarm-2791671/
• Infrastructure as Code is a MUST
• Create a CLI for scaffolding & common tasks
Automation
• Creates serverless.yml with predefined settings
• Project scaffolding
• Deployment pipeline
CLI usage
cli create:service product-inventory
Continuous Delivery
• Codepipeline for deployments
• One Pipeline for one service
• Every commit on master triggers deployment
Thank You!

More Related Content

What's hot

FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...Vadym Kazulkin
 
Migrating Your Apps to the Cloud: How to do it and What to Avoid
Migrating Your Apps to the Cloud: How to do it and What to AvoidMigrating Your Apps to the Cloud: How to do it and What to Avoid
Migrating Your Apps to the Cloud: How to do it and What to AvoidVMware Tanzu
 
From DevOps to DevSecOps: 2 Dimensions of Security for DevOps
From DevOps to DevSecOps: 2 Dimensions of Security for DevOpsFrom DevOps to DevSecOps: 2 Dimensions of Security for DevOps
From DevOps to DevSecOps: 2 Dimensions of Security for DevOpsSanjeev Sharma
 
From Apollo 13 to Google SRE
From Apollo 13 to Google SREFrom Apollo 13 to Google SRE
From Apollo 13 to Google SRESanjeev Sharma
 
Agility and Control from AWS [FutureStack16]
Agility and Control from AWS [FutureStack16]Agility and Control from AWS [FutureStack16]
Agility and Control from AWS [FutureStack16]New Relic
 
Enabling DevOps in the cloud - Federal Cloud Innovation Center
Enabling DevOps in the cloud - Federal Cloud Innovation CenterEnabling DevOps in the cloud - Federal Cloud Innovation Center
Enabling DevOps in the cloud - Federal Cloud Innovation CenterSanjeev Sharma
 
Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...
Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...
Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...Stefan Richter
 
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...Sanjeev Sharma
 
Agile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAgile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAdam Getchell
 
The Role of Automation in the Journey to Continuous Delivery
The Role of Automation in the Journey to Continuous DeliveryThe Role of Automation in the Journey to Continuous Delivery
The Role of Automation in the Journey to Continuous DeliveryXebiaLabs
 
Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...IBM UrbanCode Products
 
IBM Pulse session 2727: Continuous delivery -accelerated with DevOps
IBM Pulse session 2727: Continuous delivery -accelerated with DevOpsIBM Pulse session 2727: Continuous delivery -accelerated with DevOps
IBM Pulse session 2727: Continuous delivery -accelerated with DevOpsSanjeev Sharma
 
Practical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User MonitoringPractical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User MonitoringDynatrace
 
AWS DevDay Cologne - CI/CD for modern applications
AWS DevDay Cologne - CI/CD for modern applicationsAWS DevDay Cologne - CI/CD for modern applications
AWS DevDay Cologne - CI/CD for modern applicationsCobus Bernard
 
Integrating SAP into DevOps Pipelines: Why and How
Integrating SAP into DevOps Pipelines: Why and HowIntegrating SAP into DevOps Pipelines: Why and How
Integrating SAP into DevOps Pipelines: Why and HowDevOps.com
 
Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]Dynatrace
 
Delivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudDelivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudIBM UrbanCode Products
 
How NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsHow NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsSanjeev Sharma
 
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, ReleaseEnterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, ReleaseIBM UrbanCode Products
 
Adobe’s eCommerce Digital Transformation Journey
Adobe’s eCommerce Digital Transformation JourneyAdobe’s eCommerce Digital Transformation Journey
Adobe’s eCommerce Digital Transformation JourneyDynatrace
 

What's hot (20)

FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
 
Migrating Your Apps to the Cloud: How to do it and What to Avoid
Migrating Your Apps to the Cloud: How to do it and What to AvoidMigrating Your Apps to the Cloud: How to do it and What to Avoid
Migrating Your Apps to the Cloud: How to do it and What to Avoid
 
From DevOps to DevSecOps: 2 Dimensions of Security for DevOps
From DevOps to DevSecOps: 2 Dimensions of Security for DevOpsFrom DevOps to DevSecOps: 2 Dimensions of Security for DevOps
From DevOps to DevSecOps: 2 Dimensions of Security for DevOps
 
From Apollo 13 to Google SRE
From Apollo 13 to Google SREFrom Apollo 13 to Google SRE
From Apollo 13 to Google SRE
 
Agility and Control from AWS [FutureStack16]
Agility and Control from AWS [FutureStack16]Agility and Control from AWS [FutureStack16]
Agility and Control from AWS [FutureStack16]
 
Enabling DevOps in the cloud - Federal Cloud Innovation Center
Enabling DevOps in the cloud - Federal Cloud Innovation CenterEnabling DevOps in the cloud - Federal Cloud Innovation Center
Enabling DevOps in the cloud - Federal Cloud Innovation Center
 
Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...
Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...
Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...
 
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...
 
Agile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAgile Secure Cloud Application Development Management
Agile Secure Cloud Application Development Management
 
The Role of Automation in the Journey to Continuous Delivery
The Role of Automation in the Journey to Continuous DeliveryThe Role of Automation in the Journey to Continuous Delivery
The Role of Automation in the Journey to Continuous Delivery
 
Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...
 
IBM Pulse session 2727: Continuous delivery -accelerated with DevOps
IBM Pulse session 2727: Continuous delivery -accelerated with DevOpsIBM Pulse session 2727: Continuous delivery -accelerated with DevOps
IBM Pulse session 2727: Continuous delivery -accelerated with DevOps
 
Practical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User MonitoringPractical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User Monitoring
 
AWS DevDay Cologne - CI/CD for modern applications
AWS DevDay Cologne - CI/CD for modern applicationsAWS DevDay Cologne - CI/CD for modern applications
AWS DevDay Cologne - CI/CD for modern applications
 
Integrating SAP into DevOps Pipelines: Why and How
Integrating SAP into DevOps Pipelines: Why and HowIntegrating SAP into DevOps Pipelines: Why and How
Integrating SAP into DevOps Pipelines: Why and How
 
Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]
 
Delivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudDelivering Applications Continuously to Cloud
Delivering Applications Continuously to Cloud
 
How NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsHow NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOps
 
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, ReleaseEnterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
 
Adobe’s eCommerce Digital Transformation Journey
Adobe’s eCommerce Digital Transformation JourneyAdobe’s eCommerce Digital Transformation Journey
Adobe’s eCommerce Digital Transformation Journey
 

Similar to Measure and Increase Developer Productivity with Help of Serverless at Serverless Architecture Conference Berlin 2020

Measure and Increase Developer Productivity with Help of Serverless at AWS Co...
Measure and Increase Developer Productivity with Help of Serverless at AWS Co...Measure and Increase Developer Productivity with Help of Serverless at AWS Co...
Measure and Increase Developer Productivity with Help of Serverless at AWS Co...Vadym Kazulkin
 
Convince your boss to go Serverless at serverless week Brazil
Convince your boss to go Serverless at serverless week BrazilConvince your boss to go Serverless at serverless week Brazil
Convince your boss to go Serverless at serverless week BrazilVadym Kazulkin
 
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...Vadym Kazulkin
 
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...Vadym Kazulkin
 
Writing less code with Serverless on AWS at AWS Community Day DACH 2021
Writing less code with Serverless on AWS at AWS Community Day DACH 2021Writing less code with Serverless on AWS at AWS Community Day DACH 2021
Writing less code with Serverless on AWS at AWS Community Day DACH 2021Vadym Kazulkin
 
Writing less code with Serverless on AWS at FrOSCon 2021
Writing less code with Serverless on AWS at FrOSCon 2021Writing less code with Serverless on AWS at FrOSCon 2021
Writing less code with Serverless on AWS at FrOSCon 2021Vadym Kazulkin
 
Writing less code with Serverless on AWS at AWS User Group Nairobi
Writing less code with Serverless on AWS at AWS User Group NairobiWriting less code with Serverless on AWS at AWS User Group Nairobi
Writing less code with Serverless on AWS at AWS User Group NairobiVadym Kazulkin
 
Writing less code with Serverless on AWS at OOP 2022
Writing less code with Serverless on AWS at OOP 2022Writing less code with Serverless on AWS at OOP 2022
Writing less code with Serverless on AWS at OOP 2022Vadym Kazulkin
 
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...Vadym Kazulkin
 
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...Vadym Kazulkin
 
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...Vadym Kazulkin
 
Ultra-scale e-Commerce Transaction Services with Lean Middleware
Ultra-scale e-Commerce Transaction Services with Lean Middleware Ultra-scale e-Commerce Transaction Services with Lean Middleware
Ultra-scale e-Commerce Transaction Services with Lean Middleware WSO2
 
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...WSO2
 
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...Chris Haddad
 
Implementing Service Oriented Architecture
Implementing Service Oriented ArchitectureImplementing Service Oriented Architecture
Implementing Service Oriented ArchitectureAmazon Web Services
 
Implementing Service Oriented Architecture
Implementing Service Oriented Architecture Implementing Service Oriented Architecture
Implementing Service Oriented Architecture Amazon Web Services
 
Implementing Service Oriented Architecture
Implementing Service Oriented ArchitectureImplementing Service Oriented Architecture
Implementing Service Oriented ArchitectureAmazon Web Services
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKSPhil Reay
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKSPhil Reay
 
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeSteve Mercier
 

Similar to Measure and Increase Developer Productivity with Help of Serverless at Serverless Architecture Conference Berlin 2020 (20)

Measure and Increase Developer Productivity with Help of Serverless at AWS Co...
Measure and Increase Developer Productivity with Help of Serverless at AWS Co...Measure and Increase Developer Productivity with Help of Serverless at AWS Co...
Measure and Increase Developer Productivity with Help of Serverless at AWS Co...
 
Convince your boss to go Serverless at serverless week Brazil
Convince your boss to go Serverless at serverless week BrazilConvince your boss to go Serverless at serverless week Brazil
Convince your boss to go Serverless at serverless week Brazil
 
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
 
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...
 
Writing less code with Serverless on AWS at AWS Community Day DACH 2021
Writing less code with Serverless on AWS at AWS Community Day DACH 2021Writing less code with Serverless on AWS at AWS Community Day DACH 2021
Writing less code with Serverless on AWS at AWS Community Day DACH 2021
 
Writing less code with Serverless on AWS at FrOSCon 2021
Writing less code with Serverless on AWS at FrOSCon 2021Writing less code with Serverless on AWS at FrOSCon 2021
Writing less code with Serverless on AWS at FrOSCon 2021
 
Writing less code with Serverless on AWS at AWS User Group Nairobi
Writing less code with Serverless on AWS at AWS User Group NairobiWriting less code with Serverless on AWS at AWS User Group Nairobi
Writing less code with Serverless on AWS at AWS User Group Nairobi
 
Writing less code with Serverless on AWS at OOP 2022
Writing less code with Serverless on AWS at OOP 2022Writing less code with Serverless on AWS at OOP 2022
Writing less code with Serverless on AWS at OOP 2022
 
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
 
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
 
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
 
Ultra-scale e-Commerce Transaction Services with Lean Middleware
Ultra-scale e-Commerce Transaction Services with Lean Middleware Ultra-scale e-Commerce Transaction Services with Lean Middleware
Ultra-scale e-Commerce Transaction Services with Lean Middleware
 
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
 
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
 
Implementing Service Oriented Architecture
Implementing Service Oriented ArchitectureImplementing Service Oriented Architecture
Implementing Service Oriented Architecture
 
Implementing Service Oriented Architecture
Implementing Service Oriented Architecture Implementing Service Oriented Architecture
Implementing Service Oriented Architecture
 
Implementing Service Oriented Architecture
Implementing Service Oriented ArchitectureImplementing Service Oriented Architecture
Implementing Service Oriented Architecture
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
 

More from Vadym Kazulkin

Amazon DevOps Guru for Serverless Applications at DevOpsCon 2024 London
Amazon DevOps Guru for Serverless Applications at DevOpsCon 2024 LondonAmazon DevOps Guru for Serverless Applications at DevOpsCon 2024 London
Amazon DevOps Guru for Serverless Applications at DevOpsCon 2024 LondonVadym Kazulkin
 
Making sense of service quotas of AWS Serverless services and how to deal wit...
Making sense of service quotas of AWS Serverless services and how to deal wit...Making sense of service quotas of AWS Serverless services and how to deal wit...
Making sense of service quotas of AWS Serverless services and how to deal wit...Vadym Kazulkin
 
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...Vadym Kazulkin
 
How to reduce cold starts for Java Serverless applications in AWS at Serverle...
How to reduce cold starts for Java Serverless applications in AWS at Serverle...How to reduce cold starts for Java Serverless applications in AWS at Serverle...
How to reduce cold starts for Java Serverless applications in AWS at Serverle...Vadym Kazulkin
 
Revolutionize DevOps lifecycle with Amazon CodeCatalyst and DevOps Guru at De...
Revolutionize DevOps lifecycle with Amazon CodeCatalyst and DevOps Guru at De...Revolutionize DevOps lifecycle with Amazon CodeCatalyst and DevOps Guru at De...
Revolutionize DevOps lifecycle with Amazon CodeCatalyst and DevOps Guru at De...Vadym Kazulkin
 
Amazon DevOps Guru for the Serverless Applications at AWS Community Day NL 2023
Amazon DevOps Guru for the Serverless Applications at AWS Community Day NL 2023Amazon DevOps Guru for the Serverless Applications at AWS Community Day NL 2023
Amazon DevOps Guru for the Serverless Applications at AWS Community Day NL 2023Vadym Kazulkin
 
Making sense of service quotas of AWS Serverless services and how to deal wit...
Making sense of service quotas of AWS Serverless services and how to deal wit...Making sense of service quotas of AWS Serverless services and how to deal wit...
Making sense of service quotas of AWS Serverless services and how to deal wit...Vadym Kazulkin
 
How to reduce cold starts for Java Serverless applications in AWS at InfoShar...
How to reduce cold starts for Java Serverless applications in AWS at InfoShar...How to reduce cold starts for Java Serverless applications in AWS at InfoShar...
How to reduce cold starts for Java Serverless applications in AWS at InfoShar...Vadym Kazulkin
 
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023Vadym Kazulkin
 
Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023
Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023
Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023Vadym Kazulkin
 
AWS Lambda SnapStart: Why, How and What AWS Serverless Meetup New York Boston...
AWS Lambda SnapStart: Why, How and What AWS Serverless Meetup New York Boston...AWS Lambda SnapStart: Why, How and What AWS Serverless Meetup New York Boston...
AWS Lambda SnapStart: Why, How and What AWS Serverless Meetup New York Boston...Vadym Kazulkin
 
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...Vadym Kazulkin
 
Amazon DevOps Guru for the Serverless Applications at AWS Community Day Bene...
Amazon DevOps Guru for the Serverless Applications at  AWS Community Day Bene...Amazon DevOps Guru for the Serverless Applications at  AWS Community Day Bene...
Amazon DevOps Guru for the Serverless Applications at AWS Community Day Bene...Vadym Kazulkin
 
Amazon CodeGuru vs SonarQube for Java Developers at JCon 2022
Amazon CodeGuru vs SonarQube for Java Developers at JCon 2022Amazon CodeGuru vs SonarQube for Java Developers at JCon 2022
Amazon CodeGuru vs SonarQube for Java Developers at JCon 2022Vadym Kazulkin
 
Adopting Java for the Serverless World at JUG Saxony Day 2022
Adopting Java for the Serverless World at JUG Saxony Day 2022Adopting Java for the Serverless World at JUG Saxony Day 2022
Adopting Java for the Serverless World at JUG Saxony Day 2022Vadym Kazulkin
 
Projects Valhalla and Loom DWX 2022
Projects Valhalla and Loom DWX 2022Projects Valhalla and Loom DWX 2022
Projects Valhalla and Loom DWX 2022Vadym Kazulkin
 
Adopting Java for the Serverless World at VoxxedDays Luxemburg
Adopting Java for the Serverless World at VoxxedDays LuxemburgAdopting Java for the Serverless World at VoxxedDays Luxemburg
Adopting Java for the Serverless World at VoxxedDays LuxemburgVadym Kazulkin
 
Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...
Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...
Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...Vadym Kazulkin
 
Adopting Java for the Serverless World at JUG Bonn 2022
Adopting Java for the Serverless World at JUG Bonn 2022Adopting Java for the Serverless World at JUG Bonn 2022
Adopting Java for the Serverless World at JUG Bonn 2022Vadym Kazulkin
 
Adopting Java for the Serverless World at JUG Darmstadt 2022
Adopting Java for the Serverless World at JUG Darmstadt 2022Adopting Java for the Serverless World at JUG Darmstadt 2022
Adopting Java for the Serverless World at JUG Darmstadt 2022Vadym Kazulkin
 

More from Vadym Kazulkin (20)

Amazon DevOps Guru for Serverless Applications at DevOpsCon 2024 London
Amazon DevOps Guru for Serverless Applications at DevOpsCon 2024 LondonAmazon DevOps Guru for Serverless Applications at DevOpsCon 2024 London
Amazon DevOps Guru for Serverless Applications at DevOpsCon 2024 London
 
Making sense of service quotas of AWS Serverless services and how to deal wit...
Making sense of service quotas of AWS Serverless services and how to deal wit...Making sense of service quotas of AWS Serverless services and how to deal wit...
Making sense of service quotas of AWS Serverless services and how to deal wit...
 
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
 
How to reduce cold starts for Java Serverless applications in AWS at Serverle...
How to reduce cold starts for Java Serverless applications in AWS at Serverle...How to reduce cold starts for Java Serverless applications in AWS at Serverle...
How to reduce cold starts for Java Serverless applications in AWS at Serverle...
 
Revolutionize DevOps lifecycle with Amazon CodeCatalyst and DevOps Guru at De...
Revolutionize DevOps lifecycle with Amazon CodeCatalyst and DevOps Guru at De...Revolutionize DevOps lifecycle with Amazon CodeCatalyst and DevOps Guru at De...
Revolutionize DevOps lifecycle with Amazon CodeCatalyst and DevOps Guru at De...
 
Amazon DevOps Guru for the Serverless Applications at AWS Community Day NL 2023
Amazon DevOps Guru for the Serverless Applications at AWS Community Day NL 2023Amazon DevOps Guru for the Serverless Applications at AWS Community Day NL 2023
Amazon DevOps Guru for the Serverless Applications at AWS Community Day NL 2023
 
Making sense of service quotas of AWS Serverless services and how to deal wit...
Making sense of service quotas of AWS Serverless services and how to deal wit...Making sense of service quotas of AWS Serverless services and how to deal wit...
Making sense of service quotas of AWS Serverless services and how to deal wit...
 
How to reduce cold starts for Java Serverless applications in AWS at InfoShar...
How to reduce cold starts for Java Serverless applications in AWS at InfoShar...How to reduce cold starts for Java Serverless applications in AWS at InfoShar...
How to reduce cold starts for Java Serverless applications in AWS at InfoShar...
 
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023
 
Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023
Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023
Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023
 
AWS Lambda SnapStart: Why, How and What AWS Serverless Meetup New York Boston...
AWS Lambda SnapStart: Why, How and What AWS Serverless Meetup New York Boston...AWS Lambda SnapStart: Why, How and What AWS Serverless Meetup New York Boston...
AWS Lambda SnapStart: Why, How and What AWS Serverless Meetup New York Boston...
 
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...
 
Amazon DevOps Guru for the Serverless Applications at AWS Community Day Bene...
Amazon DevOps Guru for the Serverless Applications at  AWS Community Day Bene...Amazon DevOps Guru for the Serverless Applications at  AWS Community Day Bene...
Amazon DevOps Guru for the Serverless Applications at AWS Community Day Bene...
 
Amazon CodeGuru vs SonarQube for Java Developers at JCon 2022
Amazon CodeGuru vs SonarQube for Java Developers at JCon 2022Amazon CodeGuru vs SonarQube for Java Developers at JCon 2022
Amazon CodeGuru vs SonarQube for Java Developers at JCon 2022
 
Adopting Java for the Serverless World at JUG Saxony Day 2022
Adopting Java for the Serverless World at JUG Saxony Day 2022Adopting Java for the Serverless World at JUG Saxony Day 2022
Adopting Java for the Serverless World at JUG Saxony Day 2022
 
Projects Valhalla and Loom DWX 2022
Projects Valhalla and Loom DWX 2022Projects Valhalla and Loom DWX 2022
Projects Valhalla and Loom DWX 2022
 
Adopting Java for the Serverless World at VoxxedDays Luxemburg
Adopting Java for the Serverless World at VoxxedDays LuxemburgAdopting Java for the Serverless World at VoxxedDays Luxemburg
Adopting Java for the Serverless World at VoxxedDays Luxemburg
 
Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...
Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...
Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...
 
Adopting Java for the Serverless World at JUG Bonn 2022
Adopting Java for the Serverless World at JUG Bonn 2022Adopting Java for the Serverless World at JUG Bonn 2022
Adopting Java for the Serverless World at JUG Bonn 2022
 
Adopting Java for the Serverless World at JUG Darmstadt 2022
Adopting Java for the Serverless World at JUG Darmstadt 2022Adopting Java for the Serverless World at JUG Darmstadt 2022
Adopting Java for the Serverless World at JUG Darmstadt 2022
 

Recently uploaded

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 

Recently uploaded (20)

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Measure and Increase Developer Productivity with Help of Serverless at Serverless Architecture Conference Berlin 2020

  • 1. Measure and increase developer productivity with the help of Serverless by Christian Bannes and Vadym Kazulkin, ip.labs GmbH, 14.10.2020
  • 2. Contact Vadym Kazulkin ip.labs GmbH v.kazulkin@iplabs.de @VKazulkin @ServerlessBonn (Meetup) Christian Bannes ip.labs GmbH c.bannes@iplabs.de xing.com/profile/Christian_Bannes https://www.linkedin.com/in/vadymkazulkin/ https://www.iplabs.de/
  • 4. Let’s talk about the challenges of the software development in general first
  • 5. Cognitive Load – the total amount of mental effort being used in the working memory • Intrinsic • Extraneous • Germane https://teamtopologies.com/
  • 6. Cognitive Load • Intrinsic • How to write a Java class or use a framework (Spring) • Extraneous • Germane
  • 7. Cognitive Load • Intrinsic • Extraneous • How to automate tests (unit, integration, end-to-end, web, desktop, mobile) • How to build, package, deploy and run my application • How to configure monitoring, alerting, auto-scaling, logging and tracing • How to operate and maintain infrastructure • How to build-in fault-tolerance and resiliency • How to make the hardware, networking and application secure • Germane
  • 8. Cognitive Load • Intrinsic • Extraneous • Germane • Domain Knowledge (payment, e-commerce) • Business processes and workflows
  • 9. Cognitive Load • Intrinsic -> become fluent in it • Extraneous -> minimize amount of what we implement/operate/support/own by ourselves • Germane -> minimize amount of what we have to implement by ourselves
  • 10. Productivity We are productive if we regularly ship products, which are successfully used by our customers
  • 11. What is holding us back from being productive? Technical Debt - reflects the implied cost of additional rework caused by choosing an easy (limited) solution now instead of using a better approach that would take longer ”The Cost of Poor Quality Software in the US: A 2018 Report” https://www.it-cisq.org/the-cost-of-poor-quality-software-in-the-us-a-2018-report/The-Cost-of-Poor-Quality-Software-in-the-US-2018-Report.pdf
  • 12. Technical Debt • Even a perfect solution can become the technical debt over the time • Version of programming language comes out of support (Java 8, JS Frameworks) • Security considerations forces us to upgrade one of our dependencies (library or web application server version) • One of our dependencies (e.g. to open source project) is discontinued
  • 13. Technical Debt Think of what can happen to your software over the entire life cycle of our product
  • 14. Technical Debt • is related to amount of code written • is related to amount of dependencies used • open source projects, programming languages, databases, (web) application servers
  • 15. Legacy Systems are systems that can’t evolve ”The Cost of Poor Quality Software in the US: A 2018 Report” https://www.it-cisq.org/the-cost-of-poor-quality-software-in-the-us-a-2018-report/The-Cost-of-Poor-Quality-Software-in-the-US-2018-Report.pdf Legacy System
  • 16. Evolutionary Architecture – supports guided, incremental change across multiple dimensions • Incremental change • Appropriate architectural coupling • Fitness functions ”Architectural Coupling” https://learning.oreilly.com/library/view/building-evolutionary-architectures/9781491986356/ch04.html
  • 17. Evolutionary Architecture – Fitness functions • Source code metrics (such as measuring cyclomatic complexity) • Unit tests (% of coverage and % of success) • Performance metrics (such as API latency or throughput) • Security (encryption at rest, e.g. checking that all S3 buckets have encryption enabled, or automatic key rotation for all external APIs, with tools such as the AWS Secrets Manager) • ArchUnit, Sonar, CI/CD Tools Danilo Poccia „ Serverless + Evolutionary Architectures + Safe Deployments = Speed in the Right Direction” https://blog.usejournal.com/serverless-evolutionary-architectures-safe-deployments-speed-in-the-right-direction-7b4b01e27254
  • 18. The Value Proposition of Serverless But let’s talk about of Total Cost of Ownership of the Serverless paradigm
  • 19. TCO Full Picture No Infrastructure Operation and Maintenance Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless
  • 20. No Infrastructure Maintenance Is infrastructure maintenance and operation your core competency ?
  • 21. TCO Full Picture No Infrastructure Operation and Maintenance Auto Scaling and Fault Tolerance Built in Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless
  • 22. Auto Scaling And Faul Tolerance Built In • Can you get capacity planning and auto scaling right? • Do you want to solve the hard problem of fault tolerance by yourself?
  • 23. TCO Full Picture No Infrastructure Operation and Maintenance Auto Scaling and Fault Tolerance Built in Do more with less Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless
  • 24. Do more with less By heavily relying on the managed Serverless services you • Need fewer engineers to start implementing your new product idea • Can do more with the same amount of people
  • 25. TCO Full Picture No Infrastructure Operation and Maintenance Auto Scaling and Fault Tolerance Built in Do more with less Lower technical debt Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless
  • 26. Lower technical debt • Whatever code you write today is always tomorrow’s technical debt © Paul Johnston • Less code means lower technical debt • Time and effort required for maintaining the solution over its whole lifecycle is by far much more than for developing it Jeff Atwood „The Best Code is No Code At All” https://blog.codinghorror.com/the-best-code-is-no-code-at-all/ Paul Johnston “Cloud 2.0: Code is no longer King — Serverless has dethroned it” https://medium.com/@PaulDJohnston/cloud-2-0-code-is-no-longer-king-serverless-has-dethroned-it-c6dc955db9d5
  • 27. TCO Full Picture No Infrastructure Operation and Maintenance Auto Scaling and Fault Tolerance Built in Do more with less Lower technical debt Focus on Business Value and Innovation Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless
  • 28. Focus On Business Value and Innovation Every organization wants exactly this!
  • 29. TCO Full Picture No Infrastructure Operation and Maintenance Auto Scaling and Fault Tolerance Built in Do more with less Lower technical debt Faster Time to Market Forrest Brazeal „The Business Case For Serverless” https://www.trek10.com/blog/business-case-for-serverless Focus on Business Value and Innovation
  • 30. Faster Time To Market • Time To Market is the key differentiator in today’s business! • Ask yourself: what is core for your business and what you can get as Commodity +(Utility) as a Service?
  • 31. Serverless Mindset at ip.labs “Accelerate Innovation and Maximize Business Value with Serverless Applications” https://www.slideshare.net/AmazonWebServices/accelerate-innovation-and-maximize-business-value-with-serverless-applications-srv212r1-aws-reinvent-2018
  • 32. Serverless Mindset at ip.labs If AWS offers a managed service with acceptable price and „good enough“ feature set, use it • AWS-native aka Serverless is your first option. • For the price consider the Total Cost of Ownership (TCO) If market offers a managed service with acceptable price and „good enough“ feature set, buy/rent it • PagerDuty instead of CloudWatch Alarm • Akamai or Digital Ocean CDN instead of AWS CloudFront If you have to manage it by yourself, manage it • Prometheus/Grafana instead of AWS CloudWatch If you can reconsider requirements, do it • Narrow the scope, get 80% of what you need from AWS or market, instead of building or hosting it yourself • Get faster time to market, don‘t lose the focus • AWS AppConfig instead of own Feature Toggle solution • AWS Step Functions instead of Camunda BPMN If you have to build it, own it • Business logic in the core domains Jared Short https://twitter.com/shortjared/status/1100887501047132160?lang=de
  • 33. How to measure success See DORA State of DevOps 2018-2019 Reports
  • 34. Software Delivery and Operational Performance See DORA State of DevOps 2018-2019 Reports
  • 35. Example: strategies to reduce time to restore service See DORA State of DevOps 2018-2019 Reports
  • 36. Blue-Green deployment “Win-Win Deployment Strategies for Modern Apps” https://rollbar.com/blog/deployment-strategies/ Canary deployment
  • 37. AWS Lambda Deployment Best Practices: • API Gateway Stage variables and Lambda Aliases • Lambda Alias Traffic Shifting Chris Munns: “Testing and Deployment Best Practices for AWS Lambda-Based Applications” https://www.youtube.com/watch?v=zJQDAsWm-5k&list=LLYgjRSI2oCzI9eooyFrWR7A&index=1
  • 38. AWS Lambda Deployment Best Practices • AWS Lambda Alias Canary and Linear Traffic Shifting & AWS SAM Safe Deployments • CloudWatch Rollback Alarms & Lambda hooks Chris Munns: “Testing and Deployment Best Practices for AWS Lambda-Based Applications” https://www.youtube.com/watch?v=zJQDAsWm-5k&list=LLYgjRSI2oCzI9eooyFrWR7A&index=1
  • 39. Time Spent See DORA State of DevOps 2018-2019 Reports
  • 40. Wardley Maps Simon Wardley https://www.slideshare.net/swardley/why-the-fuss-about-serverless-88107645 Co-evolution of practices to become productive with Serverless
  • 41. Co-evolution of practices with Serverless 1/2 • True DevOps (even DevSecOps) • FinDev responsibilities in the teams • Complete infrastructure automation • Chaos Engineering Sheen Brisals “Why the ‘WHY’ matters more than the ‘WHAT’ in Serverless!” https://medium.com/lego-engineering/why-the-why-matters-more-than-the-what-in-serverless-2ef56c397962 DevOps Topologies: https://web.devopstopologies.com/
  • 42. Co-evolution of practices with Serverless 2/2 • Each developer has its own (AWS test) account • No local testing environment or only for quick functional tests • Testing in production Michael Bryzek “What do you know about testing in production?” https://www.youtube.com/watch?v=z-ATZTUgaAo
  • 43. Using Serverless ecosystem with the right engineering practices in place will significantly reduce • extraneous and germane cognitive load • the amount of code written
  • 44. How to write less code with AWS Serverless services 1/3 • Write fewer Lambda functions • use direct AWS service integrations in case the Lambda only calls the AWS service itself
  • 45. Less Lambda functions means less: • code to write, test, run and maintain • CI/CD (deploy, rollback strategies) to maintain • Infrastructure as a Code (IAM policies, permission) to write and test • cold-start worries • point of failures and retries • security concerns • worries about Lambda limits (e.g. concurrency settings per AWS account) • spending on Lambda, CloudWatch and 3rd party SaaS on (AWS) (monthly) bill Sheen Brisals “Don’t wait for Functionless. Write less Functions instead” https://medium.com/lego-engineering/dont-wait-for-functionless-write-less-functions-instead-8f2c331cd651
  • 46. How to write less code with AWS Serverless services 2/3 • Write fewer Lambda functions • use more direct service integrations in case the Lambda only calls the Service itself • Write less Infrastructure as a Code • applies not only for Lambda but also to other services like AppSync • Use (AWS) Services/Frameworks which provide meaningful abstractions • Amplify Framework or Serverless Framework Components
  • 47. How to write less code with AWS Serverless services 3/3 • API Gateway Service Integration • HTTP APIs Storage-First Service Integration • Step Functions Service Integration • Event Bridge Filtering and Routing • Lambda Destinations • AppSync and Direct Lambda Resolvers • Amplify Framework • Serverless Framework Components
  • 48. Sheen Brisals “Don’t wait for Functionless. Write less Functions instead” https://medium.com/lego-engineering/dont-wait-for-functionless-write-less-functions-instead-8f2c331cd651 API Gateway Service Integration
  • 49. API Gateway Service Integration with Dynamo DB : Example ID generator 1/2 Sheen Brisals “Sequence Numbering in Serverless via API Gateway” https://medium.com/lego-engineering/sequence-numbering-in-serverless-via-api-gateway-40e5f6c83e93 https://github.com/ToQoz/api-gateway-mapping-template
  • 50. API Gateway Service Integration with Dynamo DB : Example ID generator 2/2 Sheen Brisals “Sequence Numbering in Serverless via API Gateway” https://medium.com/lego-engineering/sequence-numbering-in-serverless-via-api-gateway-40e5f6c83e93 https://github.com/ToQoz/api-gateway-mapping-template
  • 51. Eric Johnson “https://aws.amazon.com/de/blogs/compute/building-storage-first-applications-with-http-apis-service-integrations/” HTTP APIs Storage-First Service Integration • Event Bridge • Kinesis Data Streams • SQS • AppConfig • Step Functions
  • 52. Step Functions Service Integration “Service Integrations with AWS Step Functions” https://docs.aws.amazon.com/step-functions/latest/dg/concepts-service-integrations.html
  • 53. Event Bridge Filtering and Routing “Reducing custom code by using advanced rules in Amazon EventBridge” https://aws.amazon.com/de/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/
  • 54. Lambda Destinations “Introducing AWS Lambda Destinations” https://aws.amazon.com/de/blogs/compute/introducing-aws-lambda-destinations/ https://www.trek10.com/blog/lambda-destinations-what-we-learned-the-hard-way
  • 55. AppSync and Direct Lambda Resolvers https://aws.amazon.com/de/appsync “Introducing Direct Lambda Resolvers: AWS AppSync GraphQL APIs without VTL” https://aws.amazon.com/de/blogs/mobile/appsync-direct-lambda/
  • 58. Using Serverless ecosystem will with the right engineering practices in place will significantly reduce • extraneous and germane cognitive load • the amount of code written • amount of dependencies (no execution runtime and web application server to take care of)
  • 59. Serverless with the focus on you core domains will enable • iterative development mind set • experimentation culture • focus on business value innovation and faster time to market • evolutionary architectures
  • 60. Evolutionary Architecture – supports guided, incremental change across multiple dimensions • Incremental change • Appropriate architectural coupling • Fitness functions ”Architectural Coupling” https://learning.oreilly.com/library/view/building-evolutionary-architectures/9781491986356/ch04.html • Serverless ecosystem supports evolutionary architectures really well • All Serverless solutions often suffer from the “Antipattern: Last 10% Trap”
  • 61. AWS Serverless ecosystem Overview of the recent major improvements
  • 62. Architecture and workloads types • Event-driven • API-driven • Batch Job • Internal Tool • ML/AI • Big Data Image: flickr.com/photos/everywhereatonce/294789504 Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
  • 63. Lambda Layers & Lambda Runtime API Door opener for use cases like: • Big Data • ML/AI Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
  • 64. A Shared File System for Your Lambda Functions Door opener for use case like: • ML/AI Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
  • 65. Provisioned Concurrency for Lambda Functions Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
  • 66. Lambda functions as targets for Application Load Balancers Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
  • 67. HTTP APIs in Beta 70% cheaper as API Gateway • Fewer configuration options • Well-suited for most use-cases
  • 68. DynamoDB On-Demand Capacity mode Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
  • 69. Jeremy Daly: “Mixing VPC and Non-VPC Lambda Functions for Higher Performing Microservices” https://www.jeremydaly.com/mixing-vpc-and-non-vpc-lambda-functions-for-higher-performing-microservices/ Vadym Kazulkin @VKazulkin , ip.labs GmbH Lambda behind the Virtual Private Cloud (VPC)
  • 70. Lambda behind the VPC • The network interface creation happens when Lambda function is created or its VPC settings are updated • Reduced additional cold start from approx. 10 seconds to below 1 second Chris Munns: "Announcing improved VPC networking for AWS Lambda functions” https://aws.amazon.com/de/blogs/compute/announcing-improved-vpc-networking-for-aws-lambda-functions/
  • 71. Amazon Aurora Serverless Data API as beta for MySql and Postgres available https://docs.aws.amazon.com/de_de/AmazonRDS/latest/AuroraUserGuide/data-api.html Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
  • 72. RDS Proxy – Generally Available for Aurora MySQL, Aurora PostgreSQL, RDS MySQL and RDS PostgreSQL Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
  • 73. Compute Savings Plans now cover AWS Lambda Usage Christian Bannes and Vadym Kazulkin @VKazulkin , ip.labs GmbH
  • 74. Recent CloudWatch Improvements • Search over multiple Log Groups became possible • CloudWatch Logs Insights • enables you to interactively search and analyze your log data in Amazon CloudWatch Logs • Embedded Metric Format • JSON specification used to instruct CloudWatch Logs to automatically extract metric values embedded in structured log events.
  • 75. Further Improvement Areas for Serverless Ecosystem 1/2 • EFS improvements • Enable calling Lambda upon EFS Events (file created or updated) • Integrate with AWS compliance and governance services e.g. AWS Config, AWS CloudTrail like S3 does • CloudWatch improvements • Observability (no match to Lumigo or Epsagon) • Alarms (no match to PagerDuty or Lumigo or Epsagon)
  • 76. Further Improvement Areas for Serverless Ecosystem 2/2 • CodeCommit improvements • not nearly comparable to GitHub and BitBucket • X-Ray support for all (async) Serverless services • EventBridge
  • 77. Serverless in practice ( for large scale projects) Situation at ip.labs • Hybrid (still having monolithic java application) • One team completely serverless for two years • Another team just started using serverless only technology
  • 79. Before we went serverless... • Central system administration team • Tickets prioritized • Lead to waiting time Waiting = WASTE
  • 80. No low level administration • No need for low level administration at networking level • No servers and no OS • Less interaction with administration team
  • 81. Responsibility Shift • Still need for operation • Serverless = Devops • Less waiting time means you go faster
  • 83. Managed Services • Use managed services for generic subdomains • Example: Authentication with Cognito
  • 84. Live Demo • Static webpage on S3 • API via Http API Gateway • Authentication via Cognito • JWT Authorizer
  • 86. Architecture for serverless • 'just functions' - no need for architecture? • Architecture = long term investment • Important for large scale projects
  • 87. Organize lambdas around business domain Domain
  • 88. Organize lambdas around bussiness domain ... Subdomain ... Identity & Access
  • 89. Organize lambdas around bussiness domain Product Portfolio Identity & Access ... ... Bounded Context Product Inventory Shop Integration
  • 91. Product Inventory Bounded Context Bounded Context
  • 92. Use Case = One Lambda Function Use Case
  • 95. Namespacing Data • Each service operates only on its own data • HashKey with namespace prefix • Policy ensures service can only access it's own data • Fine grained access control
  • 96. Subdomain = Independant Application Product Portfolio Identity & Access ... ... Product Inventory Shop Integration
  • 98. Why you should separate • Evolve technology and business independently • Expect technology changes in the future • Refactor technology without changing business code
  • 99. https://en.wikipedia.org/wiki/Hexagonal_architecture_(software) Ports & Adapters • Interface in language of your domain = ports • Implementation = adapters • Inject the implementation into your domain
  • 100. Ports & Adapters implementation Adapters Ports
  • 101. Ports & Adapters implementation Business method depens on interfaces Convert intput to domain object Adapters for injection
  • 103. • Infrastructure as Code is a MUST • Create a CLI for scaffolding & common tasks Automation
  • 104. • Creates serverless.yml with predefined settings • Project scaffolding • Deployment pipeline CLI usage cli create:service product-inventory
  • 105. Continuous Delivery • Codepipeline for deployments • One Pipeline for one service • Every commit on master triggers deployment
  • 106.