TOWARDS	
  A	
  RESPONSIVE	
  BUSINESS	
  
The	
  Developer	
  Way	
  
@nigelfds

github.com/nigelfds
Towards a responsive business - DevOps MeetUp Melbourne 2013
Towards a responsive business - DevOps MeetUp Melbourne 2013
Towards a responsive business - DevOps MeetUp Melbourne 2013
Understanding
the problems
“We make a change in one place and
somewhere, something else breaks”
“It feels like it
takes a long time to
complete what
should be a simple
thing”
“Feels like all we have done are patches, hacks
and short term tactical fixes to meet deadlines”
Part of any problem is: people & process
I’m going to focus on
the technical parts
www.laputan.org	
  
1.  Architecture

2.  Automations

3.  Quality

We’ll talk about getting responsive in 3
levels

…and what we learnt along the way.
1. Architecture
Kitchen Sink
Legacy systems grow arms and legs…



…because the world needs to continue
Different speeds
of evolution
Factoring systems by
Value Stream
Towards a responsive business - DevOps MeetUp Melbourne 2013
You aren’t
going to get it
right at first
go
Using WebAPI and
Areas to build
services within a
service
Towards a responsive business - DevOps MeetUp Melbourne 2013
Eliminating batch
processes is hard
2. Automations
“I	
  do	
  believe	
  that	
  complexity	
  is	
  the	
  enemy.	
  
Un7l	
  we	
  be9er	
  understand	
  complexity,	
  our	
  
chances	
  of	
  building	
  be9er	
  IT	
  systems	
  is	
  
limited.	
  The	
  first	
  thing	
  we	
  must	
  understand	
  
about	
  complexity	
  is	
  that	
  not	
  all	
  complexity	
  is	
  
equal.	
  And	
  the	
  complexity	
  on	
  which	
  most	
  
people	
  focus	
  is	
  probably	
  the	
  least	
  complex	
  
complexity	
  of	
  all.”	
  
h4p://simplearchitectures.blogspot.com/2009/03/cancer-­‐of-­‐complexity.html	
  
Roger	
  Sessions	
  
Accidental	
  complexity	
  vs	
  Planned	
  complexity	
  
Dealing with artifacts…
Managing Pipelines
Make	
  it	
  Visible!	
  
Raw Materials

i.e GIT

Factory

i.e CI
Server

Warehouse

i.e ProGet /Nuget

Distribution Network

i.e. Powershell etc.

Retailer

i.e. Target
Environment

Use an Analogy
Drilling down...
to package our apps
What’s inside the nuget
package?

Puppet	
  manifests	
  
	
  
Environment	
  
ConfiguraOons	
  as	
  JSON	
  
	
  
Install	
  Script	
  in	
  
Powershell	
  
	
  
Zip’ed	
  up	
  applicaOon	
  
Proget to manage
the packages for
the environments

Dev Feed

Test Feed

Staging Feed

Production Feed
Push button deployment

1.	
  Deploy	
  v0.1.7	
  
to	
  staging	
  
3.	
  Install	
  version	
  v.0.1.7	
  
4.	
  Proget	
  Staging	
  Feed,	
  
give	
  me,	
  v0.1.7	
  
6.	
  Unpacks	
  the	
  
box	
  and	
  	
  
runs	
  the	
  install	
  
script	
  
2.	
  Powershell	
  over	
  winRM	
  
5.	
  Here	
  you	
  go!	
  
Target

Server
Checks	
  for	
  
the	
  correct	
  
environment	
  
Uses	
  the	
  environment	
  
configuraOon	
  with	
  
puppet	
  to	
  configure	
  the	
  
environment	
  
IIS	
  configuraOon,	
  
Folder	
  permissions	
  
	
  etc	
  
3. Quality
Testing deployment scripts…

…with Canary packages
Guarantees at every every stage in
pipeline

ü Unit	
  Tested	
  
ü IntegraOon	
  Tested	
  	
  
ü BlackBox	
  Tested	
  
Status Checks
End-to-End tests
Towards a responsive business - DevOps MeetUp Melbourne 2013
5 Months +scope

9 weeks +scope

4 weeks +scope
Towards a responsive business - DevOps MeetUp Melbourne 2013
Towards a responsive business - DevOps MeetUp Melbourne 2013
ApplicaOon	
  
Environment	
  
Infrastructure	
  
Build	
  
Farm	
  
S3	
  Bucket	
  
Nigel’s	
  Laptop	
  
Puppet	
  &	
  AWS	
  	
  
scripts	
  
Cloud	
  
FormaOon	
  
APIs	
  
Packaged	
  
Scripts	
  
Create	
  	
  
Machine	
  
Self	
  Configured	
  
Behind	
  the	
  scenes	
  
Repeatable	
  &	
  ConOnuous	
  	
  
App	
  
Server	
  
Cloud	
  
FormaOon	
  
APIs	
  
Behind	
  the	
  scenes	
  
GO	
  
Server	
  
Self	
  Configured	
  
Puppet	
  &	
  AWS	
  	
  
scripts	
  
Towards a responsive business - DevOps MeetUp Melbourne 2013
1.  Architecture

2.  Automations

3.  Quality

Recap
Thank you.

More Related Content

PDF
Towards a Responsive Business
ODP
Getting your project_started
PPTX
Provisioning Environments, a simplistic approach
PPTX
Jenkins tutorial for beginners
PDF
DevOps <3 node.js
ODP
Continuous Integration and PHP
PPTX
That worked before
PDF
Deploying node.js at scale - Maraschi, Collina - Codemotion Amsterdam 2016
Towards a Responsive Business
Getting your project_started
Provisioning Environments, a simplistic approach
Jenkins tutorial for beginners
DevOps <3 node.js
Continuous Integration and PHP
That worked before
Deploying node.js at scale - Maraschi, Collina - Codemotion Amsterdam 2016

What's hot (16)

PPT
Continuous integration (light talk)
PPT
Developer Week
PDF
Improve the deployment process step by step
PDF
İstanbul Javaday 2017
PDF
Continuous Delivery in Java
PPTX
Develop 4 Developers
PDF
Putting the pro in programmer
PDF
Scaling Engineering with Docker
PPTX
Bootstrapping Quality
PDF
Monufacture: Effortless Test Data for MongoDB
PDF
Continuous Delivery su progetti Java: cosa abbiamo imparato facendoci del male
PPTX
Grunt Continuous Development of the Front End Tier
PDF
Why You Should Start Using Docker
PPTX
Docker for everything
PDF
SRE 101
Continuous integration (light talk)
Developer Week
Improve the deployment process step by step
İstanbul Javaday 2017
Continuous Delivery in Java
Develop 4 Developers
Putting the pro in programmer
Scaling Engineering with Docker
Bootstrapping Quality
Monufacture: Effortless Test Data for MongoDB
Continuous Delivery su progetti Java: cosa abbiamo imparato facendoci del male
Grunt Continuous Development of the Front End Tier
Why You Should Start Using Docker
Docker for everything
SRE 101
Ad

Viewers also liked (7)

PPTX
Continuous Delivery and the Cloud
PDF
DevOps Days Melbourne meet-up
PDF
RubyConf Uruguay 2011
PPTX
Agile Software Development (Monash University - Guest Lecture series)
PPTX
Looking at your Technology company through the "3 Horizons of growth" model.
PPTX
Continuous Delivery in the AWS Cloud
PPTX
LAST Conference - Dev-Ops and Continuous Delivery
Continuous Delivery and the Cloud
DevOps Days Melbourne meet-up
RubyConf Uruguay 2011
Agile Software Development (Monash University - Guest Lecture series)
Looking at your Technology company through the "3 Horizons of growth" model.
Continuous Delivery in the AWS Cloud
LAST Conference - Dev-Ops and Continuous Delivery
Ad

Similar to Towards a responsive business - DevOps MeetUp Melbourne 2013 (20)

PPTX
Towards a responsive business, the developer way
PPTX
Introduction to DevOps
KEY
Don't touch that server
PDF
Rock Solid Deployment of Web Applications
PDF
Class 7: Introduction to web technology entrepreneurship
PDF
15-factor-apps.pdf
PDF
Building Internet-scale Applications
PDF
Application Delivery Patterns
PDF
Deploying distributed software services to the cloud without breaking a sweat
PDF
Distributed software services to the cloud without breaking a sweat
KEY
Standardizing and Managing Your Infrastructure - MOSC 2011
ODP
Automating MySQL operations with Puppet
PDF
RedisConf18 - Common Redis Use Cases for Cloud Native Apps and Microservices
PDF
Puppet camp london nov 2014 slides (1)
PDF
Puppet Camp San Francisco 2015: Puppet Adoption in a Mature Environment
PDF
Building Microservices Software practics
PPTX
ServerTemplate™ Deep Dive: Configuration for Multi-Cloud Environments
KEY
Release management with NuGet/Chocolatey/JIRA
PPTX
Design Reviews for Operations - Velocity Europe 2014
PDF
The 12 Factor App
Towards a responsive business, the developer way
Introduction to DevOps
Don't touch that server
Rock Solid Deployment of Web Applications
Class 7: Introduction to web technology entrepreneurship
15-factor-apps.pdf
Building Internet-scale Applications
Application Delivery Patterns
Deploying distributed software services to the cloud without breaking a sweat
Distributed software services to the cloud without breaking a sweat
Standardizing and Managing Your Infrastructure - MOSC 2011
Automating MySQL operations with Puppet
RedisConf18 - Common Redis Use Cases for Cloud Native Apps and Microservices
Puppet camp london nov 2014 slides (1)
Puppet Camp San Francisco 2015: Puppet Adoption in a Mature Environment
Building Microservices Software practics
ServerTemplate™ Deep Dive: Configuration for Multi-Cloud Environments
Release management with NuGet/Chocolatey/JIRA
Design Reviews for Operations - Velocity Europe 2014
The 12 Factor App

More from Nigel Fernandes (11)

PPTX
Digital Transformation Summit - Melbourne 2019
PPTX
Ipqc Enterprise Architecture Summit - Melbourne 2019
PPTX
Exploiting Serverless - DevOps Conference Sydney 2018
PDF
Microservices meetup
PPTX
Seek test-invaders
PDF
My career lessons - for Monash Students at Battle of the Brains 215
PPTX
Lessons learnt the hard way.
PPTX
Lean Programmer Anarchy
PDF
Thoughtworks Brazil, Code Quality
PDF
RubyConf Brazil 2011
PDF
Test Engineering
Digital Transformation Summit - Melbourne 2019
Ipqc Enterprise Architecture Summit - Melbourne 2019
Exploiting Serverless - DevOps Conference Sydney 2018
Microservices meetup
Seek test-invaders
My career lessons - for Monash Students at Battle of the Brains 215
Lessons learnt the hard way.
Lean Programmer Anarchy
Thoughtworks Brazil, Code Quality
RubyConf Brazil 2011
Test Engineering

Recently uploaded (20)

PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
PDF
Getting started with AI Agents and Multi-Agent Systems
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
DOCX
search engine optimization ppt fir known well about this
PDF
August Patch Tuesday
PDF
Developing a website for English-speaking practice to English as a foreign la...
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PPTX
The various Industrial Revolutions .pptx
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
A review of recent deep learning applications in wood surface defect identifi...
PPTX
Web Crawler for Trend Tracking Gen Z Insights.pptx
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
Unlock new opportunities with location data.pdf
PPTX
Tartificialntelligence_presentation.pptx
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
Getting started with AI Agents and Multi-Agent Systems
Zenith AI: Advanced Artificial Intelligence
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
A contest of sentiment analysis: k-nearest neighbor versus neural network
search engine optimization ppt fir known well about this
August Patch Tuesday
Developing a website for English-speaking practice to English as a foreign la...
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
The various Industrial Revolutions .pptx
Module 1.ppt Iot fundamentals and Architecture
A review of recent deep learning applications in wood surface defect identifi...
Web Crawler for Trend Tracking Gen Z Insights.pptx
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
Unlock new opportunities with location data.pdf
Tartificialntelligence_presentation.pptx
DP Operators-handbook-extract for the Mautical Institute
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf

Towards a responsive business - DevOps MeetUp Melbourne 2013