Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DevOoops Mastery
Search
Bryan Liles
March 12, 2015
Technology
0
74
DevOoops Mastery
How to move from DevOoops to DevOps
Bryan Liles
March 12, 2015
Tweet
Share
More Decks by Bryan Liles
See All by Bryan Liles
DevOps Days MSP 2017
bryanl
2
1.1k
Velocity 2017 SJ: Application Tracing
bryanl
2
360
Application Ops 1.0
bryanl
1
200
Go At Work
bryanl
0
230
The (Ruby) Sims
bryanl
1
140
How Vs Why
bryanl
0
130
ruby -pi -e.bak - Windy City Rails
bryanl
1
280
Arrrr Camp 2012: Simulating the World with Ruby
bryanl
2
520
Other Decks in Technology
See All in Technology
Generative AI Japan 第一回生成AI実践研究会「AI駆動開発の現在地──ブレイクスルーの鍵を握るのはデータ領域」
shisyu_gaku
0
290
5年目から始める Vue3 サイト改善 #frontendo
tacck
PRO
3
220
Android Audio: Beyond Winning On It
atsushieno
0
880
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
190
いま注目のAIエージェントを作ってみよう
supermarimobros
0
310
La gouvernance territoriale des données grâce à la plateforme Terreze
bluehats
0
180
人工衛星のファームウェアをRustで書く理由
koba789
15
8k
KotlinConf 2025_イベントレポート
sony
1
140
LLMを搭載したプロダクトの品質保証の模索と学び
qa
0
1.1k
AIのグローバルトレンド2025 #scrummikawa / global ai trend
kyonmm
PRO
1
290
AI開発ツールCreateがAnythingになったよ
tendasato
0
130
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.5k
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
513
110k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
530
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Faster Mobile Websites
deanohume
309
31k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Building Applications with DynamoDB
mza
96
6.6k
Documentation Writing (for coders)
carmenintech
74
5k
The Invisible Side of Design
smashingmag
301
51k
Six Lessons from altMBA
skipperchong
28
4k
Transcript
DevOoops Mastery Bryan Liles
DevOoops Mastery @bryanl
DevOops Mastery
More Mastery less oops
Accidental successes
“It works on my machine”
Promise Theory
Promise Theory • Model of voluntary cooperation between individual, autonomous
actors, or agents who publish their intentions to one another in a form of promises. • Dev makes promises to ops • Ops make promises to dev
Automation
OOPS: to release our software, it only requires three CLI
commands, a web page visit, an email to Santa, and an act of <insert deity>
The Mastery
once, twice, automate
use Vagrant?
use Vagrant with DigitalOcean?
docker-machine
docker-machine docker compose
docker-machine docker compose docker swarm
Contest: What does tr(1) do?
Configuration Management
OOPS: We configure servers with this set of scripts. You
have to run this one before that one, and this other one only once.
The Mastery
We Chef
You might Ansible or Puppet or Salt or CFEngine or
custom
but should you custom?
yeah, you test this too google “chef test kitchen”
composition over comprehensiveness
Contest: On a modern Linux distribution, how can you find
the number of processors?
Continuous Integration
OOPS: Why spend time and money on another server when
it works on my workstation?
The Mastery
you might Jenkins
I Travis’d in the past
We used Drone
I wish we Jenkins’d
CI produces artifacts
Only deploy the artifacts
Contest: What year did Linux come out?
Deployment
OOPS: We have to deploy from a certain server and
we can only deploy on odd Thursdays or when Jamaal is in the office.
The Mastery
What do you mean you don’t test your deploys?
capistrano or fabric, take your pick
or deploy with chef?
or roll your own …
… but don’t do that
or go advanced mode have your CI build docker images
or go super advanced mode deploy those docker images to
mesos
PS…… Digital Ocean Droplets start at $5/month
or go SUPER DUPER ADVANCED MODE use packer to build
machine images with your app already installed and configured and use the cloud like it wants to used.
Contest: I have a Ruby array: [{“foo_id"=>"1"}, {"bar_id"=>"2"}, {“bar_id"=>"3"}] How
do I convert it to: [2, 4, 6]
Teams Over Individuals
OOPS: They are Ops and we are Engineering. We write,
they keep the servers up. The two shall not cross paths.
The Mastery
Dev VS Ops
Engineer VS SRE
chat all the things
f(devoops) -> devops
Automation
Configuration Management
Continuous Integration
Deployment
Teams over Individuals
we suck
we are lazy
we can’t do the a task the same way twice
we do things differently the second time
Thanks! @bryanl @digitalocean