roman bugaev - engineering driven culture

21
ENGINEERING DRIVEN CULTURE Roman Bugaev

Upload: agilelab

Post on 18-Jan-2017

88 views

Category:

Presentations & Public Speaking


3 download

TRANSCRIPT

Page 1: Roman Bugaev - Engineering driven culture

ENGINEERING DRIVEN CULTURERoman Bugaev

Page 2: Roman Bugaev - Engineering driven culture

CULTURE

Page 3: Roman Bugaev - Engineering driven culture

CULTURE

Page 4: Roman Bugaev - Engineering driven culture

CULTURE

Page 5: Roman Bugaev - Engineering driven culture

INTERESTING FACTS

Page 6: Roman Bugaev - Engineering driven culture

INTERESTING FACTS

Page 7: Roman Bugaev - Engineering driven culture

INTERESTING FACTS

Unpredictable environment: 3X load in 2 months

Page 8: Roman Bugaev - Engineering driven culture

PROCESS

Page 9: Roman Bugaev - Engineering driven culture

AGILE - CONTINUOUS IMPROVEMENTS

Retrospectives / standups Up to 30 releases to prod per day (CD)Fast feedback loop / Fail fast“Feel the pain" sessionsWeek in support for onboarding On duty scheduleGet involved

Page 10: Roman Bugaev - Engineering driven culture

AGILE VS ENGINEERING

Deal with “tech debt”Limit yourself (e.g. DB freeze)20% of sprint dedicated to technical backlogMeasure (code quality, bugs, time to market)

Avoid “boiler rooms”Measure twice, cut once (sometimes)Agile architecture

Page 11: Roman Bugaev - Engineering driven culture

ESTIMATES

2 weeks sprint - 26 data points for a year - insufficient data to draw conclusions from“Units of time”Commitment vs. Forecast

Commitment to be professional/achieve goals/incrementForecast for deliverables

Page 12: Roman Bugaev - Engineering driven culture

CONCLUSION

Only add processes that reduce significant actual risk

Ship it when it’s ready, not before, not after.Let engineers do their work, think things through and write 15 lines of code instead of 150. Use code reviews, testing, etc. The cost of shipping the wrong thing is much higher than the cost of slipping arbitrary deadlines to ship the right thing.

Page 13: Roman Bugaev - Engineering driven culture

DEVOPS

Page 14: Roman Bugaev - Engineering driven culture

DEVOPS

Dev – add new featureOps – keep system stable, fast and available

DevOps – combine both

Page 15: Roman Bugaev - Engineering driven culture

DEVOPS

One teamTestsMetrics & monitoringAutomate everything

Infrastructure as a codeTests Deployment

AlertingAtomic increments

Page 16: Roman Bugaev - Engineering driven culture

ARCHITECTURE

Page 17: Roman Bugaev - Engineering driven culture

ARCHITECTURE

Cross functional teamsOrganized around capabilities Nothing shared

Separate repo, DB, independent deployment

Design for failureAsynchronous design

Evolutionary design / Postpone decisions Polyglot persistence & environment

Page 18: Roman Bugaev - Engineering driven culture

TROUBLE SHOOTING / QA

Page 19: Roman Bugaev - Engineering driven culture

RELEASES

Blue/green deployment & Feature toggling Atomic updateMetrics/Logs/AlertsProduction tests

Page 20: Roman Bugaev - Engineering driven culture

SUMMARY

Agile on steroids AgileDevOps Engineering

Page 21: Roman Bugaev - Engineering driven culture

@adforminsider