SlideShare a Scribd company logo
1 of 137
Download to read offline
Enabling
Microservices
@Orbitz
Steve Hoffman
Senior Principal Engineer
@bacoboy
Rick Fast
Senior Principal Engineer
@tortiepoint
#velocityconf
2015
#velocityconf
2015
#velocityconf
2015
#velocityconf
2015
Outline
• Brief Architecture Overview/History
• From Monolithic to Services to Microservices/Docker
• Automated Pipelines
• Questions
#velocityconf
2015
#velocityconf
2015
2000
#velocityconf
2015
2000
Yes, we are STILL hiring!
#velocityconf
2015
2000
Yes, we are STILL hiring!
@OrbitzTalent
#velocityconf
2015
2000
Web Layer
Business Layer
#velocityconf
2015
2000
#velocityconf
2015
2000
#velocityconf
2015
2000
Business Layer
#velocityconf
2015
2000
Business Layer
#velocityconf
2015
Business Layer
2000
#velocityconf
2015
Business Layer
2003
#velocityconf
2015
Business Layer
2003
#velocityconf
2015
Business Layer
2003
#velocityconf
2015
2003
#velocityconf
2015
2004
#velocityconf
2015
2004
#velocityconf
2015
2004
#velocityconf
2015
2012
#velocityconf
2015
2012
#velocityconf
2015
2012
• Multiple Brands
• Websites
• Webservices
• Multiple Backends
• 500+ apps / thousands of
instances
• Deployments Daily (sometimes
more)
#velocityconf
2015
2015
• Multiple Brands
• Websites
• Webservices
• Multiple Backends
• 500+ apps / thousands of
instances
• Deployments Daily (sometimes
more)
#velocityconf
2015
Process Overkill
#velocityconf
2015
Different Provisioning Tools
DEV OPS
#velocityconf
2015
Different Provisioning Tools
DEV OPS
Application Platform!=
#velocityconf
2015
A New Experiment
• Microservices?
• Decompose single “service” into the actual 40+ sub-services
• Any change to sub-service was a deployment of many
• Could it be a simple Spring Boot App in Docker (12 factor?)
• Backward compatible with existing service infrastructure.
• Code to Production w/o help from other Humans - Minutes not Days
#velocityconf
2015
The Docker Slave
aka “The Rickbot”
#velocityconf
2015
The Docker Slave
aka “The Rickbot”
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App Register & Lookup
#velocityconf
2015
10.10.10.10
10.10.10.10:31002
App
App
App Register & Lookup
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
#velocityconf
2015
#velocityconf
2015
#velocityconf
2015
#velocityconf
2015
#velocityconf
2015
http://consul.io
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
10.10.10.10
App
App
App
#velocityconf
2015
10.10.10.10
10.10.10.10:51515
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
10.10.10.10
App
App
App
#velocityconf
2015
10.10.10.10
10.10.10.10:1337
App
App
App
#velocityconf
2015
Almost done…
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App
VIP
#velocityconf
2015
App
App
App
VIP
#velocityconf
2015
App
App
App
VIP
#velocityconf
2015
App
App
App
VIP
https://github.com/QubitProducts/bamboo
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
App
App
App
#velocityconf
2015
A Little More
Background
#velocityconf
2015
#velocityconf
2015
Module
Module
Module Module
#velocityconf
2015
Editorial Module
A Continuously Deployed Microservice
www.orbitz.com (scroll down)
#velocityconf
2015
Orbitz
Content
Orchestration
Service
Content
(Solr)
Editorial
Module
Search
Module
Hotel
Module
#velocityconf
2015
Orbitz
Content
Orchestration
Service
Content
(Solr)
Editorial
Module
Search
Module
Hotel
Module
Hotel Team Search Team Content Team
#velocityconf
2015
Orbitz
Content
Orchestration
Service
Content
(Solr)
Editorial
Module
Search
Module
Hotel
Module
#velocityconf
2015
Orbitz
Content
Orchestration
Service
Content
(Solr)
Editorial
Module
Search
Module
Hotel
Module
Hotel Team
Search Team
Content Team
#velocityconf
2015
Pre-Continuous Delivery
1.2-­‐BETA-­‐20150401-­‐113002
Test Discard
Test Discard
1.2-­‐BETA-­‐20150402-­‐093002
Build
Build
And so on…
#velocityconf
2015
Pre-Continuous Delivery
1.2-­‐BETA-­‐20150401-­‐113002
Test Discard
Test Discard
1.2-­‐BETA-­‐20150402-­‐093002
Build
Build
Test Deploy
1.2
Build
#velocityconf
2015
Continuous Delivery with
Jenkins, Docker, and Ansible
(And then Marathon)
#velocityconf
2015
rfast-mbp:git rfast$ yo microservice
_-----_
| | .--------------------------.
|--(o)--| | Welcome to the kickass |
`---------´ | Microservice |
( _´U`_ ) | generator! |
/___A___ '--------------------------'
| ~ |
__'.___.'__
´ ` |° ´ Y `
? Enter the name of your service. (E.G. "my-service")
Yo
#velocityconf
2015
Committer
Pull Request
#velocityconf
2015
Committer
Reviewer
Pull Request
#velocityconf
2015
Committer
Reviewer
Pull Request
#velocityconf
2015
Committer
Reviewer
Pull Request
#velocityconf
2015
Jenkins Pipeline
#velocityconf
2015
if(…) {
x ++;
}
Merge
#velocityconf
2015
build
unit test
publish
deploy
dev
acceptance
tests
deploy
qa
deploy
staging
open RFC
deploy
prod
close RFC
Pipeline (Simplified)
#velocityconf
2015
if(…) {
x ++;
}
1.2
Merge
Build
#velocityconf
2015
if(…) {
x ++;
}
1.2
Merge
1.2.
editorial-module.jar
./gradlew build
{BUILD_NUMBER}
Build
#velocityconf
2015
1.2
Merge
editorial-module.jar
if(…) {
x ++;
}
171.2.
Build
#velocityconf
2015
1.2
Merge
editorial-module.jar
FROM orbitz/java-8
ADD build/editorial-module.jar /opt/orbitz
CWD /opt/orbitz
CMD java -jar editorial-module.jar
if(…) {
x ++;
}
171.2.
Build
#velocityconf
2015
1.2
Merge
editorial-module.jar orbitz/editorial-module:1.2.17
if(…) {
x ++;
}
171.2.
Build
#velocityconf
2015
orbitz/editorial-module:1.2.17
Build
#velocityconf
2015
- hosts: dev
- tasks:
- name: find previous images
docker_facts: image=orbitz/{{application}}
register: previous
- name: deploy new image
docker: image=orbitz/{{application}}:{{version}} …
- name: wait for service
wait_for: port={{port}} …
- name: check health endpoint
uri: url="http://{{fqdn}}:{{port}}/health" …
- name: kill old image
docker: {{previous}}
git pull
playbook.yml (abridged)
Deploy
#velocityconf
2015
host-001 host-002 host-003 host-004 host-005
- hosts: dev
Deploy
#velocityconf
2015
host-001
1.2.16
Deploy
#velocityconf
2015
1.2.16 1.2.17
host-001
Deploy
#velocityconf
2015
1.2.16 1.2.17
host-001
Deploy
DATABASE_URL=jdbc://whatever/db/stuff
CONSUL_HOST={{ansible_fqdn}}
LOGSTASH_HOST={{ansible_fqdn}}
GRAPHITE_HOST={{ansible_fqdn}}
#velocityconf
2015
1.2.16 1.2.17
/health
host-001
Deploy
#velocityconf
2015
1.2.16 1.2.17
/health
200 OK
host-001
Deploy
#velocityconf
2015
1.2.16 1.2.17
host-001
Deploy
#velocityconf
2015
1.2.17
host-001
Deploy
#velocityconf
2015
host-002
1.2.16
And so on…
host-001
1.2.17
Deploy
#velocityconf
2015
What’s next?
#velocityconf
2015
How to handle failure?
#velocityconf
2015
What happens when a
VM is moved?
#velocityconf
2015
What if I need to add
capacity?
#velocityconf
2015
- hosts: dev
- tasks:
- name: find previous images
docker_facts: image=orbitz/{{application}}
register: previous
- name: deploy new image
docker: image=orbitz/{{application}}:{{version}} …
- name: wait for service
wait_for: port={{port}} …
- name: check health endpoint
uri: url="http://{{fqdn}}:{{port}}/health" …
- name: kill old image
docker: {{previous}}
git pull
playbook.yml (abridged)
Deploy
#velocityconf
2015
- hosts: dev
- tasks:
- name: find previous images
docker_facts: image=orbitz/{{application}}
register: previous
- name: deploy new image
docker: image=orbitz/{{application}}:{{version}} …
- name: wait for service
wait_for: port={{port}} …
- name: check health endpoint
uri: url="http://{{fqdn}}:{{port}}/health" …
- name: kill old image
git pull
playbook.yml (abridged)
- hosts: localhost
- tasks:
- name: marathon deploy
marathon: image=orbitz/{{application}}:{{version}}
instances=3
Deploy
#velocityconf
2015
git pull
playbook.yml (abridged)
- hosts: localhost
- tasks:
- name: marathon deploy
marathon: image=orbitz/{{application}}:{{version}}
instances=3
Deploy
#velocityconf
2015
New host setup
Deploy
#velocityconf
2015
Mesos Agent
New host setup
1.2.16
Deploy
#velocityconf
2015
- tasks:
marathon: …
playbook.yml
1.2.16
1.2.16
1.2.16
Deploy
#velocityconf
2015
- tasks:
marathon: …
1.2.16
1.2.16
1.2.16
Deploy
#velocityconf
2015
- tasks:
marathon: …
1.2.16
1.2.16
1.2.16
Deploy
#velocityconf
2015
- tasks:
marathon: …
PUT /apps/editorial-module
{
“image”: “orbitz/editorial-module:1.2.17” …
}
1.2.16
1.2.16
1.2.16
Deploy
#velocityconf
2015
Deploy
PUT /apps/editorial-module
{
“image”: “orbitz/editorial-module:1.2.17” …
}
- tasks:
marathon: …
1.2.16
1.2.16
1.2.16
app = GET /v2/apps/editorial-module
if not app then
deploy_id =
POST /v2/apps
{
“image”: “orbitz/editorial-module:1.2.17”,
“id”: “editorial-module”
}
else
deploy_id =
PUT /v2/apps/editorial-module
{ “image”: “orbitz/editorial-module:1.2.17” }
end if
while GET /v2/deployments contains deploy_id
// still deploying
end
// deploy complete
#velocityconf
2015
- tasks:
marathon: …
PUT /apps/editorial-module
{
“image”: “orbitz/editorial-module:1.2.17” …
}
1.2.16
1.2.16
1.2.16
Deploy
#velocityconf
2015
- tasks:
marathon: …
1.2.16
1.2.16
1.2.16
Deploy
#velocityconf
2015
- tasks:
marathon: …
1.2.16
1.2.16
1.2.16
1.2.17
1.2.17
1.2.17
Deploy
#velocityconf
2015
- tasks:
marathon: …
/health
1.2.16
1.2.16
1.2.16
1.2.17
1.2.17
1.2.17
Deploy
#velocityconf
2015
- tasks:
marathon: …
/health
200 OK
200 OK
200 OK
1.2.16
1.2.16
1.2.16
1.2.17
1.2.17
1.2.17
Deploy
#velocityconf
2015
- tasks:
marathon: …
1.2.17
1.2.17
1.2.17
Deploy
#velocityconf
2015
And off to the next environment…
1.2.17
1.2.17
1.2.17
Deploy
#velocityconf
2015
1.2.17
1.2.17
1.2.17
What if?
#velocityconf
2015
1.2.17
1.2.17
#velocityconf
2015
1.2.17
1.2.17
#velocityconf
2015
1.2.17 1.2.17
1.2.17
#velocityconf
2015
/health
200
OK
1.2.17 1.2.17
1.2.17
#velocityconf
2015
1.2.17 1.2.17
1.2.17
#velocityconf
2015
Smoke/Acceptance Testing
1.2.17
1.2.17
1.2.17
#velocityconf
2015
Paper Trail
create
tickets
commit(s)
#velocityconf
2015
Paper Trail
fail!
close/fail
#velocityconf
2015
Paper Trail
ok
close
#velocityconf
2015
Build
Unit Test
Deploy
Dev
Deploy
Prod
Deploy
Staging
Acceptance
Test
Code
Review &
Push
Production
Pre-Production
Open
RFC
Close
RFC
#velocityconf
2015
What’s inside the containers?
• Spring Boot
• Dropwizard Metrics (formerly Coda Hale, Yammer)
• Consul Registration/Discovery OrbitzWorldwide/consul-client
• Logstash + Logback
• Swagger
• Hystrix
• Retrofit + Consul
#velocityconf
2015
“Why didn’t you use {{.x}} ?”
#velocityconf
2015
Keeping an eye on…
Kubernetes Amazon
Elastic Container
Service
Docker
Swarm
#velocityconf
May 2015
Summary
• Create a platform for docker deployments using shared and app-specific “localhost” helpers
— this was ours, yours SHOULD look different — adapt to change, don’t fight it.
• People don’t scale, use automation
• Docker - repeatable applications (environment portable apps)
• Chef - repeatable infrastructure (environment aware services)
• Jenkins - repeatable releases (pipelines)
• Delineate configuration concerns:
• Known at Compile time — Bake into Docker image
• Known at Boot time — Bake into Playbook/Launcher - parameter to Docker run
• Changes Anytime — Externalize (consul K/V, etcd, zookeeper)
#velocityconf
2015
Questions?

More Related Content

What's hot

Velocity London - Chaos Engineering Bootcamp
Velocity London - Chaos Engineering Bootcamp Velocity London - Chaos Engineering Bootcamp
Velocity London - Chaos Engineering Bootcamp Ana Medina
 
Testing programmable infrastructure
Testing programmable infrastructureTesting programmable infrastructure
Testing programmable infrastructureMatt Long
 
ZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small TeamsZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small TeamsJoe Ferguson
 
Deploying 3 times a day without a downtime @ Rocket Tech Summit in Berlin
Deploying 3 times a day without a downtime @ Rocket Tech Summit in BerlinDeploying 3 times a day without a downtime @ Rocket Tech Summit in Berlin
Deploying 3 times a day without a downtime @ Rocket Tech Summit in BerlinAlessandro Nadalin
 
Immutable infrastructure:觀念與實作 (建議)
Immutable infrastructure:觀念與實作 (建議)Immutable infrastructure:觀念與實作 (建議)
Immutable infrastructure:觀念與實作 (建議)William Yeh
 
⛳️ Votre API passe-t-elle le contrôle technique ?
⛳️ Votre API passe-t-elle le contrôle technique ?⛳️ Votre API passe-t-elle le contrôle technique ?
⛳️ Votre API passe-t-elle le contrôle technique ?François-Guillaume Ribreau
 
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...Audrey Neveu
 
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...Audrey Neveu
 
Frontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy PersonFrontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy PersonPhilip Tellis
 
Symfony Live NYC 2014 - Rock Solid Deployment of Symfony Apps
Symfony Live NYC 2014 -  Rock Solid Deployment of Symfony AppsSymfony Live NYC 2014 -  Rock Solid Deployment of Symfony Apps
Symfony Live NYC 2014 - Rock Solid Deployment of Symfony AppsPablo Godel
 
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony AppsSymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony AppsPablo Godel
 
The Modern Developer Toolbox
The Modern Developer ToolboxThe Modern Developer Toolbox
The Modern Developer ToolboxPablo Godel
 
Code reviews vs Pull requests
Code reviews vs Pull requestsCode reviews vs Pull requests
Code reviews vs Pull requestsTim Pettersen
 
Madison PHP 2015 - DevOps For Small Teams
Madison PHP 2015 - DevOps For Small TeamsMadison PHP 2015 - DevOps For Small Teams
Madison PHP 2015 - DevOps For Small TeamsJoe Ferguson
 
Enabling Hybrid Workflows with Docker/Mesos @Orbitz
Enabling Hybrid Workflows with Docker/Mesos @OrbitzEnabling Hybrid Workflows with Docker/Mesos @Orbitz
Enabling Hybrid Workflows with Docker/Mesos @OrbitzSteve Hoffman
 
Building a PaaS at HubSpot
Building a PaaS at HubSpotBuilding a PaaS at HubSpot
Building a PaaS at HubSpottpetr
 
DevOps For Small Teams
DevOps For Small TeamsDevOps For Small Teams
DevOps For Small TeamsJoe Ferguson
 
Web frameworks don't matter
Web frameworks don't matterWeb frameworks don't matter
Web frameworks don't matterTomas Doran
 
Hadoop Summit 2013 : Continuous Integration on top of hadoop
Hadoop Summit 2013 : Continuous Integration on top of hadoopHadoop Summit 2013 : Continuous Integration on top of hadoop
Hadoop Summit 2013 : Continuous Integration on top of hadoopWisely chen
 

What's hot (20)

Velocity London - Chaos Engineering Bootcamp
Velocity London - Chaos Engineering Bootcamp Velocity London - Chaos Engineering Bootcamp
Velocity London - Chaos Engineering Bootcamp
 
Testing programmable infrastructure
Testing programmable infrastructureTesting programmable infrastructure
Testing programmable infrastructure
 
ZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small TeamsZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small Teams
 
Deploying 3 times a day without a downtime @ Rocket Tech Summit in Berlin
Deploying 3 times a day without a downtime @ Rocket Tech Summit in BerlinDeploying 3 times a day without a downtime @ Rocket Tech Summit in Berlin
Deploying 3 times a day without a downtime @ Rocket Tech Summit in Berlin
 
Immutable infrastructure:觀念與實作 (建議)
Immutable infrastructure:觀念與實作 (建議)Immutable infrastructure:觀念與實作 (建議)
Immutable infrastructure:觀念與實作 (建議)
 
⛳️ Votre API passe-t-elle le contrôle technique ?
⛳️ Votre API passe-t-elle le contrôle technique ?⛳️ Votre API passe-t-elle le contrôle technique ?
⛳️ Votre API passe-t-elle le contrôle technique ?
 
Namshi in 2014: let's rock!
Namshi in 2014: let's rock!Namshi in 2014: let's rock!
Namshi in 2014: let's rock!
 
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...
 
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...
Le Streaming d'API : pourquoi et comment transformer vos APIs statiques en do...
 
Frontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy PersonFrontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy Person
 
Symfony Live NYC 2014 - Rock Solid Deployment of Symfony Apps
Symfony Live NYC 2014 -  Rock Solid Deployment of Symfony AppsSymfony Live NYC 2014 -  Rock Solid Deployment of Symfony Apps
Symfony Live NYC 2014 - Rock Solid Deployment of Symfony Apps
 
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony AppsSymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
 
The Modern Developer Toolbox
The Modern Developer ToolboxThe Modern Developer Toolbox
The Modern Developer Toolbox
 
Code reviews vs Pull requests
Code reviews vs Pull requestsCode reviews vs Pull requests
Code reviews vs Pull requests
 
Madison PHP 2015 - DevOps For Small Teams
Madison PHP 2015 - DevOps For Small TeamsMadison PHP 2015 - DevOps For Small Teams
Madison PHP 2015 - DevOps For Small Teams
 
Enabling Hybrid Workflows with Docker/Mesos @Orbitz
Enabling Hybrid Workflows with Docker/Mesos @OrbitzEnabling Hybrid Workflows with Docker/Mesos @Orbitz
Enabling Hybrid Workflows with Docker/Mesos @Orbitz
 
Building a PaaS at HubSpot
Building a PaaS at HubSpotBuilding a PaaS at HubSpot
Building a PaaS at HubSpot
 
DevOps For Small Teams
DevOps For Small TeamsDevOps For Small Teams
DevOps For Small Teams
 
Web frameworks don't matter
Web frameworks don't matterWeb frameworks don't matter
Web frameworks don't matter
 
Hadoop Summit 2013 : Continuous Integration on top of hadoop
Hadoop Summit 2013 : Continuous Integration on top of hadoopHadoop Summit 2013 : Continuous Integration on top of hadoop
Hadoop Summit 2013 : Continuous Integration on top of hadoop
 

Viewers also liked

Principles of microservices ndc oslo
Principles of microservices   ndc osloPrinciples of microservices   ndc oslo
Principles of microservices ndc osloSam Newman
 
AppSec & Microservices - Velocity 2016
AppSec & Microservices - Velocity 2016AppSec & Microservices - Velocity 2016
AppSec & Microservices - Velocity 2016Sam Newman
 
Principles of microservices velocity
Principles of microservices   velocityPrinciples of microservices   velocity
Principles of microservices velocitySam Newman
 
Adopting sa fe the theory and the practice (Perth Agile Meetup Aug 2013)
Adopting sa fe   the theory and the practice (Perth Agile Meetup Aug 2013)Adopting sa fe   the theory and the practice (Perth Agile Meetup Aug 2013)
Adopting sa fe the theory and the practice (Perth Agile Meetup Aug 2013)Mark Richards
 
Safe - corruption, copout or corporate kaizen
Safe - corruption, copout or corporate kaizenSafe - corruption, copout or corporate kaizen
Safe - corruption, copout or corporate kaizenMark Richards
 
Enabling Microservice @ Orbitz - GOTO Chicago 2016
Enabling Microservice @ Orbitz - GOTO Chicago 2016Enabling Microservice @ Orbitz - GOTO Chicago 2016
Enabling Microservice @ Orbitz - GOTO Chicago 2016Steve Hoffman
 
Enabling Microservices @Orbitz - DevOpsDays Chicago 2015
Enabling Microservices @Orbitz - DevOpsDays Chicago 2015Enabling Microservices @Orbitz - DevOpsDays Chicago 2015
Enabling Microservices @Orbitz - DevOpsDays Chicago 2015Steve Hoffman
 
TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...
TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...
TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...Steve Hoffman
 
Enabling Microservices @Orbitz - DockerCon 2015
Enabling Microservices @Orbitz - DockerCon 2015Enabling Microservices @Orbitz - DockerCon 2015
Enabling Microservices @Orbitz - DockerCon 2015Steve Hoffman
 
Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014
Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014
Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014Steve Hoffman
 
AppSec And Microservices
AppSec And MicroservicesAppSec And Microservices
AppSec And MicroservicesSam Newman
 
Principles of Microservices - NDC 2014
Principles of Microservices  - NDC 2014Principles of Microservices  - NDC 2014
Principles of Microservices - NDC 2014Sam Newman
 
BETA - Securing microservices
BETA - Securing microservicesBETA - Securing microservices
BETA - Securing microservicesSam Newman
 
Deploying and Scaling Microservices
Deploying and Scaling MicroservicesDeploying and Scaling Microservices
Deploying and Scaling MicroservicesSam Newman
 

Viewers also liked (14)

Principles of microservices ndc oslo
Principles of microservices   ndc osloPrinciples of microservices   ndc oslo
Principles of microservices ndc oslo
 
AppSec & Microservices - Velocity 2016
AppSec & Microservices - Velocity 2016AppSec & Microservices - Velocity 2016
AppSec & Microservices - Velocity 2016
 
Principles of microservices velocity
Principles of microservices   velocityPrinciples of microservices   velocity
Principles of microservices velocity
 
Adopting sa fe the theory and the practice (Perth Agile Meetup Aug 2013)
Adopting sa fe   the theory and the practice (Perth Agile Meetup Aug 2013)Adopting sa fe   the theory and the practice (Perth Agile Meetup Aug 2013)
Adopting sa fe the theory and the practice (Perth Agile Meetup Aug 2013)
 
Safe - corruption, copout or corporate kaizen
Safe - corruption, copout or corporate kaizenSafe - corruption, copout or corporate kaizen
Safe - corruption, copout or corporate kaizen
 
Enabling Microservice @ Orbitz - GOTO Chicago 2016
Enabling Microservice @ Orbitz - GOTO Chicago 2016Enabling Microservice @ Orbitz - GOTO Chicago 2016
Enabling Microservice @ Orbitz - GOTO Chicago 2016
 
Enabling Microservices @Orbitz - DevOpsDays Chicago 2015
Enabling Microservices @Orbitz - DevOpsDays Chicago 2015Enabling Microservices @Orbitz - DevOpsDays Chicago 2015
Enabling Microservices @Orbitz - DevOpsDays Chicago 2015
 
TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...
TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...
TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...
 
Enabling Microservices @Orbitz - DockerCon 2015
Enabling Microservices @Orbitz - DockerCon 2015Enabling Microservices @Orbitz - DockerCon 2015
Enabling Microservices @Orbitz - DockerCon 2015
 
Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014
Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014
Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014
 
AppSec And Microservices
AppSec And MicroservicesAppSec And Microservices
AppSec And Microservices
 
Principles of Microservices - NDC 2014
Principles of Microservices  - NDC 2014Principles of Microservices  - NDC 2014
Principles of Microservices - NDC 2014
 
BETA - Securing microservices
BETA - Securing microservicesBETA - Securing microservices
BETA - Securing microservices
 
Deploying and Scaling Microservices
Deploying and Scaling MicroservicesDeploying and Scaling Microservices
Deploying and Scaling Microservices
 

Similar to Enabling Microservices @Orbitz - Velocity Conf 2015

DockerCon SF 2015: Enabling Microservices @Orbitz
DockerCon SF 2015: Enabling Microservices @OrbitzDockerCon SF 2015: Enabling Microservices @Orbitz
DockerCon SF 2015: Enabling Microservices @OrbitzDocker, Inc.
 
Front End Development for Back End Developers - Devoxx UK 2017
 Front End Development for Back End Developers - Devoxx UK 2017 Front End Development for Back End Developers - Devoxx UK 2017
Front End Development for Back End Developers - Devoxx UK 2017Matt Raible
 
How to create your own hack environment
How to create your own hack environmentHow to create your own hack environment
How to create your own hack environmentSumedt Jitpukdebodin
 
Techdays Helsinki - Creating the distributed apps of the future using dapr - ...
Techdays Helsinki - Creating the distributed apps of the future using dapr - ...Techdays Helsinki - Creating the distributed apps of the future using dapr - ...
Techdays Helsinki - Creating the distributed apps of the future using dapr - ...Geert van der Cruijsen
 
Automatisation in development and testing - within budget
Automatisation in development and testing - within budgetAutomatisation in development and testing - within budget
Automatisation in development and testing - within budgetDavid Lukac
 
Automatisation in development and testing - within budget [IronCamp prague 20...
Automatisation in development and testing - within budget [IronCamp prague 20...Automatisation in development and testing - within budget [IronCamp prague 20...
Automatisation in development and testing - within budget [IronCamp prague 20...David Lukac
 
OpenFaaS KubeCon Zero to Serverless in 60 seconds anywhere
OpenFaaS KubeCon Zero to Serverless in 60 seconds anywhereOpenFaaS KubeCon Zero to Serverless in 60 seconds anywhere
OpenFaaS KubeCon Zero to Serverless in 60 seconds anywhereAlex Ellis
 
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik DornJDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik DornPROIDEA
 
Angularjs practical project experiences with javascript development in a bank
Angularjs practical project experiences with javascript development in a bankAngularjs practical project experiences with javascript development in a bank
Angularjs practical project experiences with javascript development in a bankDavid Amend
 
Creating Scalable JVM/Java Apps on Heroku
Creating Scalable JVM/Java Apps on HerokuCreating Scalable JVM/Java Apps on Heroku
Creating Scalable JVM/Java Apps on HerokuJoe Kutner
 
Deploy made easy (even on Friday)
Deploy made easy (even on Friday)Deploy made easy (even on Friday)
Deploy made easy (even on Friday)Riccardo Bini
 
Apic dc api deep dive
Apic dc api deep dive Apic dc api deep dive
Apic dc api deep dive Cisco DevNet
 
'DOCKER' & CLOUD: ENABLERS For DEVOPS
'DOCKER' & CLOUD:  ENABLERS For DEVOPS'DOCKER' & CLOUD:  ENABLERS For DEVOPS
'DOCKER' & CLOUD: ENABLERS For DEVOPSACA IT-Solutions
 
Docker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITDocker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITStijn Wijndaele
 
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston MeetupOpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston Meetupragss
 
フロントエンドエンジニア(仮) 〜え、ちょっとフロントやること多すぎじゃない!?〜
フロントエンドエンジニア(仮) 〜え、ちょっとフロントやること多すぎじゃない!?〜フロントエンドエンジニア(仮) 〜え、ちょっとフロントやること多すぎじゃない!?〜
フロントエンドエンジニア(仮) 〜え、ちょっとフロントやること多すぎじゃない!?〜Koji Ishimoto
 

Similar to Enabling Microservices @Orbitz - Velocity Conf 2015 (20)

DockerCon SF 2015: Enabling Microservices @Orbitz
DockerCon SF 2015: Enabling Microservices @OrbitzDockerCon SF 2015: Enabling Microservices @Orbitz
DockerCon SF 2015: Enabling Microservices @Orbitz
 
Front End Development for Back End Developers - Devoxx UK 2017
 Front End Development for Back End Developers - Devoxx UK 2017 Front End Development for Back End Developers - Devoxx UK 2017
Front End Development for Back End Developers - Devoxx UK 2017
 
How to create your own hack environment
How to create your own hack environmentHow to create your own hack environment
How to create your own hack environment
 
Techdays Helsinki - Creating the distributed apps of the future using dapr - ...
Techdays Helsinki - Creating the distributed apps of the future using dapr - ...Techdays Helsinki - Creating the distributed apps of the future using dapr - ...
Techdays Helsinki - Creating the distributed apps of the future using dapr - ...
 
Automatisation in development and testing - within budget
Automatisation in development and testing - within budgetAutomatisation in development and testing - within budget
Automatisation in development and testing - within budget
 
Automatisation in development and testing - within budget [IronCamp prague 20...
Automatisation in development and testing - within budget [IronCamp prague 20...Automatisation in development and testing - within budget [IronCamp prague 20...
Automatisation in development and testing - within budget [IronCamp prague 20...
 
Sprint 17
Sprint 17Sprint 17
Sprint 17
 
OpenFaaS KubeCon Zero to Serverless in 60 seconds anywhere
OpenFaaS KubeCon Zero to Serverless in 60 seconds anywhereOpenFaaS KubeCon Zero to Serverless in 60 seconds anywhere
OpenFaaS KubeCon Zero to Serverless in 60 seconds anywhere
 
BEST REST in OpenStack
BEST REST in OpenStackBEST REST in OpenStack
BEST REST in OpenStack
 
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik DornJDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
 
Angularjs practical project experiences with javascript development in a bank
Angularjs practical project experiences with javascript development in a bankAngularjs practical project experiences with javascript development in a bank
Angularjs practical project experiences with javascript development in a bank
 
Creating Scalable JVM/Java Apps on Heroku
Creating Scalable JVM/Java Apps on HerokuCreating Scalable JVM/Java Apps on Heroku
Creating Scalable JVM/Java Apps on Heroku
 
Deploy made easy (even on Friday)
Deploy made easy (even on Friday)Deploy made easy (even on Friday)
Deploy made easy (even on Friday)
 
Apic dc api deep dive
Apic dc api deep dive Apic dc api deep dive
Apic dc api deep dive
 
'DOCKER' & CLOUD: ENABLERS For DEVOPS
'DOCKER' & CLOUD:  ENABLERS For DEVOPS'DOCKER' & CLOUD:  ENABLERS For DEVOPS
'DOCKER' & CLOUD: ENABLERS For DEVOPS
 
Docker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITDocker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-IT
 
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston MeetupOpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
 
2015 Q4 webrtc standards update
2015 Q4 webrtc standards update2015 Q4 webrtc standards update
2015 Q4 webrtc standards update
 
フロントエンドエンジニア(仮) 〜え、ちょっとフロントやること多すぎじゃない!?〜
フロントエンドエンジニア(仮) 〜え、ちょっとフロントやること多すぎじゃない!?〜フロントエンドエンジニア(仮) 〜え、ちょっとフロントやること多すぎじゃない!?〜
フロントエンドエンジニア(仮) 〜え、ちょっとフロントやること多すぎじゃない!?〜
 
Docking with Docker
Docking with DockerDocking with Docker
Docking with Docker
 

More from Steve Hoffman

Nerd Out with Hadoop: A Not-So-Basic Introduction to the Platform
Nerd Out with Hadoop: A Not-So-Basic Introduction to the PlatformNerd Out with Hadoop: A Not-So-Basic Introduction to the Platform
Nerd Out with Hadoop: A Not-So-Basic Introduction to the PlatformSteve Hoffman
 
Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018
Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018
Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018Steve Hoffman
 
Combating DNS Exfiltration in AWS - BSidesChicago 2018
Combating DNS Exfiltration in AWS - BSidesChicago 2018Combating DNS Exfiltration in AWS - BSidesChicago 2018
Combating DNS Exfiltration in AWS - BSidesChicago 2018Steve Hoffman
 
How Open Source is Transforming the Internet. Again.
How Open Source is Transforming the Internet. Again.How Open Source is Transforming the Internet. Again.
How Open Source is Transforming the Internet. Again.Steve Hoffman
 
flAWS Walkthrough - AWS Chicago Meetup 8/8/2017
flAWS Walkthrough - AWS Chicago Meetup 8/8/2017flAWS Walkthrough - AWS Chicago Meetup 8/8/2017
flAWS Walkthrough - AWS Chicago Meetup 8/8/2017Steve Hoffman
 

More from Steve Hoffman (6)

Byte Sized Rust
Byte Sized RustByte Sized Rust
Byte Sized Rust
 
Nerd Out with Hadoop: A Not-So-Basic Introduction to the Platform
Nerd Out with Hadoop: A Not-So-Basic Introduction to the PlatformNerd Out with Hadoop: A Not-So-Basic Introduction to the Platform
Nerd Out with Hadoop: A Not-So-Basic Introduction to the Platform
 
Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018
Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018
Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018
 
Combating DNS Exfiltration in AWS - BSidesChicago 2018
Combating DNS Exfiltration in AWS - BSidesChicago 2018Combating DNS Exfiltration in AWS - BSidesChicago 2018
Combating DNS Exfiltration in AWS - BSidesChicago 2018
 
How Open Source is Transforming the Internet. Again.
How Open Source is Transforming the Internet. Again.How Open Source is Transforming the Internet. Again.
How Open Source is Transforming the Internet. Again.
 
flAWS Walkthrough - AWS Chicago Meetup 8/8/2017
flAWS Walkthrough - AWS Chicago Meetup 8/8/2017flAWS Walkthrough - AWS Chicago Meetup 8/8/2017
flAWS Walkthrough - AWS Chicago Meetup 8/8/2017
 

Recently uploaded

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 

Enabling Microservices @Orbitz - Velocity Conf 2015