Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
Go Faster:Tech, Process, & Organization
Fred George
@fgeorge52
Copyright © 2015 by Fred George. All rights reserved. 1
Fred George
Copyright © 2015 by Fred George. All rights reserved. 3
Consulting Roles
• Change Agent
• Disruptor
• “Hand grenade I am throwing
into development”
• CTO describing Fred to his Vice
President
Industry “Hot” Topics
Copyright © 2015 by Fred George. All rights reserved. 4
MicroServices
Cloud
Docker
Dev/Ops Full-stack
developerAgile
Lean startupCassandra
Event busMVP (minimum
viable product
Programmer
anarchy
No-SQL
Why: New Problem Domains: The Cynefin Framework
Copyright © 2015 by Fred George. All rights reserved. 5
Simple
ComplicatedComplex
ChaoticCause a Effect
Cause aaa Effect
Effect? Cause?
Cause ? Effect
Disorder
Why: Competition is coming
Copyright © 2015 by Fred George. All rights reserved. 6
• Enablement through technologies
• Cloud computing
• Ubiquitous, high bandwidth
• Languages (and supporting frameworks)
• Recognition of business opportunities
• Silicon Valley innovators as role models
• Accelerating business needs
• Few inhibitors for global competitors
• Reduction of entry barriers for niche competitors
• Micro-marketing to specific customer niches
How Fast Can You Go?
Copyright © 2015 by Fred George. All rights reserved. 7
Iteration Length in Agile Age
Copyright © 2015 by Fred George. All rights reserved. 8
1 mo.
20152000 2005 2010
3 wks.
2 wks.
1 wk.
1 day
XP
XP
XP
XP
SCRUM* *2-3 months
Project Delivery Cycles
Copyright © 2015 by Fred George. All rights reserved. 9
5 yrs.
1980 1990 2000
1 mon.
1 week
1 day
2010
1 year
Pro
ject D
ura
tio
n (
log) Waterfall
Waterfall
Agile
Agile
A2
A2
Waterfall
w OO
How Fast Can You Go?
Copyright © 2015 by Fred George. All rights reserved. 10
Deployment to Production Every 3.5 minutes
Inhibitors
Copyright © 2015 by Fred George. All rights reserved. 11
•Cloud exploitation
•Specialized databases
•New programming languages
•Open source frameworks (users and creators)
•Continuous releases
“Valley Tech”
Copyright © 2015 by Fred George. All rights reserved. 12
Hardware Lead Times
Copyright © 2015 by Fred George. All rights reserved. 13
6 mo.
1990 1995 2005
30 min.
1 week
1 day
2015
1 mo.
2000 2010
5 min.
5 sec.Ord
er
lead
tim
es (
log)
Data Center
Virtual
Machines
Docker
Commercial
CloudCapacity planning?
Dedicated ops team?
Copyright © 2015 by Fred George. All rights reserved. 14
10
1
1000
10
0
100,0001 10 100 1000 10,000
Size (loc)
Num
be
r of S
erv
ices MicroServices
Rails / Java Zone
SO
A
Workshop
Forward
Netflix
Services Impact
0MQ
0MQ 0MQ
0MQ 0MQ 0MQ
Copyright © 2015 by Fred George. All rights reserved. 15
Kafka
Service
Emerging: Event Bus
New Architecture Patterns
Copyright © 2015 by Fred George. All rights reserved. 16
Bus
ServiceService
Service
Need
Need
Need
Sol’n’sSol’n
•Variants easy
•Graceful degradation
Choose
Sol’n
Incremental Applications
Copyright © 2015 by Fred George. All rights reserved. 17
Event Bus
Rental
offers
Car
rent
Legacy
server
Brand
offersLocation
offers
Segmentation
Membership
CarRent.com Login
Sally
A B
Databases:Holy Grail or Ball-and-Chain?
• Fortune 100 view:
• Entity-oriented; consistency essential
• As few as possible
• MicroService view:
• Shift to Event Bus, plus
• DB per MicroService (if persistence needed)
• Poly-glot (various NoSQL, SQL) + event buses
• Few (10%) writable; even fewer transactional
Copyright © 2015 by Fred George. All rights reserved. 18
Copyright © 2015 by Fred George. All rights reserved. 19
Rental
offers
Car
rent
Legacy
server
Brand
offersLocation
offers
Segmentation
Membership
CarRent.com Login
Sally
A B Rental
offers
Event
publishingSolution
collecting
300ms
responder
Redis
Copyright © 2015 by Fred George. All rights reserved. 20
Rental
offers
Car
rent
Legacy
server
Brand
offersLocation
offers
Segmentation
Membership
CarRent.com Login
Sally
A B
Membership
enrichmentETL Key-value
Open Source: Netflix
Copyright © 2015 by Fred George. All rights reserved. 21
Open Source: Docker
Copyright © 2015 by Fred George. All rights reserved. 22
Disruptive Technology: Functional Languages
Copyright © 2015 by Fred George. All rights reserved. 23
•Middleware exploiting:
• Kafka written in Scala
• RabbitMQ written in Erlang
•Case study: MailOnline page rendering
• Legacy system: 130K loc Java/JSP’s
• Replacement: 4,000 loc Clojure
Mitigate Process Inhibitors
Copyright © 2015 by Fred George. All rights reserved. 24
Understand Your Problem
Copyright © 2015 by Fred George. All rights reserved. 25
Complex
Simple
Complicated
ChaoticCause a Effect
Cause aaa Effect
Effect? Cause?
Cause ? Effect
Disorder
Copyright © 2015 by Fred George. All rights reserved. 26
Requirements
Trying ideas
“Experimentation
drives Innovation”
New Vision of “What” to Build
Copyright © 2015 by Fred George. All rights reserved. 27
Task
Story
Feature
Project
Initiative
Co-Credit: Greg Reiser, ThoughtWorks
Re-think Interactions
• Bad metrics:
• Lines of code
• Development stages and milestones met
•Business success metrics:
• Sales, clicks, registrations, customer retention, etc.
Measure What Matters
Copyright © 2015 by Fred George. All rights reserved. 28
Mitigate Organization Inhibitors
Copyright © 2015 by Fred George. All rights reserved. 29
Over-Specialization
Copyright © 2015 by Fred George. All rights reserved.
•Theory:
• Specialist are more productive
•Practice:
• Overhead of communication is under-estimated
• Unbalanced workload creates delays
30
Specialization Institutionalized with Titles
Copyright © 2015 by Fred George. All rights reserved. 31
Case Study:
•50 IT professionals
•25+ titles
•0 people understanding projects
Solution: Fix the Titles
Copyright © 2015 by Fred George. All rights reserved. 32
Step 1: Define competence in key technologies
Strategic Technologies• Ruby
• Java
• iOS
• Android
• DB (SQL and non-SQL)
• Testing
• OO Design
• Node.js
• HTML/CSS/JavaScript
• …
New Titles for New Projects
Copyright © 2015 by Fred George. All rights reserved. 33
Not competent in a
key technology
Competent in a key
technology
Expert in a key
technology
Competent in 5-7
key technologies
Expert in 3-5 key
technologies
“Fix the Furniture”*
Copyright © 2015 by Fred George. All rights reserved. 34*Kent Beck, XP Explained
Non-dedicated Leadership
Copyright © 2015 by Fred George. All rights reserved. 35
Bring Work to the Team…
Copyright © 2015 by Fred George. All rights reserved. 36
Not musical
chairs for each
small project
Reinforcing Movements
Copyright © 2015 by Fred George. All rights reserved. 39
MicroServices
Cloud
Docker
Dev/Ops Full-stack
developerAgile
Lean startupCassandra
Event busMVP (minimum
viable product
Programmer
anarchy
No-SQL
Project Delivery Cycles
Copyright © 2015 by Fred George. All rights reserved. 40
NRK
NRK
5 yrs.
1980 1990 2000
1 mon.
1 week
1 day
2010
1 year
Pro
ject D
ura
tio
n (
log) Waterfall
Waterfall
Agile
AgileWaterfall
w OO
Acknowledgements
Copyright © 2015 by Fred George. All rights reserved. 41
•Neil Hutchinson – Founder of Forward
• Adopting a “Fail Fast” culture
•Carl Gaywood
• Former programmer who wanted to Go Faster
•Paul Ingles and Mike Jones
• Implementers of “Experimentation drives innovation”
More Information…
•Google:
• MicroService Architecture for videos
• MicroXchg 2015 conference
• Programmer Anarchy for managerless teams
• Docker for latest container deployment
Copyright © 2015 by Fred George. All rights reserved. 42
Go Faster:Tech, Process, & Organization
Fred George
@fgeorge52
Copyright © 2015 by Fred George. All rights reserved. 43