SlideShare a Scribd company logo
1 of 28
Software Architecting at Scale
a practical walkthrough
Sergio Fernández
Senior Software Development Engineer (Amazon)
Universidad Carlos III de Madrid, 25/11/2020
Ingeniería del Software, Grado en Ingeniería Informática
DISCLAIMER:
The content in this presentation was created for
academic purposes. All the opinions expressed here are
my own and do not necessarily represent those of my
current or past employers.
Sergio
Fernández Some background about myself:
● Asturian Software Engineer
● Graduated from University of Oviedo
● Currently based in Vancouver
● Senior Software Development Engineer at Amazon
● Advocate of open technologies
● Member of the Apache Software Foundation
4
Jan 2006: joined CTIC Foundation
Feb 2008: visited DERI (Ireland)
Aug 2017: joined Amazon (Canada)
May 2012: joined Salzburg Research (Austria)
Mar 2013: founded Redlink GmbH (Austria)
Dec 2006: graduated Bachelor Degree
Jul 2010: graduated Master Degree
Dec 2012: joined ASF
Feb 2015: lecturing at Fachhochschule
Salzburg (Austria)
Oct 2011: lecturing at ESNE
(University of Camilo José Cela)
May 2007: won 1st Free Software
University Spanish Contest
Outline for today
• Software Architecture overview
• Trends in software architectures
• Architecting software at scale
• Professional opportunities
• Q&A
5
Engineer
vs
Architect
Can anybody tell me what’s the difference?
Traditionally architecture is defined as
“the highest level concept of a system in its
environment. The architecture of a software
system (at a given point in time) is its
organization or structure of significant
components interacting through interfaces,
those components being composed of
successively smaller components and
interfaces.”
7
So… why does architecture matter?
https://www.flickr.com/photos/cuppini/48963256981
Martin Fowler defines it
“as a word we use when we
want to talk about design but
want to puff it up to make it
sound important.”
https://martinfowler.com/architecture/
Are Right, a Lot.
Desired
features of
any
software
architecture
● Feasibility
● Performance
● Reliability
● Testability
● Maintainability
● Extensibility
● Agility
The General Problem
https://xkcd.com/974/
Evolution of
Software
Architecture
https://twitter.com/richcampbell/stats/1078727465974067200
Scaling problem
Given a service with the following metrics on c5.2xlarge:
• concurrency=1, latency: p90=20ms, p99=100ms
• concurrency=10, latency: p90=120ms, p99=500ms
• concurrency=20, latency: p90=200ms, p99=700ms
• concurrency=50, latency: p90=800ms, p99=2s
• concurrency=100, latency: p90=1s, p99=3s
How would you scale it to 4,000 TPS (avg.) and 10,000
TPS (max.)?
14
15
Monolithic SOA Microservices
Single Unit Coarse-grained Fine-grained
16
The Rise of
Microservices
Architectura
l Patterns ● Client Server
● Layered
● Pipe and Filter
● Event Driven
● Microservices
● Peer-to-Peer
● ...
Handling increasing complexity
Distributed
overhead ● Continuous Delivery and
dependencies
● Integration testing
● New computation environments:
containers, serverless, etc.
● Data partitioning and consistency
● Messaging: queues, pubsub, etc.
● Logging and monitoring
● Networking: load balancing, service
discovery, etc.
Understanding the tradeoffs
20
“You build it, you run it!”
Werner Vogels, VP & CTO at Amazon.com
an architecture requires structure
Chaos Engineering
AWS Architecture Center: https://aws.amazon.com/architecture/
AWS Builders’ Library: https://aws.amazon.com/builders-library/
Amazon’s
Leadership
Principles
● Customer Obsession
● Ownership
● Invent and Simplify
● Are Right, A Lot
● Learn and Be
Curious
● Hire and Develop the
Best
● Insist on the Highest
Standards
● Think Big
● Bias for Action
● Frugality
● Earn Trust
● Dive Deep
● Have Backbone;
Disagree and
Commit
● Deliver Results
https://www.amazon.jobs/en/principles
www.amazon.jobs
26
Q&A
sergio@wikier.org
web
twitter
email

More Related Content

Similar to Software architecting at scale, a practical walkthrough

On The Road towards Continuous Delivery
On The Road towards Continuous DeliveryOn The Road towards Continuous Delivery
On The Road towards Continuous DeliveryMyToys Group IT
 
Prateek's Updated Resume 2016
Prateek's Updated Resume 2016Prateek's Updated Resume 2016
Prateek's Updated Resume 2016Prateek Chaudhary
 
About Deepra
About DeepraAbout Deepra
About DeepraDeepra_UK
 
Core Synergetics Presentation 2015-16
Core Synergetics Presentation 2015-16Core Synergetics Presentation 2015-16
Core Synergetics Presentation 2015-16Yojana Karande
 
The Need for Speed
The Need for SpeedThe Need for Speed
The Need for SpeedCapgemini
 
Lucid Capability
Lucid CapabilityLucid Capability
Lucid Capabilitykarth111401
 
Lucid Capability2
Lucid Capability2Lucid Capability2
Lucid Capability2karth111401
 
DEV Meet-Up Q2 2022 Amsterdam Slides.pdf
DEV Meet-Up Q2 2022 Amsterdam Slides.pdfDEV Meet-Up Q2 2022 Amsterdam Slides.pdf
DEV Meet-Up Q2 2022 Amsterdam Slides.pdfCristina Vidu
 
DEVNET-1125 Partner Case Study - “Project Hybrid Engineer”
DEVNET-1125	Partner Case Study - “Project Hybrid Engineer”DEVNET-1125	Partner Case Study - “Project Hybrid Engineer”
DEVNET-1125 Partner Case Study - “Project Hybrid Engineer”Cisco DevNet
 
Agile Software Architecture
Agile Software ArchitectureAgile Software Architecture
Agile Software Architecturecesarioramos
 
Corporate Presentation Synergetics India
Corporate Presentation Synergetics IndiaCorporate Presentation Synergetics India
Corporate Presentation Synergetics IndiaMahesh Shinde
 
Jesse Pulfer Pivotal Overview June 2018
Jesse Pulfer Pivotal Overview June 2018Jesse Pulfer Pivotal Overview June 2018
Jesse Pulfer Pivotal Overview June 2018VMware Tanzu
 
Zapbuild Portfolio
Zapbuild PortfolioZapbuild Portfolio
Zapbuild PortfolioZapbuild
 
Canada DevOps Summit 2020 Presentation Nov_03_2020
Canada DevOps Summit 2020 Presentation Nov_03_2020Canada DevOps Summit 2020 Presentation Nov_03_2020
Canada DevOps Summit 2020 Presentation Nov_03_2020Varun Manik
 
Stream SQL eventflow visual programming for real programmers presentation
Stream SQL eventflow visual programming for real programmers presentationStream SQL eventflow visual programming for real programmers presentation
Stream SQL eventflow visual programming for real programmers presentationstreambase
 
Data science tools of the trade
Data science tools of the tradeData science tools of the trade
Data science tools of the tradeFangda Wang
 

Similar to Software architecting at scale, a practical walkthrough (20)

On The Road towards Continuous Delivery
On The Road towards Continuous DeliveryOn The Road towards Continuous Delivery
On The Road towards Continuous Delivery
 
Prateek's Updated Resume 2016
Prateek's Updated Resume 2016Prateek's Updated Resume 2016
Prateek's Updated Resume 2016
 
About Deepra
About DeepraAbout Deepra
About Deepra
 
Core Synergetics Presentation 2015-16
Core Synergetics Presentation 2015-16Core Synergetics Presentation 2015-16
Core Synergetics Presentation 2015-16
 
Core synergetics presentation 2015-16
Core synergetics presentation 2015-16Core synergetics presentation 2015-16
Core synergetics presentation 2015-16
 
Core synergetics presentation 2015 16
Core synergetics presentation 2015 16Core synergetics presentation 2015 16
Core synergetics presentation 2015 16
 
The Need for Speed
The Need for SpeedThe Need for Speed
The Need for Speed
 
Lucid Capability
Lucid CapabilityLucid Capability
Lucid Capability
 
Lucid Capability2
Lucid Capability2Lucid Capability2
Lucid Capability2
 
DEV Meet-Up Q2 2022 Amsterdam Slides.pdf
DEV Meet-Up Q2 2022 Amsterdam Slides.pdfDEV Meet-Up Q2 2022 Amsterdam Slides.pdf
DEV Meet-Up Q2 2022 Amsterdam Slides.pdf
 
DEVNET-1125 Partner Case Study - “Project Hybrid Engineer”
DEVNET-1125	Partner Case Study - “Project Hybrid Engineer”DEVNET-1125	Partner Case Study - “Project Hybrid Engineer”
DEVNET-1125 Partner Case Study - “Project Hybrid Engineer”
 
DC
DCDC
DC
 
Agile Software Architecture
Agile Software ArchitectureAgile Software Architecture
Agile Software Architecture
 
Synergetics India Corporate Presentation
Synergetics India Corporate PresentationSynergetics India Corporate Presentation
Synergetics India Corporate Presentation
 
Corporate Presentation Synergetics India
Corporate Presentation Synergetics IndiaCorporate Presentation Synergetics India
Corporate Presentation Synergetics India
 
Jesse Pulfer Pivotal Overview June 2018
Jesse Pulfer Pivotal Overview June 2018Jesse Pulfer Pivotal Overview June 2018
Jesse Pulfer Pivotal Overview June 2018
 
Zapbuild Portfolio
Zapbuild PortfolioZapbuild Portfolio
Zapbuild Portfolio
 
Canada DevOps Summit 2020 Presentation Nov_03_2020
Canada DevOps Summit 2020 Presentation Nov_03_2020Canada DevOps Summit 2020 Presentation Nov_03_2020
Canada DevOps Summit 2020 Presentation Nov_03_2020
 
Stream SQL eventflow visual programming for real programmers presentation
Stream SQL eventflow visual programming for real programmers presentationStream SQL eventflow visual programming for real programmers presentation
Stream SQL eventflow visual programming for real programmers presentation
 
Data science tools of the trade
Data science tools of the tradeData science tools of the trade
Data science tools of the trade
 

More from Sergio Fernández

Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016
Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016
Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016Sergio Fernández
 
Moven - Apache Big Data Europe 2016 - SSIX Project
Moven - Apache Big Data Europe 2016 - SSIX ProjectMoven - Apache Big Data Europe 2016 - SSIX Project
Moven - Apache Big Data Europe 2016 - SSIX ProjectSergio Fernández
 
Geospatial Querying in Apache Marmotta - Apache Big Data North America 2016
Geospatial Querying in Apache Marmotta -  Apache Big Data North America 2016Geospatial Querying in Apache Marmotta -  Apache Big Data North America 2016
Geospatial Querying in Apache Marmotta - Apache Big Data North America 2016Sergio Fernández
 
Presentation of GSoC 2016 at Fachhochschule Salzburg
Presentation of GSoC 2016 at Fachhochschule SalzburgPresentation of GSoC 2016 at Fachhochschule Salzburg
Presentation of GSoC 2016 at Fachhochschule SalzburgSergio Fernández
 
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015Sergio Fernández
 
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)Sergio Fernández
 
Redlink, The Data Linking API
Redlink, The Data Linking APIRedlink, The Data Linking API
Redlink, The Data Linking APISergio Fernández
 
Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014Sergio Fernández
 
Linked Data track at ApacheCon Europe 2014
Linked Data track at ApacheCon Europe 2014Linked Data track at ApacheCon Europe 2014
Linked Data track at ApacheCon Europe 2014Sergio Fernández
 
Introduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaIntroduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaSergio Fernández
 
Towards a Commons RDF Java library
Towards a Commons RDF Java libraryTowards a Commons RDF Java library
Towards a Commons RDF Java librarySergio Fernández
 
GET / LDP/1.0; 500 Internal Server Error
GET / LDP/1.0; 500 Internal Server ErrorGET / LDP/1.0; 500 Internal Server Error
GET / LDP/1.0; 500 Internal Server ErrorSergio Fernández
 
MICO Development Infrastructure
MICO Development InfrastructureMICO Development Infrastructure
MICO Development InfrastructureSergio Fernández
 
Apache Marmotta (incubating)
Apache Marmotta (incubating)Apache Marmotta (incubating)
Apache Marmotta (incubating)Sergio Fernández
 
Incubating Apache Linda (ApacheCon Europe 2012)
Incubating Apache Linda (ApacheCon Europe 2012)Incubating Apache Linda (ApacheCon Europe 2012)
Incubating Apache Linda (ApacheCon Europe 2012)Sergio Fernández
 
Barra libre en proyectos de software... pero sólo hasta media noche
Barra libre en proyectos de software... pero sólo hasta media noche Barra libre en proyectos de software... pero sólo hasta media noche
Barra libre en proyectos de software... pero sólo hasta media noche Sergio Fernández
 
trioo, estudio e implementación de modelos de datos RDF en lenguajes orientad...
trioo, estudio e implementación de modelos de datos RDF en lenguajes orientad...trioo, estudio e implementación de modelos de datos RDF en lenguajes orientad...
trioo, estudio e implementación de modelos de datos RDF en lenguajes orientad...Sergio Fernández
 
TRIOO, Keeping the Semantics of Data Safe and Sound into Object-Oriented Soft...
TRIOO, Keeping the Semantics of Data Safe and Sound into Object-Oriented Soft...TRIOO, Keeping the Semantics of Data Safe and Sound into Object-Oriented Soft...
TRIOO, Keeping the Semantics of Data Safe and Sound into Object-Oriented Soft...Sergio Fernández
 

More from Sergio Fernández (20)

Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016
Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016
Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016
 
Moven - Apache Big Data Europe 2016 - SSIX Project
Moven - Apache Big Data Europe 2016 - SSIX ProjectMoven - Apache Big Data Europe 2016 - SSIX Project
Moven - Apache Big Data Europe 2016 - SSIX Project
 
Geospatial Querying in Apache Marmotta - Apache Big Data North America 2016
Geospatial Querying in Apache Marmotta -  Apache Big Data North America 2016Geospatial Querying in Apache Marmotta -  Apache Big Data North America 2016
Geospatial Querying in Apache Marmotta - Apache Big Data North America 2016
 
Presentation of GSoC 2016 at Fachhochschule Salzburg
Presentation of GSoC 2016 at Fachhochschule SalzburgPresentation of GSoC 2016 at Fachhochschule Salzburg
Presentation of GSoC 2016 at Fachhochschule Salzburg
 
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
 
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)
 
Redlink, The Data Linking API
Redlink, The Data Linking APIRedlink, The Data Linking API
Redlink, The Data Linking API
 
Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014
 
Linked Data track at ApacheCon Europe 2014
Linked Data track at ApacheCon Europe 2014Linked Data track at ApacheCon Europe 2014
Linked Data track at ApacheCon Europe 2014
 
Introduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaIntroduction to LDP in Apache Marmotta
Introduction to LDP in Apache Marmotta
 
Towards a Commons RDF Java library
Towards a Commons RDF Java libraryTowards a Commons RDF Java library
Towards a Commons RDF Java library
 
GET / LDP/1.0; 500 Internal Server Error
GET / LDP/1.0; 500 Internal Server ErrorGET / LDP/1.0; 500 Internal Server Error
GET / LDP/1.0; 500 Internal Server Error
 
Redfine
RedfineRedfine
Redfine
 
MICO Development Infrastructure
MICO Development InfrastructureMICO Development Infrastructure
MICO Development Infrastructure
 
Apache Marmotta (incubating)
Apache Marmotta (incubating)Apache Marmotta (incubating)
Apache Marmotta (incubating)
 
Incubating Apache Linda (ApacheCon Europe 2012)
Incubating Apache Linda (ApacheCon Europe 2012)Incubating Apache Linda (ApacheCon Europe 2012)
Incubating Apache Linda (ApacheCon Europe 2012)
 
Barra libre en proyectos de software... pero sólo hasta media noche
Barra libre en proyectos de software... pero sólo hasta media noche Barra libre en proyectos de software... pero sólo hasta media noche
Barra libre en proyectos de software... pero sólo hasta media noche
 
Demos CTIC
Demos CTICDemos CTIC
Demos CTIC
 
trioo, estudio e implementación de modelos de datos RDF en lenguajes orientad...
trioo, estudio e implementación de modelos de datos RDF en lenguajes orientad...trioo, estudio e implementación de modelos de datos RDF en lenguajes orientad...
trioo, estudio e implementación de modelos de datos RDF en lenguajes orientad...
 
TRIOO, Keeping the Semantics of Data Safe and Sound into Object-Oriented Soft...
TRIOO, Keeping the Semantics of Data Safe and Sound into Object-Oriented Soft...TRIOO, Keeping the Semantics of Data Safe and Sound into Object-Oriented Soft...
TRIOO, Keeping the Semantics of Data Safe and Sound into Object-Oriented Soft...
 

Recently uploaded

Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfLivetecs LLC
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 

Recently uploaded (20)

Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdf
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 

Software architecting at scale, a practical walkthrough

Editor's Notes

  1. There is no highest level concept of a system. Customers have a different concept than developers. Customers do not care at all about the structure of significant components. So, perhaps an architecture is the highest level concept that developers have of a system in its environment. Let’s forget the developers who just understand their little piece. Architecture is the highest level concept of the expert developers. What makes a component significant? It is significant because the expert developers say so.
  2. architectures in software require to be agile, because architectures need to continuously evolve and adapt
  3. Open-Close Principle
  4. The trend goes to small components to maximize the features described before: smaller is easier to test and scale. Labra will describe in detail the different architectures.
  5. “The traditional model is that you take your software to the wall that separates development and operations, and throw it over and then forget about it. Not at Amazon. You build it, you run it. This brings developers into contact with the day-to-day operation of their software. It also brings them into day-to-day contact with the customer. This customer feedback loop is essential for improving the quality of the service.” -- Werner Vogels in “A conversation with Werner Vogels” in ACM Queue, May 2006