March 11, 2020 - Dubai, UAE
Agile, DevOps, Cloud
Practical tools of Digital Transformation
SUPPORTERS
PLATINUM PARTNERS
GOLD PARTNER BRONZE PARTNERS
© Copyright 2019 Dell Inc.3 of YDell Customer Communication - Confidential
How do you build a
10 billion USD
app in 1 month?
*https://www.statista.com/topics/2018/whatsapp/
© Copyright 2019 Dell Inc.4 of YDell Customer Communication - Confidential
Who are you anyway?
• 15 years in the industry
• Tech support to Skytech L4 fly and fix to Consulting
• Master’s degree in AI
• Largest Defense, Banking and Oil&Gas corporations’
transformations
ABU DHABI NATIONAL OIL COMPANY7 Technology Leaders Working Together
© Copyright 2019 Dell Inc.6 of YDell Customer Communication - Confidential
What do they have in common?
© Copyright 2019 Dell Inc.7 of YDell Customer Communication - Confidential
What do they have in common?
IT transformed from cost generating
to business edge enabling
© Copyright 2019 Dell Inc.8 of YDell Customer Communication - Confidential
What do they have in common?
© Copyright 2019 Dell Inc.9 of YDell Customer Communication - Confidential
Digital transformation
© Copyright 2019 Dell Inc.10 of YDell Customer Communication - Confidential
Success is a company’s ability to see the window
of opportunity and capitalize on it.
https://www.ted.com/talks/bill_gross_the_single_biggest_reason_why_startups_succeed?language=en
© Copyright 2019 Dell Inc.11 of YDell Customer Communication - Confidential
Agile and time to release
TIME TIME
“Big Bang” “Agile”
© Copyright 2019 Dell Inc.12 of YDell Customer Communication - Confidential
How can you be agile here?
Too many silos of information
Too many handoffs
Too many checks and audits
Too much overhead
Too slow
ORGANIZED AROUND
PROCESS & ROLES
ORGANIZE AROUND VALUE
APP=
© Copyright 2019 Dell Inc.15 of YDell Customer Communication - Confidential
What is the primary role of IT in an organization?
© Copyright 2019 Dell Inc.16 of YDell Customer Communication - Confidential
What is the primary role of IT in an organization?
Provide services enabling the
business
© Copyright 2019 Dell Inc.17 of YDell Customer Communication - Confidential
IT SERVICES
Service Catalog
EMAIL
File Sharing
Identity
ERP
Intranet
Mobile app 1
Mobile app 2
Web app 1
Hybrid app 1
© Copyright 2019 Dell Inc.18 of YDell Customer Communication - Confidential
Service architecture
Service
LOAD BALANCER
APP1 APP2
DB CLUSTER
DB1 DB2
© Copyright 2019 Dell Inc.19 of YDell Customer Communication - Confidential
Service architecture
ServiceLOAD
BALANCER
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
CODE
APP1
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
CODE
APP2
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
CODE
DB1
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
CODE
DB2
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
CODE
DB CLUSTER
© Copyright 2019 Dell Inc.20 of YDell Customer Communication - Confidential
Traditional software lifecycle
Ops
Team
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
Dev
Team
Test
Team
DEVELOPER
STATIONS
CODE - Ok, our code is ready, let’s get
an approval for deployment to
test
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
© Copyright 2019 Dell Inc.21 of YDell Customer Communication - Confidential
Traditional software lifecycle
Ops
Team
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
Dev
Team
Test
Team
DEVELOPER
STATIONS
CODE
- 2 weeks later after all the
approvals
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
© Copyright 2019 Dell Inc.22 of YDell Customer Communication - Confidential
Traditional software lifecycle
Ops
Team
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
Dev
Team
Test
Team
DEVELOPER
STATIONS
CODE - Hmm... works on my machine
- Wait, what did we change?
- Let’s try again
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
© Copyright 2019 Dell Inc.23 of YDell Customer Communication - Confidential
Traditional software lifecycle
Ops
Team
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
Dev
Team
Test
Team
DEVELOPER
STATIONS
CODE
- After another 2 weeks of approvals
- Still doesn’t work.... ok, let’s try to fix it
in place
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
© Copyright 2019 Dell Inc.24 of YDell Customer Communication - Confidential
Traditional software lifecycle
Ops
Team
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
Dev
Team
Test
Team
DEVELOPER
STATIONS
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
CODE
- Yay, works!!!!
- Let’s request ops team to deploy it in
production
© Copyright 2019 Dell Inc.25 of YDell Customer Communication - Confidential
Traditional software lifecycle
Ops
Team
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
Dev
Team
Test
Team
DEVELOPER
STATIONS
CODE
- 3 weeks later, Friday midnight maintenance
window
- Oops.... rollback... hmm, but wait what did we
change on these dev servers??
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
© Copyright 2019 Dell Inc.26 of YDell Customer Communication - Confidential
Issues
Ops
Team
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
TEST&STAGE
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
Dev
Team
Test
Team
DEVELOPER
STATIONS
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM2
Code
app.js.bak
app.js.bak.bak
app.js.bak.bak.latest
app.js.bak.bak.latest.seriously-latest
app.js.bak.bak.latest.seriously-latest.latestest
Classes,
Objects, MVC,
Macros,
Variables,
Conditionals
Installations,
updates,
maintenance,
backups, capacity
planning, networks,
firewalls
Oh, you didn’t
tell us this
feature exists
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM1
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM3
© Copyright 2019 Dell Inc.27 of YDell Customer Communication - Confidential
DevOps lifecycle
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
Dev/Test
Team
DEVELOPER
STATIONS
SERVER/VM
OS
CPU/MEM/DISK
CONTAINER SRV
CODE
REPOSITORY SRV
PLATFORM
CODE
Container
TESTS
DEV SERVERS
DEV SERVERS
DevOps
Team
PLATFORM CODE
APP CODE
TEST CODE
- version control
- automation
CONTINUOUS
INTEGRATION SRV
CONTAINER SRV
© Copyright 2019 Dell Inc.28 of YDell Customer Communication - Confidential
DevOps lifecycle
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
Dev/Test
Team
DEVELOPER
STATIONS
CODE
REPOSITORY SRV
CONTINUOUS
INTEGRATION SRV
PLATFORM
CODE
Container
TESTS
DEV SERVERS
DEV SERVERS
DevOps
Team
PLATFORM CODE
APP CODE
TEST CODE
- version control
- automation
PLATFORM
CODE
Container
TESTS
SERVER/VM
OS
CPU/MEM/DISK
CONTAINER SRV
CONTAINER SRV
Hey, new code!
Ok, let me deploy and test
- New feature, fix, major change
- Commit to repository
Test failed
© Copyright 2019 Dell Inc.29 of YDell Customer Communication - Confidential
DevOps lifecycle
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
PRODUCUTION
SERVERS
Dev/Test
Team
DEVELOPER
STATIONS
CODE
REPOSITORY SRV
CONTINUOUS
INTEGRATION SRV
PLATFORM
CODE
Container
TESTS
DEV SERVERS
DEV SERVERS
DevOps
Team
PLATFORM CODE
APP CODE
TEST CODE
- version control
- automation
PLATFORM
CODE
Container
TESTS
SERVER/VM
OS
CPU/MEM/DISK
CONTAINER SRV
CONTAINER SRV
Hey, new code!
Ok, let me deploy and test
- Roll back last commit, fix,
commit again
Test OK
PLATFORM
CODE
Container
TESTS
New release!
Final review and approval
© Copyright 2019 Dell Inc.30 of YDell Customer Communication - Confidential
What if we just want the code?
© Copyright 2019 Dell Inc.31 of YDell Customer Communication - Confidential
Cloud
© Copyright 2019 Dell Inc.32 of YDell Customer Communication - Confidential
APP
SERVER/VM
OS
CPU/MEM/DISK
PLATFORM
CODE
Cloud services
Infrastructure as a Service (IaaS)
I want 2 CPU, 16GB RAM, Windows 2016
Will install my IIS and deploy my C# code
Platform as a Service (PaaS)
I want a really fast Microsoft SQL server,
don’t care how it works and how its
managed. Will just deploy my SQL code
Container as a Service (CaaS)
I want a strong and managed
Docker server that I will deploy my
containers to.
Function as a Service (PaaS)
I want an artificial intelligence
service that I will send 1000
images to be recognized
© Copyright 2019 Dell Inc.33 of YDell Customer Communication - Confidential
What cloud really is?
- Compute/Storage/Network farm
- Virtualization
- Automation
- Self service
- Standarization
- Scalability
- Pay as you go
© Copyright 2019 Dell Inc.34 of YDell Customer Communication - Confidential
Types of cloud
Private
VMware vRealize
RedHat OpenStack
Pivotal Cloud Foundry
Public
Amazon
Azure
GCP
© Copyright 2019 Dell Inc.35 of YDell Customer Communication - Confidential
Let’s combine these two
MVP -> Canary testing -> Feedback ->
Beta -> Feedback -> Release 1.0
- Code
- Cloud platform as a service
- Code repository as a service
- CI/CD automation as a service
© Copyright 2019 Dell Inc.36 of YDell Customer Communication - Confidential
Airbnb MVP under 1 month
Code
repository
CI/CD
Platform Dev
Platform Prod
DevOps eng
Architect
Dev front
Dev back
Code
Consultant
© Copyright 2019 Dell Inc.37 of YDell Customer Communication - Confidential
WhatsApp MVP in under 1 month
DevOps Eng
Architect
Team
Dev Back
Dev Front
PLATFORM DEV
PLATFORM PROD
Code
Repository
CI/CD
Research / Consultant
© Copyright 2019 Dell Inc.38 of YDell Customer Communication - Confidential
Remember about the change
SUPPORTERS
PLATINUM PARTNERS
GOLD PARTNER BRONZE PARTNERS

Agile, DevOps, Cloud - practical tools of Digital Transformation by Paul Poliwoda

  • 1.
    March 11, 2020- Dubai, UAE Agile, DevOps, Cloud Practical tools of Digital Transformation
  • 2.
  • 3.
    © Copyright 2019Dell Inc.3 of YDell Customer Communication - Confidential How do you build a 10 billion USD app in 1 month? *https://www.statista.com/topics/2018/whatsapp/
  • 4.
    © Copyright 2019Dell Inc.4 of YDell Customer Communication - Confidential Who are you anyway? • 15 years in the industry • Tech support to Skytech L4 fly and fix to Consulting • Master’s degree in AI • Largest Defense, Banking and Oil&Gas corporations’ transformations
  • 5.
    ABU DHABI NATIONALOIL COMPANY7 Technology Leaders Working Together
  • 6.
    © Copyright 2019Dell Inc.6 of YDell Customer Communication - Confidential What do they have in common?
  • 7.
    © Copyright 2019Dell Inc.7 of YDell Customer Communication - Confidential What do they have in common? IT transformed from cost generating to business edge enabling
  • 8.
    © Copyright 2019Dell Inc.8 of YDell Customer Communication - Confidential What do they have in common?
  • 9.
    © Copyright 2019Dell Inc.9 of YDell Customer Communication - Confidential Digital transformation
  • 10.
    © Copyright 2019Dell Inc.10 of YDell Customer Communication - Confidential Success is a company’s ability to see the window of opportunity and capitalize on it. https://www.ted.com/talks/bill_gross_the_single_biggest_reason_why_startups_succeed?language=en
  • 11.
    © Copyright 2019Dell Inc.11 of YDell Customer Communication - Confidential Agile and time to release TIME TIME “Big Bang” “Agile”
  • 12.
    © Copyright 2019Dell Inc.12 of YDell Customer Communication - Confidential How can you be agile here?
  • 13.
    Too many silosof information Too many handoffs Too many checks and audits Too much overhead Too slow ORGANIZED AROUND PROCESS & ROLES
  • 14.
  • 15.
    © Copyright 2019Dell Inc.15 of YDell Customer Communication - Confidential What is the primary role of IT in an organization?
  • 16.
    © Copyright 2019Dell Inc.16 of YDell Customer Communication - Confidential What is the primary role of IT in an organization? Provide services enabling the business
  • 17.
    © Copyright 2019Dell Inc.17 of YDell Customer Communication - Confidential IT SERVICES Service Catalog EMAIL File Sharing Identity ERP Intranet Mobile app 1 Mobile app 2 Web app 1 Hybrid app 1
  • 18.
    © Copyright 2019Dell Inc.18 of YDell Customer Communication - Confidential Service architecture Service LOAD BALANCER APP1 APP2 DB CLUSTER DB1 DB2
  • 19.
    © Copyright 2019Dell Inc.19 of YDell Customer Communication - Confidential Service architecture ServiceLOAD BALANCER SERVER/VM OS CPU/MEM/DISK PLATFORM CODE APP1 SERVER/VM OS CPU/MEM/DISK PLATFORM CODE APP2 SERVER/VM OS CPU/MEM/DISK PLATFORM CODE DB1 SERVER/VM OS CPU/MEM/DISK PLATFORM CODE DB2 SERVER/VM OS CPU/MEM/DISK PLATFORM CODE DB CLUSTER
  • 20.
    © Copyright 2019Dell Inc.20 of YDell Customer Communication - Confidential Traditional software lifecycle Ops Team TEST&STAGE SERVERS PRODUCUTION SERVERS TEST&STAGE SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS Dev Team Test Team DEVELOPER STATIONS CODE - Ok, our code is ready, let’s get an approval for deployment to test SERVER/VM OS CPU/MEM/DISK PLATFORM
  • 21.
    © Copyright 2019Dell Inc.21 of YDell Customer Communication - Confidential Traditional software lifecycle Ops Team TEST&STAGE SERVERS PRODUCUTION SERVERS TEST&STAGE SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS Dev Team Test Team DEVELOPER STATIONS CODE - 2 weeks later after all the approvals SERVER/VM OS CPU/MEM/DISK PLATFORM
  • 22.
    © Copyright 2019Dell Inc.22 of YDell Customer Communication - Confidential Traditional software lifecycle Ops Team TEST&STAGE SERVERS PRODUCUTION SERVERS TEST&STAGE SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS Dev Team Test Team DEVELOPER STATIONS CODE - Hmm... works on my machine - Wait, what did we change? - Let’s try again SERVER/VM OS CPU/MEM/DISK PLATFORM
  • 23.
    © Copyright 2019Dell Inc.23 of YDell Customer Communication - Confidential Traditional software lifecycle Ops Team TEST&STAGE SERVERS PRODUCUTION SERVERS TEST&STAGE SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS Dev Team Test Team DEVELOPER STATIONS CODE - After another 2 weeks of approvals - Still doesn’t work.... ok, let’s try to fix it in place SERVER/VM OS CPU/MEM/DISK PLATFORM
  • 24.
    © Copyright 2019Dell Inc.24 of YDell Customer Communication - Confidential Traditional software lifecycle Ops Team TEST&STAGE SERVERS PRODUCUTION SERVERS TEST&STAGE SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS Dev Team Test Team DEVELOPER STATIONS SERVER/VM OS CPU/MEM/DISK PLATFORM CODE - Yay, works!!!! - Let’s request ops team to deploy it in production
  • 25.
    © Copyright 2019Dell Inc.25 of YDell Customer Communication - Confidential Traditional software lifecycle Ops Team TEST&STAGE SERVERS PRODUCUTION SERVERS TEST&STAGE SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS Dev Team Test Team DEVELOPER STATIONS CODE - 3 weeks later, Friday midnight maintenance window - Oops.... rollback... hmm, but wait what did we change on these dev servers?? SERVER/VM OS CPU/MEM/DISK PLATFORM
  • 26.
    © Copyright 2019Dell Inc.26 of YDell Customer Communication - Confidential Issues Ops Team TEST&STAGE SERVERS PRODUCUTION SERVERS TEST&STAGE SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS Dev Team Test Team DEVELOPER STATIONS SERVER/VM OS CPU/MEM/DISK PLATFORM2 Code app.js.bak app.js.bak.bak app.js.bak.bak.latest app.js.bak.bak.latest.seriously-latest app.js.bak.bak.latest.seriously-latest.latestest Classes, Objects, MVC, Macros, Variables, Conditionals Installations, updates, maintenance, backups, capacity planning, networks, firewalls Oh, you didn’t tell us this feature exists SERVER/VM OS CPU/MEM/DISK PLATFORM1 SERVER/VM OS CPU/MEM/DISK PLATFORM3
  • 27.
    © Copyright 2019Dell Inc.27 of YDell Customer Communication - Confidential DevOps lifecycle PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS Dev/Test Team DEVELOPER STATIONS SERVER/VM OS CPU/MEM/DISK CONTAINER SRV CODE REPOSITORY SRV PLATFORM CODE Container TESTS DEV SERVERS DEV SERVERS DevOps Team PLATFORM CODE APP CODE TEST CODE - version control - automation CONTINUOUS INTEGRATION SRV CONTAINER SRV
  • 28.
    © Copyright 2019Dell Inc.28 of YDell Customer Communication - Confidential DevOps lifecycle PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS Dev/Test Team DEVELOPER STATIONS CODE REPOSITORY SRV CONTINUOUS INTEGRATION SRV PLATFORM CODE Container TESTS DEV SERVERS DEV SERVERS DevOps Team PLATFORM CODE APP CODE TEST CODE - version control - automation PLATFORM CODE Container TESTS SERVER/VM OS CPU/MEM/DISK CONTAINER SRV CONTAINER SRV Hey, new code! Ok, let me deploy and test - New feature, fix, major change - Commit to repository Test failed
  • 29.
    © Copyright 2019Dell Inc.29 of YDell Customer Communication - Confidential DevOps lifecycle PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS PRODUCUTION SERVERS Dev/Test Team DEVELOPER STATIONS CODE REPOSITORY SRV CONTINUOUS INTEGRATION SRV PLATFORM CODE Container TESTS DEV SERVERS DEV SERVERS DevOps Team PLATFORM CODE APP CODE TEST CODE - version control - automation PLATFORM CODE Container TESTS SERVER/VM OS CPU/MEM/DISK CONTAINER SRV CONTAINER SRV Hey, new code! Ok, let me deploy and test - Roll back last commit, fix, commit again Test OK PLATFORM CODE Container TESTS New release! Final review and approval
  • 30.
    © Copyright 2019Dell Inc.30 of YDell Customer Communication - Confidential What if we just want the code?
  • 31.
    © Copyright 2019Dell Inc.31 of YDell Customer Communication - Confidential Cloud
  • 32.
    © Copyright 2019Dell Inc.32 of YDell Customer Communication - Confidential APP SERVER/VM OS CPU/MEM/DISK PLATFORM CODE Cloud services Infrastructure as a Service (IaaS) I want 2 CPU, 16GB RAM, Windows 2016 Will install my IIS and deploy my C# code Platform as a Service (PaaS) I want a really fast Microsoft SQL server, don’t care how it works and how its managed. Will just deploy my SQL code Container as a Service (CaaS) I want a strong and managed Docker server that I will deploy my containers to. Function as a Service (PaaS) I want an artificial intelligence service that I will send 1000 images to be recognized
  • 33.
    © Copyright 2019Dell Inc.33 of YDell Customer Communication - Confidential What cloud really is? - Compute/Storage/Network farm - Virtualization - Automation - Self service - Standarization - Scalability - Pay as you go
  • 34.
    © Copyright 2019Dell Inc.34 of YDell Customer Communication - Confidential Types of cloud Private VMware vRealize RedHat OpenStack Pivotal Cloud Foundry Public Amazon Azure GCP
  • 35.
    © Copyright 2019Dell Inc.35 of YDell Customer Communication - Confidential Let’s combine these two MVP -> Canary testing -> Feedback -> Beta -> Feedback -> Release 1.0 - Code - Cloud platform as a service - Code repository as a service - CI/CD automation as a service
  • 36.
    © Copyright 2019Dell Inc.36 of YDell Customer Communication - Confidential Airbnb MVP under 1 month Code repository CI/CD Platform Dev Platform Prod DevOps eng Architect Dev front Dev back Code Consultant
  • 37.
    © Copyright 2019Dell Inc.37 of YDell Customer Communication - Confidential WhatsApp MVP in under 1 month DevOps Eng Architect Team Dev Back Dev Front PLATFORM DEV PLATFORM PROD Code Repository CI/CD Research / Consultant
  • 38.
    © Copyright 2019Dell Inc.38 of YDell Customer Communication - Confidential Remember about the change
  • 39.