SlideShare a Scribd company logo
1 of 22
Download to read offline
The Best Way to Kill Your Project
Galina Kostetskaya!
Engineering Manager!
14/08/2014
Today’s agenda
• Technical debt!
• Tests!
• Squeeze the juice!
• Crappy code!
• 4 easy steps for PMs!
• How to understand, that we are in a
trouble!
• What PM can do about all of that
stuff!
• Q&A
2© Copyright Innovecs 2012
3© Copyright Innovecs 2012
It always starts in a very !
optimistic way….
4© Copyright Innovecs 2012
Technical debt
is a term to describe the cumulative
consequences of corners being cut
throughout the development
process.
5© Copyright Innovecs 2012
Technical debt
6© Copyright Innovecs 2012
They	
  are	
  so	
  serious,	
  as	
  they	
  are	
  observing	
  how	
  the	
  tech	
  debt	
  is	
  born.	
  10	
  sec	
  before	
  the	
  push.	
  
Someone	
  just	
  said	
  “Let’s	
  fix	
  it	
  after	
  the	
  demo”.
7© Copyright Innovecs 2012
Tests
Your project is like a rocket – you are
moving so fast, that you have no
time for unit tests.
8© Copyright Innovecs 2012
Squeeze the juice
•Short-term speed (Sprint) !
•Long-term speed (Marathon)
you can't have both
9© Copyright Innovecs 2012
Squeeze the juice
10© Copyright Innovecs 2012
Crappy code!
11© Copyright Innovecs 2012
CRAPPY CODE!
rescue kit for PMs (in 4 steps)
12© Copyright Innovecs 2012
Step 1. Identify the problem.
If you hear that the code is crap
while drinking coffee at the
kitchen or passing by the
developer’s table – it’s a bit late.
13© Copyright Innovecs 2012
Step 2. Identify the reason.
Crappy code exists because
developers created it.
14© Copyright Innovecs 2012
Step 3: Act
STOP WRITING JUNK CODE.!
Just stop doing it.!
15© Copyright Innovecs 2012
What if you don’t
16© Copyright Innovecs 2012
What can help
!
• Keep your test’s green. !
• Definition of done.!
• You inherited crappy code from
your descendants: It is not
possible to “overwrite
everything” as your team
advices you. Just start with
reducing the tech debt.
17© Copyright Innovecs 2012
What if you do
18© Copyright Innovecs 2012
Step 4: Everything is ok now? !
It’s time to monitor)
!
• Add the subcolumn “Tech
debt” to your board. !
• Check the “Code health”
rate during the daily
meeting/retrospective.
19© Copyright Innovecs 2012
How to understand, that we !
are in a trouble
•You don’t produce any tech debt.!
•The bugs don’t stop. !
•Your code has too many // @todo: come
back and fix!
•You have no tests.!
•Developers don’t perform refactoring.!
•Velocity is going down.!
•You have a lot of “places” everyone is
scared to touch as they “just work”
20© Copyright Innovecs 2012
What PM can do
•Do not ask your client’s if they need
unit tests. If they need refactoring. You
just do that.!
•Set the process. Just set it, no mess or
“will do it later’ aloud.!
•Make your tech dept visible. !
•Share the code. !
•Perform code reviews.
21© Copyright Innovecs 2012
Thank you!!
!
Galina Kostetskaya!
!
Engineering Manager!
!

More Related Content

What's hot

One trunk one pipeline one truth
One trunk one pipeline one truthOne trunk one pipeline one truth
One trunk one pipeline one truthPaul Boocock
 
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?TechWell
 
Why change code that works - On Technical Debt and Refactoring
Why change code that works - On Technical Debt and RefactoringWhy change code that works - On Technical Debt and Refactoring
Why change code that works - On Technical Debt and RefactoringCarsten Windler
 
Top 15 reasons to choose qa testing as career
Top 15 reasons to choose qa testing as career Top 15 reasons to choose qa testing as career
Top 15 reasons to choose qa testing as career JanBask Training
 
Software testing presentation
Software testing presentationSoftware testing presentation
Software testing presentationNikolas Vourlakis
 
Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...
Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...
Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...Steve Lange
 
WhoIsKenDeLong
WhoIsKenDeLongWhoIsKenDeLong
WhoIsKenDeLongKen DeLong
 
The Pothole of Automating Too Much
The Pothole of Automating Too MuchThe Pothole of Automating Too Much
The Pothole of Automating Too MuchTechWell
 
The 7 Sins of Software Engineers in HEP
The 7 Sins of Software Engineers in HEPThe 7 Sins of Software Engineers in HEP
The 7 Sins of Software Engineers in HEPIoannis Baltopoulos
 
Performance Warrior Tales: Cloud Load Testing the Retail Giants
Performance Warrior Tales: Cloud Load Testing the Retail Giants Performance Warrior Tales: Cloud Load Testing the Retail Giants
Performance Warrior Tales: Cloud Load Testing the Retail Giants SOASTA
 
13 things your QA team wants you to know
13 things your QA team wants you to know13 things your QA team wants you to know
13 things your QA team wants you to knowSimon Papineau
 
Try: Fail, Try: Succeed by Tim Grant
Try: Fail, Try: Succeed by Tim GrantTry: Fail, Try: Succeed by Tim Grant
Try: Fail, Try: Succeed by Tim GrantQA or the Highway
 
Test Driven Development by Sameer Arora
Test Driven Development by Sameer AroraTest Driven Development by Sameer Arora
Test Driven Development by Sameer AroraXebia IT Architects
 
Bringing Quality Design Systems to Life with Storybook & Applitools
Bringing Quality Design Systems to Life with Storybook & ApplitoolsBringing Quality Design Systems to Life with Storybook & Applitools
Bringing Quality Design Systems to Life with Storybook & ApplitoolsApplitools
 
4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...
4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...
4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...PROIDEA
 
Product Vs Craft
Product Vs CraftProduct Vs Craft
Product Vs CraftMagenTys
 

What's hot (17)

One trunk one pipeline one truth
One trunk one pipeline one truthOne trunk one pipeline one truth
One trunk one pipeline one truth
 
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
 
Why change code that works - On Technical Debt and Refactoring
Why change code that works - On Technical Debt and RefactoringWhy change code that works - On Technical Debt and Refactoring
Why change code that works - On Technical Debt and Refactoring
 
Top 15 reasons to choose qa testing as career
Top 15 reasons to choose qa testing as career Top 15 reasons to choose qa testing as career
Top 15 reasons to choose qa testing as career
 
Software testing presentation
Software testing presentationSoftware testing presentation
Software testing presentation
 
Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...
Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...
Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...
 
WhoIsKenDeLong
WhoIsKenDeLongWhoIsKenDeLong
WhoIsKenDeLong
 
The Pothole of Automating Too Much
The Pothole of Automating Too MuchThe Pothole of Automating Too Much
The Pothole of Automating Too Much
 
The 7 Sins of Software Engineers in HEP
The 7 Sins of Software Engineers in HEPThe 7 Sins of Software Engineers in HEP
The 7 Sins of Software Engineers in HEP
 
Performance Warrior Tales: Cloud Load Testing the Retail Giants
Performance Warrior Tales: Cloud Load Testing the Retail Giants Performance Warrior Tales: Cloud Load Testing the Retail Giants
Performance Warrior Tales: Cloud Load Testing the Retail Giants
 
13 things your QA team wants you to know
13 things your QA team wants you to know13 things your QA team wants you to know
13 things your QA team wants you to know
 
Try: Fail, Try: Succeed by Tim Grant
Try: Fail, Try: Succeed by Tim GrantTry: Fail, Try: Succeed by Tim Grant
Try: Fail, Try: Succeed by Tim Grant
 
Test Driven Development by Sameer Arora
Test Driven Development by Sameer AroraTest Driven Development by Sameer Arora
Test Driven Development by Sameer Arora
 
Bringing Quality Design Systems to Life with Storybook & Applitools
Bringing Quality Design Systems to Life with Storybook & ApplitoolsBringing Quality Design Systems to Life with Storybook & Applitools
Bringing Quality Design Systems to Life with Storybook & Applitools
 
4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...
4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...
4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...
 
ATDD with SpecFlow
ATDD with SpecFlowATDD with SpecFlow
ATDD with SpecFlow
 
Product Vs Craft
Product Vs CraftProduct Vs Craft
Product Vs Craft
 

Viewers also liked

Discovering story points
Discovering story pointsDiscovering story points
Discovering story pointsNadia Zemskova
 
Motivation, company phylosophy and how to squeeze the juice
Motivation, company phylosophy and how to squeeze the juiceMotivation, company phylosophy and how to squeeze the juice
Motivation, company phylosophy and how to squeeze the juiceKostetska Galyna
 
Agile and fixed price Drupal projects
Agile and fixed price Drupal projectsAgile and fixed price Drupal projects
Agile and fixed price Drupal projectsManuel Pistner
 
Play, Games and Gamification TPMA
Play, Games and Gamification TPMAPlay, Games and Gamification TPMA
Play, Games and Gamification TPMAMichael Sahota
 
Agile adoption survival guide - working with culture
Agile adoption survival guide - working with cultureAgile adoption survival guide - working with culture
Agile adoption survival guide - working with cultureMichael Sahota
 
Customer development approach
Customer development approachCustomer development approach
Customer development approachManik Choudhary
 
Agile Software Development and the FDA
Agile Software Development and the FDAAgile Software Development and the FDA
Agile Software Development and the FDABernhard Kappe
 
Tapped's scenario map
Tapped's scenario mapTapped's scenario map
Tapped's scenario mapStanborough
 
UX – A Way of Thinking, Lessons from the Real World
UX – A Way of Thinking, Lessons from the Real WorldUX – A Way of Thinking, Lessons from the Real World
UX – A Way of Thinking, Lessons from the Real WorldIntelliware Development Inc.
 
Innovation Games at Product Camp 2011
Innovation Games at Product Camp 2011Innovation Games at Product Camp 2011
Innovation Games at Product Camp 2011Michael Sahota
 
Fun in IT (Lightning talk)
Fun in IT (Lightning talk)Fun in IT (Lightning talk)
Fun in IT (Lightning talk)Nadia Zemskova
 
The Magic and Science of Teams
The Magic and Science of TeamsThe Magic and Science of Teams
The Magic and Science of TeamsMark Levison, CST
 

Viewers also liked (20)

Discovering story points
Discovering story pointsDiscovering story points
Discovering story points
 
School 2 work
School 2 workSchool 2 work
School 2 work
 
Motivation, company phylosophy and how to squeeze the juice
Motivation, company phylosophy and how to squeeze the juiceMotivation, company phylosophy and how to squeeze the juice
Motivation, company phylosophy and how to squeeze the juice
 
Mazdak Abtin Project Size
Mazdak Abtin Project SizeMazdak Abtin Project Size
Mazdak Abtin Project Size
 
LINQ
LINQLINQ
LINQ
 
Agile and fixed price Drupal projects
Agile and fixed price Drupal projectsAgile and fixed price Drupal projects
Agile and fixed price Drupal projects
 
Play, Games and Gamification TPMA
Play, Games and Gamification TPMAPlay, Games and Gamification TPMA
Play, Games and Gamification TPMA
 
Iteration Planning Guide
Iteration Planning GuideIteration Planning Guide
Iteration Planning Guide
 
Decompiling Agile
Decompiling AgileDecompiling Agile
Decompiling Agile
 
Mazdak Abtin Industries
Mazdak Abtin IndustriesMazdak Abtin Industries
Mazdak Abtin Industries
 
Agile adoption survival guide - working with culture
Agile adoption survival guide - working with cultureAgile adoption survival guide - working with culture
Agile adoption survival guide - working with culture
 
Customer development approach
Customer development approachCustomer development approach
Customer development approach
 
Information radiators
Information radiatorsInformation radiators
Information radiators
 
Agile Software Development and the FDA
Agile Software Development and the FDAAgile Software Development and the FDA
Agile Software Development and the FDA
 
Tapped's scenario map
Tapped's scenario mapTapped's scenario map
Tapped's scenario map
 
Module 06: Maps and Flows
Module 06: Maps and FlowsModule 06: Maps and Flows
Module 06: Maps and Flows
 
UX – A Way of Thinking, Lessons from the Real World
UX – A Way of Thinking, Lessons from the Real WorldUX – A Way of Thinking, Lessons from the Real World
UX – A Way of Thinking, Lessons from the Real World
 
Innovation Games at Product Camp 2011
Innovation Games at Product Camp 2011Innovation Games at Product Camp 2011
Innovation Games at Product Camp 2011
 
Fun in IT (Lightning talk)
Fun in IT (Lightning talk)Fun in IT (Lightning talk)
Fun in IT (Lightning talk)
 
The Magic and Science of Teams
The Magic and Science of TeamsThe Magic and Science of Teams
The Magic and Science of Teams
 

Similar to Best way to kill your project

IT Governance and Compliance in an Agile World
IT Governance and Compliance in an Agile WorldIT Governance and Compliance in an Agile World
IT Governance and Compliance in an Agile WorldTechWell
 
How to justify technical debt mitigations in Software Engineering
How to justify technical debt mitigations in Software EngineeringHow to justify technical debt mitigations in Software Engineering
How to justify technical debt mitigations in Software EngineeringAndré Agostinho
 
6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservices6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservicesDynatrace
 
Pay Now or Pay More Every Day: Reduce Technical Debt Now!
Pay Now or Pay More Every Day: Reduce Technical Debt Now!Pay Now or Pay More Every Day: Reduce Technical Debt Now!
Pay Now or Pay More Every Day: Reduce Technical Debt Now!TechWell
 
IT Project Management by Todd Shyres.
IT Project Management by Todd Shyres.IT Project Management by Todd Shyres.
IT Project Management by Todd Shyres.Todd Shyres, MBA, PMP
 
Managing technical debt
Managing technical debtManaging technical debt
Managing technical debtFadi Stephan
 
DevSecCon Boston 2018: Technical debt - why I love it by Mike Bursell
DevSecCon Boston 2018: Technical debt - why I love it by Mike BursellDevSecCon Boston 2018: Technical debt - why I love it by Mike Bursell
DevSecCon Boston 2018: Technical debt - why I love it by Mike BursellDevSecCon
 
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.02014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0Joakim Lindbom
 
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...C24 Technologies
 
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of History
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of HistoryFuel Good 2018: Upgrades Made Easy: The Canadian Museum of History
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of HistorySparkrock
 
User Experience for WordPress Platforms
User Experience for WordPress PlatformsUser Experience for WordPress Platforms
User Experience for WordPress PlatformsCody Landefeld
 
Tales from the Platform Trade
Tales from the Platform TradeTales from the Platform Trade
Tales from the Platform TradeWilliam Grosso
 
Flusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous DeliveryFlusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous DeliveryJoost van der Griendt
 
The hardcore stuff i hack, experiences from past VAPT assignments
The hardcore stuff i hack, experiences from past VAPT assignmentsThe hardcore stuff i hack, experiences from past VAPT assignments
The hardcore stuff i hack, experiences from past VAPT assignmentsn|u - The Open Security Community
 
Technical debt a Business Perspective
Technical debt a Business PerspectiveTechnical debt a Business Perspective
Technical debt a Business PerspectiveMichael Vax
 
“The Digital Oilfield” : Using IoT to reduce costs in an era of decreasing oi...
“The Digital Oilfield” : Using IoT to reduce costs in an era of decreasing oi...“The Digital Oilfield” : Using IoT to reduce costs in an era of decreasing oi...
“The Digital Oilfield” : Using IoT to reduce costs in an era of decreasing oi...Karthikeyan Rajamanickam
 

Similar to Best way to kill your project (20)

Crafting the product
Crafting the productCrafting the product
Crafting the product
 
IT Governance and Compliance in an Agile World
IT Governance and Compliance in an Agile WorldIT Governance and Compliance in an Agile World
IT Governance and Compliance in an Agile World
 
How to justify technical debt mitigations in Software Engineering
How to justify technical debt mitigations in Software EngineeringHow to justify technical debt mitigations in Software Engineering
How to justify technical debt mitigations in Software Engineering
 
6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservices6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservices
 
Pay Now or Pay More Every Day: Reduce Technical Debt Now!
Pay Now or Pay More Every Day: Reduce Technical Debt Now!Pay Now or Pay More Every Day: Reduce Technical Debt Now!
Pay Now or Pay More Every Day: Reduce Technical Debt Now!
 
IT Project Management by Todd Shyres.
IT Project Management by Todd Shyres.IT Project Management by Todd Shyres.
IT Project Management by Todd Shyres.
 
Managing technical debt
Managing technical debtManaging technical debt
Managing technical debt
 
DevSecCon Boston 2018: Technical debt - why I love it by Mike Bursell
DevSecCon Boston 2018: Technical debt - why I love it by Mike BursellDevSecCon Boston 2018: Technical debt - why I love it by Mike Bursell
DevSecCon Boston 2018: Technical debt - why I love it by Mike Bursell
 
Angelique henry performance non regression
Angelique henry   performance non regressionAngelique henry   performance non regression
Angelique henry performance non regression
 
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.02014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
 
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...
 
Automation and Technical Debt
Automation and Technical DebtAutomation and Technical Debt
Automation and Technical Debt
 
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of History
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of HistoryFuel Good 2018: Upgrades Made Easy: The Canadian Museum of History
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of History
 
User Experience for WordPress Platforms
User Experience for WordPress PlatformsUser Experience for WordPress Platforms
User Experience for WordPress Platforms
 
Tales from the Platform Trade
Tales from the Platform TradeTales from the Platform Trade
Tales from the Platform Trade
 
Flusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous DeliveryFlusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous Delivery
 
The hardcore stuff i hack, experiences from past VAPT assignments
The hardcore stuff i hack, experiences from past VAPT assignmentsThe hardcore stuff i hack, experiences from past VAPT assignments
The hardcore stuff i hack, experiences from past VAPT assignments
 
Technical debt a Business Perspective
Technical debt a Business PerspectiveTechnical debt a Business Perspective
Technical debt a Business Perspective
 
“The Digital Oilfield” : Using IoT to reduce costs in an era of decreasing oi...
“The Digital Oilfield” : Using IoT to reduce costs in an era of decreasing oi...“The Digital Oilfield” : Using IoT to reduce costs in an era of decreasing oi...
“The Digital Oilfield” : Using IoT to reduce costs in an era of decreasing oi...
 
Better Do What They Told Ya
Better Do What They Told YaBetter Do What They Told Ya
Better Do What They Told Ya
 

More from Kostetska Galyna

Agile in 1,5 hours : brief introduction
Agile in 1,5 hours : brief introductionAgile in 1,5 hours : brief introduction
Agile in 1,5 hours : brief introductionKostetska Galyna
 
Scrum simulation with Lego, 2013
Scrum simulation with Lego, 2013 Scrum simulation with Lego, 2013
Scrum simulation with Lego, 2013 Kostetska Galyna
 
Great agile Teams, Ikra 2013
Great agile Teams, Ikra 2013Great agile Teams, Ikra 2013
Great agile Teams, Ikra 2013Kostetska Galyna
 
Project management for dummies, Ikra 2013
Project management for dummies, Ikra 2013Project management for dummies, Ikra 2013
Project management for dummies, Ikra 2013Kostetska Galyna
 

More from Kostetska Galyna (6)

My 2012 Funny CV
My 2012 Funny CVMy 2012 Funny CV
My 2012 Funny CV
 
Scrum basics
Scrum basics Scrum basics
Scrum basics
 
Agile in 1,5 hours : brief introduction
Agile in 1,5 hours : brief introductionAgile in 1,5 hours : brief introduction
Agile in 1,5 hours : brief introduction
 
Scrum simulation with Lego, 2013
Scrum simulation with Lego, 2013 Scrum simulation with Lego, 2013
Scrum simulation with Lego, 2013
 
Great agile Teams, Ikra 2013
Great agile Teams, Ikra 2013Great agile Teams, Ikra 2013
Great agile Teams, Ikra 2013
 
Project management for dummies, Ikra 2013
Project management for dummies, Ikra 2013Project management for dummies, Ikra 2013
Project management for dummies, Ikra 2013
 

Recently uploaded

Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningVitsRangannavar
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 

Recently uploaded (20)

Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learning
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 

Best way to kill your project

  • 1. The Best Way to Kill Your Project Galina Kostetskaya! Engineering Manager! 14/08/2014
  • 2. Today’s agenda • Technical debt! • Tests! • Squeeze the juice! • Crappy code! • 4 easy steps for PMs! • How to understand, that we are in a trouble! • What PM can do about all of that stuff! • Q&A 2© Copyright Innovecs 2012
  • 3. 3© Copyright Innovecs 2012 It always starts in a very ! optimistic way….
  • 4. 4© Copyright Innovecs 2012 Technical debt is a term to describe the cumulative consequences of corners being cut throughout the development process.
  • 5. 5© Copyright Innovecs 2012 Technical debt
  • 6. 6© Copyright Innovecs 2012 They  are  so  serious,  as  they  are  observing  how  the  tech  debt  is  born.  10  sec  before  the  push.   Someone  just  said  “Let’s  fix  it  after  the  demo”.
  • 7. 7© Copyright Innovecs 2012 Tests Your project is like a rocket – you are moving so fast, that you have no time for unit tests.
  • 8. 8© Copyright Innovecs 2012 Squeeze the juice •Short-term speed (Sprint) ! •Long-term speed (Marathon) you can't have both
  • 9. 9© Copyright Innovecs 2012 Squeeze the juice
  • 10. 10© Copyright Innovecs 2012 Crappy code!
  • 11. 11© Copyright Innovecs 2012 CRAPPY CODE! rescue kit for PMs (in 4 steps)
  • 12. 12© Copyright Innovecs 2012 Step 1. Identify the problem. If you hear that the code is crap while drinking coffee at the kitchen or passing by the developer’s table – it’s a bit late.
  • 13. 13© Copyright Innovecs 2012 Step 2. Identify the reason. Crappy code exists because developers created it.
  • 14. 14© Copyright Innovecs 2012 Step 3: Act STOP WRITING JUNK CODE.! Just stop doing it.!
  • 15. 15© Copyright Innovecs 2012 What if you don’t
  • 16. 16© Copyright Innovecs 2012 What can help ! • Keep your test’s green. ! • Definition of done.! • You inherited crappy code from your descendants: It is not possible to “overwrite everything” as your team advices you. Just start with reducing the tech debt.
  • 17. 17© Copyright Innovecs 2012 What if you do
  • 18. 18© Copyright Innovecs 2012 Step 4: Everything is ok now? ! It’s time to monitor) ! • Add the subcolumn “Tech debt” to your board. ! • Check the “Code health” rate during the daily meeting/retrospective.
  • 19. 19© Copyright Innovecs 2012 How to understand, that we ! are in a trouble •You don’t produce any tech debt.! •The bugs don’t stop. ! •Your code has too many // @todo: come back and fix! •You have no tests.! •Developers don’t perform refactoring.! •Velocity is going down.! •You have a lot of “places” everyone is scared to touch as they “just work”
  • 20. 20© Copyright Innovecs 2012 What PM can do •Do not ask your client’s if they need unit tests. If they need refactoring. You just do that.! •Set the process. Just set it, no mess or “will do it later’ aloud.! •Make your tech dept visible. ! •Share the code. ! •Perform code reviews.