8 THINGS THAT MAKE CONTINUOUS DELIVERY GO …...2016/05/08  · 8 THINGS THAT MAKE CONTINUOUS...

Post on 21-May-2020

1 views 0 download

transcript

8 THINGS THAT MAKE CONTINUOUS DELIVERYGO NUTS

Eduards Sizovs

@eduardsi

1 LACK OF ORGANISATIONAL ALIGNMENT 

1 LACK OF ORGANISATIONAL ALIGNMENTAKA SHADOW CONTINUOUS DELIVERY

STORY TIME(FINTECH STARTUP, GERMANY)

CONSEQUENCESSLA MISSED - LOST INTEGRATION PARTNER AND ~20K CUSTOMERS

LOST TRUST BETWEEN MANAGEMENT AND IT

LOST TRUST BETWEEN DEV AND OPS

TEAM LEAD FIRED

COMPANY WENT BANKRUPT

CONSEQUENCESSLA MISSED - LOST INTEGRATION PARTNER AND ~20K CUSTOMERS

LOST TRUST BETWEEN MANAGEMENT AND IT

LOST TRUST BETWEEN DEV AND OPS

TEAM LEAD FIRED

COMPANY WENT BANKRUPT

CONSEQUENCESSLA MISSED - LOST INTEGRATION PARTNER AND ~20K CUSTOMERS

LOST TRUST BETWEEN MANAGEMENT AND IT

LOST TRUST BETWEEN DEV AND OPS

TEAM LEAD FIRED

COMPANY WENT BANKRUPT

CONSEQUENCESSLA MISSED - LOST INTEGRATION PARTNER AND ~20K CUSTOMERS

LOST TRUST BETWEEN MANAGEMENT AND IT

LOST TRUST BETWEEN DEV AND OPS

TEAM LEAD FIRED

COMPANY WENT BANKRUPT

CONSEQUENCESSLA MISSED - LOST INTEGRATION PARTNER AND ~20K CUSTOMERS

LOST TRUST BETWEEN MANAGEMENT AND IT

LOST TRUST BETWEEN DEV AND OPS

TEAM LEAD FIRED

COMPANY WENT BANKRUPT

LESSONS LEARNEDSINCE CD IS PRIMARY A HUMAN SYSTEM, ALIGNMENT IS VITAL

SEE THE REASON BEHIND EVERY DENIAL

EMPHATIZE (SPEND A MONTH IN OPS, PAIR-OPS, YBYR)

COMPROMISE, DON'T GO TO THE EXTREME ON THE FIRST JUMP

APPLY BEER-DRIVEN DIPLOMACY

LESSONS LEARNEDSINCE CD IS PRIMARY A HUMAN SYSTEM, ALIGNMENT IS VITAL

SEE THE REASON BEHIND EVERY DENIAL

EMPHATIZE (SPEND A MONTH IN OPS, PAIR-OPS, YBYR)

COMPROMISE, DON'T GO TO THE EXTREME ON THE FIRST JUMP

APPLY BEER-DRIVEN DIPLOMACY

LESSONS LEARNEDSINCE CD IS PRIMARY A HUMAN SYSTEM, ALIGNMENT IS VITAL

SEE THE REASON BEHIND EVERY DENIAL

EMPHATIZE (SPEND A MONTH IN OPS, PAIR-OPS, YBYR)

COMPROMISE, DON'T GO TO THE EXTREME ON THE FIRST JUMP

APPLY BEER-DRIVEN DIPLOMACY

LESSONS LEARNEDSINCE CD IS PRIMARY A HUMAN SYSTEM, ALIGNMENT IS VITAL

SEE THE REASON BEHIND EVERY DENIAL

EMPHATIZE (SPEND A MONTH IN OPS, PAIR-OPS, YBYR)

COMPROMISE, DON'T GO TO THE EXTREME ON THE FIRST JUMP

APPLY BEER-DRIVEN DIPLOMACY

LESSONS LEARNEDSINCE CD IS PRIMARY A HUMAN SYSTEM, ALIGNMENT IS VITAL

SEE THE REASON BEHIND EVERY DENIAL

EMPHATIZE (SPEND A MONTH IN OPS, PAIR-OPS, YBYR)

COMPROMISE, DON'T GO TO THE EXTREME ON THE FIRST JUMP

APPLY BEER-DRIVEN DIPLOMACY

MOVE OPS TO CROSS-FUNCTIONAL TEAM ASYOU DO WITH QA.

HTTPS://DL.DROPBOXUSERCONTENT.COM/U/1018963/ARTICLES/SPOTIFYSCALING.PDF

2 RELYING ON A TIGER TEAM

STORY TIME(FINTECH ENTERPRISE, LATVIA)

LESSONS LEARNEDINVOLVE THOSE AFFECTED BY THE CHANGE IN THE DESIGN OF THE CHANGE.

OVER-UTILIZED "SLAVES" CAN'T DO CD. TIGERS WILL BE HATED.

CD IS A JOURNEY, NOT A MARATHON.

LESSONS LEARNEDINVOLVE THOSE AFFECTED BY THE CHANGE IN THE DESIGN OF THE CHANGE.

OVER-UTILIZED "SLAVES" CAN'T DO CD. TIGERS WILL BE HATED.

CD IS A JOURNEY, NOT A MARATHON.

LESSONS LEARNEDINVOLVE THOSE AFFECTED BY THE CHANGE IN THE DESIGN OF THE CHANGE.

OVER-UTILIZED "SLAVES" CAN'T DO CD. TIGERS WILL BE HATED.

CD IS A JOURNEY, NOT A MARATHON.

3 NEWTON'S LAWS OF SOFTWAREDEVELOPMENT

THE SYSTEM BEING PRODUCED WILL TEND TO HAVE ASTRUCTURE THAT MIRRORS THE STRUCTURE OF THE GROUP

THAT IS PRODUCING IT, WHETHER OR NOT THIS WASINTENDED.

(C) CONWAY'S LAW

YOUR TEAM STRUCTURE WILL OVERRIDE ANY ARCHITECTUREYOU HAVE.

(C) JEFFREY SOLOGOV

TAKEAWAYSCONTINUOUS DELIVERY MAY REQUIRE ORGANISATION TO CHANGE(CONTINUOUSLY, BI-DI)

SOME TEAMS HAVE VERY HIGH PAIN TOLERANCE

PAIN USUALLY LEADS TO PAINKILLERS, INSTEAD OF SOLVING ACTUAL PROBLEMS

RESPECT NEWTON'S LAWS OF SOFTWARE DEVELOPMENT

TAKEAWAYSCONTINUOUS DELIVERY MAY REQUIRE ORGANISATION TO CHANGE(CONTINUOUSLY, BI-DI)

SOME TEAMS HAVE VERY HIGH PAIN TOLERANCE

PAIN USUALLY LEADS TO PAINKILLERS, INSTEAD OF SOLVING ACTUAL PROBLEMS

RESPECT NEWTON'S LAWS OF SOFTWARE DEVELOPMENT

TAKEAWAYSCONTINUOUS DELIVERY MAY REQUIRE ORGANISATION TO CHANGE(CONTINUOUSLY, BI-DI)

SOME TEAMS HAVE VERY HIGH PAIN TOLERANCE

PAIN USUALLY LEADS TO PAINKILLERS, INSTEAD OF SOLVING ACTUAL PROBLEMS

RESPECT NEWTON'S LAWS OF SOFTWARE DEVELOPMENT

TAKEAWAYSCONTINUOUS DELIVERY MAY REQUIRE ORGANISATION TO CHANGE(CONTINUOUSLY, BI-DI)

SOME TEAMS HAVE VERY HIGH PAIN TOLERANCE

PAIN USUALLY LEADS TO PAINKILLERS, INSTEAD OF SOLVING ACTUAL PROBLEMS

RESPECT NEWTON'S LAWS OF SOFTWARE DEVELOPMENT

HOW DOES A PROJECT GET TO BE A YEAR LATE?... ONE DAY AT A TIME

(C) THE MYTHICAL MAN-MONTH

          

4 MISUNDERSTANDING OF FUNDAMENTALPRINCIPLESBECAUSE BLINDLY FOLLOWING PRACTICES IS NOT ENOUGH

DEPLOYMENT PIPELINE IS IN PLACE, BUT IS INCONSISTENT

DATA MIGRATIONS ARE TESTED. WITH 10 ROWS IN SQLITE

100% UNIT/API/WEB TEST COVERAGE VS. LOW MTTR / MMTD

IF SOMETHING IS DIFFICULT OR PAINFUL, DO IT MORE OFTEN (WHAT IF YOU'REDOING WRONG THING OR DOING THINGS WRONG?)

DEPLOYMENT PIPELINE IS IN PLACE, BUT IS INCONSISTENT

DATA MIGRATIONS ARE TESTED. WITH 10 ROWS IN SQLITE

100% UNIT/API/WEB TEST COVERAGE VS. LOW MTTR / MMTD

IF SOMETHING IS DIFFICULT OR PAINFUL, DO IT MORE OFTEN (WHAT IF YOU'REDOING WRONG THING OR DOING THINGS WRONG?)

DEPLOYMENT PIPELINE IS IN PLACE, BUT IS INCONSISTENT

DATA MIGRATIONS ARE TESTED. WITH 10 ROWS IN SQLITE

100% UNIT/API/WEB TEST COVERAGE VS. LOW MTTR / MMTD

IF SOMETHING IS DIFFICULT OR PAINFUL, DO IT MORE OFTEN (WHAT IF YOU'REDOING WRONG THING OR DOING THINGS WRONG?)

DEPLOYMENT PIPELINE IS IN PLACE, BUT IS INCONSISTENT

DATA MIGRATIONS ARE TESTED. WITH 10 ROWS IN SQLITE

100% UNIT/API/WEB TEST COVERAGE VS. LOW MTTR / MMTD

IF SOMETHING IS DIFFICULT OR PAINFUL, DO IT MORE OFTEN (WHAT IF YOU'REDOING WRONG THING OR DOING THINGS WRONG?)

INVITE ME FOR A COFFEE.

5 OPTIMIZING THE WRONG THING

PUSH

PULL INSTEAD.

Team has 32 cards in process (total WIP) anda throughput of 2 cards/day,

Average cycle time = ??? days

TAKEAWAYSOPTIMIZE THE WHOLE (IN EVERY SYSTEM, EXACTLY ONE CONSTRAINTDETERMINES THE SYSTEM’S CAPACITY)

1 COMPLETED FEATURE BEATS 10 IN PROGRESS

QAS! NEVER BE JUST TESTERS. BE TESTING FACILITATORS.

TAKEAWAYSOPTIMIZE THE WHOLE (IN EVERY SYSTEM, EXACTLY ONE CONSTRAINTDETERMINES THE SYSTEM’S CAPACITY)

1 COMPLETED FEATURE BEATS 10 IN PROGRESS

QAS! NEVER BE JUST TESTERS. BE TESTING FACILITATORS.

TAKEAWAYSOPTIMIZE THE WHOLE (IN EVERY SYSTEM, EXACTLY ONE CONSTRAINTDETERMINES THE SYSTEM’S CAPACITY)

1 COMPLETED FEATURE BEATS 10 IN PROGRESS

QAS! NEVER BE JUST TESTERS. BE TESTING FACILITATORS.

6 DELIVERING THE WRONG THING

CONTINUOUS DELIVERY IS A SOFTWARE ENGINEERINGAPPROACH IN WHICH TEAMS KEEP PRODUCING VALUABLE

SOFTWARE IN SHORT CYCLES AND ENSURE THAT THESOFTWARE CAN BE RELIABLY RELEASED AT ANY TIME

(C) WIKIPEDIA

BEFORE DOING CONTINUOUS DELIVERY, FINDOUT WHAT VALUE REALLY MEANS, FOR

WHOM AND HOW TO MINE IT.

VALUE MININGGENCHI GENBUTSU

WORK CLOSELY WITH CUSTOMER SERVICE TEAM

JUST BUILD IT!

BECOME A CUSTOMER

VALUE MININGGENCHI GENBUTSU

WORK CLOSELY WITH CUSTOMER SERVICE TEAM

JUST BUILD IT!

BECOME A CUSTOMER

VALUE MININGGENCHI GENBUTSU

WORK CLOSELY WITH CUSTOMER SERVICE TEAM

JUST BUILD IT!

BECOME A CUSTOMER

VALUE MININGGENCHI GENBUTSU

WORK CLOSELY WITH CUSTOMER SERVICE TEAM

JUST BUILD IT!

BECOME A CUSTOMER

MINIMIZE OUTPUT, MAXIMIZE OUTCOME.

7 TECHNICAL OBSESSION

VERY FAMOUS PRODUCT COMPANY, AUSTRALIA

CHALLENGE: IMPLEMENT AUTO-DEPLOYMENT WITH AUTO-SCALING

STACK: AWS, CAPISTRANO (TOO SIMPLE AND BORING)

IT SURE WOULD BE FUN TO USE...

IT SURE WOULD BE FUN TO USE...

DOCKER

IT SURE WOULD BE FUN TO USE...

DOCKER

BECAUSE...

IT SURE WOULD BE FUN TO USE...

DOCKER

BECAUSE...

EVERYONE IS USING IT

IT SURE WOULD BE FUN TO USE...

DOCKER

BECAUSE...

EVERYONE IS USING IT

AND IT OPENS NEW OPPORTUNITIES

1 MONTH LATER...

HYDRA WAS BORN

HYDRA WAS BORN

IN GREEK MYTHOLOGY, THE LERNAEAN HYDRA WAS ANANCIENT SERPENT-LIKE WATER MONSTER WITH REPTILIANTRAITS. IT POSSESSED MANY HEADS – MORE HEADS THANTHE VASE-PAINTERS COULD PAINT – AND FOR EACH HEADCUT OFF IT GREW TWO MORE.

AFTER 3 MONTHS LONG WAR, TEAM SUFFERED MANY LOSSESAND CAPITULATED. IT TOOK THEM ONE MORE MONTH TO

MOVE BACK TO GOOD, OLD AND SIMPLE STACK AND JUST 2WEEKS TO ACHIEVE THE INITIAL GOAL.

[TRENDY SOLUTIONS] ARE LIKE TEENAGE SEX. EVERYONE ISTALKING ABOUT IT BUT FEW HAVE ACTUALLY DONE IT.

 

[TRENDY SOLUTIONS] ARE LIKE TEENAGE SEX. EVERYONE ISTALKING ABOUT IT BUT FEW HAVE ACTUALLY DONE IT.

EVEN IF EVERYONE IS DOING... DOESN'T MEAN YOU NEED TO

THE LAW OF LEAKY ABSTRACTIONS HURTS

COMPLEXITAX IS THE EXTRA COST THAT YOU PAY FORACCIDENTAL COMPLEXITY INTRODUCED BY A TOOL THAT DOES

MORE THAN YOU NEED.

(C) NEAL FORD

WRITE DOWN EXACTLY WHAT IT IS ABOUT THE CURRENTSTACK THAT MAKES SOLVING THE PROBLEM PROHIBITIVELY

EXPENSIVE AND DIFFICULT.

8 GIVING UP TOO EARLY

I DON'T KEEP UP WITH TESTING!

I DON'T KEEP UP WITH TESTING!

WORKING IN TRUNK IS STUPID AND DANGEROUS IDEA.

I DON'T KEEP UP WITH TESTING!

WORKING IN TRUNK IS STUPID AND DANGEROUS IDEA.

DEPLOYMENT IS SO ANNOYING!

I DON'T KEEP UP WITH TESTING!

WORKING IN TRUNK IS STUPID AND DANGEROUS IDEA.

DEPLOYMENT IS SO ANNOYING!

YOU REALLY WANT ME TO TALK TO SECURITY OFFICER?

CISSP®CERTIFIED INFORMATION SYSTEMS SECURITY PROFESSIONAL

I DON'T KEEP UP WITH TESTING!

WORKING IN TRUNK IS STUPID AND DANGEROUS IDEA.

DEPLOYMENT IS SO ANNOYING!

YOU REALLY WANT ME TO TALK TO SECURITY OFFICER?

IT DOESN'T WORK FOR US!

CONTINUOUS DELIVERY CAUSES SO MANYPROBLEMS!

CONTINUOUS DELIVERY CAUSES REVEALS SOMANY PROBLEMS!

OBSTACLES, OBSTACLES, OBSTACLES...

              

THANK YOU