Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cloud Driven Development
Search
Sebastian Korfmann
October 03, 2022
Programming
0
75
Cloud Driven Development
Sebastian Korfmann
October 03, 2022
Tweet
Share
More Decks by Sebastian Korfmann
See All by Sebastian Korfmann
Agentic Coding
skorfmann
0
4
Cloud Engineering amplified by GPT-4
skorfmann
0
100
Terraform CDK 101 - Hashitalks DACH
skorfmann
1
130
Terraform CDK 101
skorfmann
0
120
AWS Cloud Development Kit 101
skorfmann
0
200
Other Decks in Programming
See All in Programming
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
190
Apache Iceberg V3 and migration to V3
tomtanaka
0
150
16年目のピクシブ百科事典を支える最新の技術基盤 / The Modern Tech Stack Powering Pixiv Encyclopedia in its 16th Year
ahuglajbclajep
5
1k
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
140
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
420
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
5
340
ThorVG Viewer In VS Code
nors
0
770
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
2
4.3k
AgentCoreとHuman in the Loop
har1101
5
230
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.8k
Honoを使ったリモートMCPサーバでAIツールとの連携を加速させる!
tosuri13
1
170
Fluid Templating in TYPO3 14
s2b
0
130
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
140
How to build a perfect <img>
jonoalderson
1
4.9k
Chasing Engaging Ingredients in Design
codingconduct
0
110
New Earth Scene 8
popppiees
1
1.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
63
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
320
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
110
A Tale of Four Properties
chriscoyier
162
24k
Transcript
Cloudgetriebene Softwareentwicklung Sebastian Korfmann Cloudgetriebene Softwareentwicklung / @skorfmann 1
Sebastian Korfmann Entrepreneur, Consultant, Cloud Toolsmith AWS DevTools Hero Formerly
HashiCorp, Creator of CDK for Terraform Cloudgetriebene Softwareentwicklung / @skorfmann 2
Agenda • How we got here • Cloud Driven Development
• Workflows & Tools Cloudgetriebene Softwareentwicklung / @skorfmann 3
Fullstack Development - Local Runtime • Well understood workflows •
Fast Feedback Loops • Test Driven • Conventions • Majestic Monolith! Cloudgetriebene Softwareentwicklung / @skorfmann 4
12 Factor Apps • declarative automation • maximum portability •
dev / prod parity Cloudgetriebene Softwareentwicklung / @skorfmann 5
Works on my machine Ship it! Cloudgetriebene Softwareentwicklung / @skorfmann
6
Turning the monolith inside-out Cloudgetriebene Softwareentwicklung / @skorfmann 7
Cloudgetriebene Softwareentwicklung / @skorfmann / Image from https://www.swyx.io/self-provisioning-runtime 8
What we have to gain from turning the monolith inside
out? Cloudgetriebene Softwareentwicklung / @skorfmann 9
What might we loose from turning the monolith inside out?
Cloudgetriebene Softwareentwicklung / @skorfmann 10
Ok, great - so what? Cloudgetriebene Softwareentwicklung / @skorfmann 11
Embracing Cloud as Runtime Cloudgetriebene Softwareentwicklung / @skorfmann 12
IaC Tools Cloudgetriebene Softwareentwicklung / @skorfmann 13
Infrastructure as / is / from Code Cloudgetriebene Softwareentwicklung /
@skorfmann 14
Infrastructure as Code • Terraform • Cloudformation • Azure RM
/ Bicep Cloudgetriebene Softwareentwicklung / @skorfmann 15
Infrastructure is Code • AWS CDK • CDK for Terraform
• Pulumi Cloudgetriebene Softwareentwicklung / @skorfmann 16
Infrastructure from Code • Serverless Cloud • Cloudflare (i.e. Durable
Objects) Cloudgetriebene Softwareentwicklung / @skorfmann 17
Cloud Driven Development CDK / AWS Cloudgetriebene Softwareentwicklung / @skorfmann
18
Goals • Unified Infrastructure and Application Code • Embrace Cloud
as Runtime • Leverage existing services • Low Costs / Low Maintenance • True Dev / Prod Parity Cloudgetriebene Softwareentwicklung / @skorfmann 19
Non Goals • Portability Cloudgetriebene Softwareentwicklung / @skorfmann 20
Local vs Cloud • Local Stack • DDB Local •
Lambda Local • Step Functions Local • VTL Simulator • Some S3 Compatible local service Cloudgetriebene Softwareentwicklung / @skorfmann 21
Iteration Speed Cloudgetriebene Softwareentwicklung / @skorfmann 22
Serverless Stack • Focused on improving AWS API Gateway /
Lambda experience • Various runtimes (e.g. Node, Python) • Developer Console Cloudgetriebene Softwareentwicklung / @skorfmann 23
Merloc • Java only (for now) Cloudgetriebene Softwareentwicklung / @skorfmann
24
Functionless • TypeScript compiler plugin • AWS CDK Construct Cloudgetriebene
Softwareentwicklung / @skorfmann 25
Cloudgetriebene Softwareentwicklung / @skorfmann 26
Cloudgetriebene Softwareentwicklung / @skorfmann 27
Cloudgetriebene Softwareentwicklung / @skorfmann 28
Hotswap • Various AWS Services (e.g. Lambda, AppSync, Step Functions)
• Bypassing Cloudformation • Similar speed to Terraform (tuned) Cloudgetriebene Softwareentwicklung / @skorfmann 29
Watch / Parallel • Only Deploy / Hotswap changed Resources
• Deploy in parallel where possible Cloudgetriebene Softwareentwicklung / @skorfmann 30
Iteration Speed Conclusion • Serverless Stack • Merloc • Functionless
• Watch • Hot Swap Cloudgetriebene Softwareentwicklung / @skorfmann 31
Component Size Cloudgetriebene Softwareentwicklung / @skorfmann 32
Default to Constructs • Dependency Injection (e.g. a Bucket) •
Composable • Testable Cloudgetriebene Softwareentwicklung / @skorfmann 33
Testing Cloudgetriebene Softwareentwicklung / @skorfmann 34
Cloudgetriebene Softwareentwicklung / @skorfmann 35
Dedicated Test Stacks • Totally valid to create stacks just
for the sake of testing • Deploy Helper for Testing (e.g. event spy) Using xray • Start trace from test • Tried this, not sure if it's worth it Cloudgetriebene Softwareentwicklung / @skorfmann 36
Challenges • Async Behaviour (e.g. queues, trigger, timeouts) • Step
Function Workflows • Feedback Loops Cloudgetriebene Softwareentwicklung / @skorfmann 37
Cloudgetriebene Softwareentwicklung / @skorfmann 38
Cloudgetriebene Softwareentwicklung / @skorfmann 39
Observability Cloudgetriebene Softwareentwicklung / @skorfmann 40
• CDK Watch (beware of rate limits) • Cloudash.dev •
Lola.dev • Cloudcanvas.xyz (closed alpha) • Dynobase.dev • SST.dev Console • Custom Plumbing Cloudgetriebene Softwareentwicklung / @skorfmann 41
Cloudgetriebene Softwareentwicklung / @skorfmann 42
Cloudgetriebene Softwareentwicklung / @skorfmann 43
Cloudgetriebene Softwareentwicklung / @skorfmann 44
Cloud Driven Development • Fast iterations • Small Components •
Testable • Observable Cloudgetriebene Softwareentwicklung / @skorfmann 45
Are we there yet? Not quite - but we're getting
there Cloudgetriebene Softwareentwicklung / @skorfmann 46
Move Development Closer to the Cloud as it becomes the
Runtime Cloudgetriebene Softwareentwicklung / @skorfmann 47
Cloudgetriebene Softwareentwicklung / @skorfmann / Image from https://www.swyx.io/self-provisioning-runtime 48
Thanks! @skorfmann Cloudgetriebene Softwareentwicklung / @skorfmann 49