SlideShare a Scribd company logo
1 of 25
Using technical debt as an asset
Giving the market what it wants now without losing your pants later
Jesper Lindholt, Livatek – jlin@livatek.com
Introduction
Technical debt
• What is it and where is it from?
• How to avoid it
• Fixing it when you got it
• Using it as an asset (!)
source: www.defenselink.mil
Doing the right thing
Business
point-of-view
Doing the thing right
Tech
point-of-view
• What the market wants
• What we promised our users
• What we promised our investors
• What will bring fantastic value to our clients
• Right architecture
• Test coverage
• Modular
• Documentation
Where do things go wrong?
Too much
ambition
• Features
• Product
roll-outs
• Dead-lines
without
enough
resources
• Time
• Budget
• Skills
• Tools
leads to
technical
debt
• Corners cut
• Low quality
work
"Wet shorts" by philosophygeek
Increased
cost of change
Increased
software risk
Who wants to work with
stale and stinky code?
Increased
organizational risk
(incl. chief scientist)
Cowboy code that is
harder to maintain and
change
Lack of architecture
(beware creeping bug)
DEBT INTEREST %
Doing the
thing wrong
Technical debt => Cost of change
Cost of change
Time
Simple,
test-driven
designs
Rapid coding
without testing
Avoiding technical debt
Simple!
Do the Thing Right!
Levers and handles
Languages,
tools and
infrastructure
Process,
culture and
habits
Development
discipline
Software
architecture
Levers and handles
Languages,
tools and
infrastructure
Process,
culture and
habits
Development
discipline
Software
architecture
• Choosing right language
• Shared infrastructure
• Style checking tools
• Code conventions
• Demand unit-test coverage
• Strong definition of “Done”
• Service Oriented
Architecture
• Modularity
• Agree to having a process
• Team operating agreement
• Learning culture
• Test-driven development
BUT - you always do have a choice
Let your
customers down
Work harder Be deliberate
Focus your limited
resources in a way
that best prepares
you for the future
Work longer hours
Forget test coverage
Throw it all out the
window
Reduce internal quality
Reduce accountability
Say “no”
Be Deliberate
QUESTION TO SELF
Are we going to
be around longer
than short-term? YES
FUNDAMENTAL
Later – you will grow
- your product
- your team
That means that you will….
• decide on purpose where to cut
corners
• document corners cut in your task
management system
• use systems to support
communications and limit confusion
NOT, that you will
• have no time for architecture
• ignore the iron triangle of (function,
time, cost) and accept unrealistic
dead lines
We have it…..
Dealing with it
Dealing with technical debt
• Replace the whole thing –
debt repayment
• Incremental refactoring –
paying back in installments
• Live with it, pay the interest
And bear the opportunity cost
Gregory F. Maxwell <gmaxwell@gmail.com>
Technical Debt
As an asset
The exception to prove the rule
Cost of change
Time
Simple,
test-driven
designs
Rapid coding
without testing
INTERESTING!
Can we achieve this??
Cost of change
Time
Hacking it
• Throw all some rules out the window
• Do it in bursts – and then clean up
• Obvious advantage
• Leap forward for product functionality
• Less-obvious advantages
• Team bonding
• Team gets to find its limits Pay-back time!
Forget it, and you’ll be paying interest
- and interest of interest
Debt
My own pitch
Livatek
Team manager
Technical debt - summary
• Main source: when busy doing the right thing (needed in market) =>
not enough time/money to do the thing right
• Problems: cowboy code, lack of architecture, no test coverage
• Issues: cost of maintenance, cost of change, creeping bugs,
software risk, organizational risk
• Avoid with: modular SOA architecture, shared values in team,
unit-test coverage, test-driven development
• Accept it: only deliberately and when documenting
• Do not just: work harder and longer – but focus
• You have it: start all over, refactor module by module, or live with it
• As asset: code wildly for a week – and clean up for a week
Contact
Livatek GmbH
Hamburg
Germany
+49 40 60946277
de@livatek.com
Livatek A/S
Aarhus
Denmark
+45 7734 3090
dk@livatek.com
Jesper Lindholt, CEO
jlin@livatek.com
+380 50 410 8070
+45 3024 8500
@jlindholt / @livatek
linkedin.com/in/jesperlindholt

More Related Content

What's hot

Technical Debt: Sources and Impacts
Technical Debt: Sources and ImpactsTechnical Debt: Sources and Impacts
Technical Debt: Sources and ImpactsAgile Velocity
 
Eric Ries Lean Startup Presentation For Web 2.0 Expo April 1 2009 A Disciplin...
Eric Ries Lean Startup Presentation For Web 2.0 Expo April 1 2009 A Disciplin...Eric Ries Lean Startup Presentation For Web 2.0 Expo April 1 2009 A Disciplin...
Eric Ries Lean Startup Presentation For Web 2.0 Expo April 1 2009 A Disciplin...Eric Ries
 
Technical debt a Business Perspective
Technical debt a Business PerspectiveTechnical debt a Business Perspective
Technical debt a Business PerspectiveMichael Vax
 
Managing CATIA V5 in PDM... Simply for COE Ask The Expert
Managing CATIA V5 in PDM... Simply for COE Ask The ExpertManaging CATIA V5 in PDM... Simply for COE Ask The Expert
Managing CATIA V5 in PDM... Simply for COE Ask The ExpertRazorleaf Corporation
 
ITAM AUS 2017 IBM Blackbelt Licensing Competition
ITAM AUS 2017 IBM Blackbelt Licensing CompetitionITAM AUS 2017 IBM Blackbelt Licensing Competition
ITAM AUS 2017 IBM Blackbelt Licensing CompetitionMartin Thompson
 
Meet up Continuous delivery
Meet up Continuous deliveryMeet up Continuous delivery
Meet up Continuous deliverySamuel RETIERE
 
Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe DevOpsDays Baltimore
 
Get Smart About Technical Debt
Get Smart About Technical DebtGet Smart About Technical Debt
Get Smart About Technical DebtCAST
 
ITAM US 2017 How NASA saved $103m on software licensing
ITAM US 2017 How NASA saved $103m on software licensingITAM US 2017 How NASA saved $103m on software licensing
ITAM US 2017 How NASA saved $103m on software licensingMartin Thompson
 
Bpm at the speed of thought atx waveof_transformation_joy beatty
Bpm at the speed of thought atx waveof_transformation_joy beattyBpm at the speed of thought atx waveof_transformation_joy beatty
Bpm at the speed of thought atx waveof_transformation_joy beattyJoy Beatty
 
Neue zeiten verlangen nach neuen Paradigmen - Bernd Rücker
Neue zeiten verlangen nach neuen Paradigmen - Bernd RückerNeue zeiten verlangen nach neuen Paradigmen - Bernd Rücker
Neue zeiten verlangen nach neuen Paradigmen - Bernd Rückercamunda services GmbH
 
BDW17 London - Abed Ajraou - First Utility - Putting Data Science in your Bus...
BDW17 London - Abed Ajraou - First Utility - Putting Data Science in your Bus...BDW17 London - Abed Ajraou - First Utility - Putting Data Science in your Bus...
BDW17 London - Abed Ajraou - First Utility - Putting Data Science in your Bus...Big Data Week
 
MEMSI June: Product Development and Manufacturing 101
MEMSI June: Product Development and Manufacturing 101MEMSI June: Product Development and Manufacturing 101
MEMSI June: Product Development and Manufacturing 101Elaine Chen
 
MVP as a process. How @LegalTrek incorporated ‪#‎Lean‬ in building their lega...
MVP as a process. How @LegalTrek incorporated ‪#‎Lean‬ in building their lega...MVP as a process. How @LegalTrek incorporated ‪#‎Lean‬ in building their lega...
MVP as a process. How @LegalTrek incorporated ‪#‎Lean‬ in building their lega...Aleksandar Gvozden
 
Introducing theSmart Reviewer by theSmart.io
Introducing theSmart Reviewer by theSmart.ioIntroducing theSmart Reviewer by theSmart.io
Introducing theSmart Reviewer by theSmart.ioMark Evans
 
Factory Tour Debrief
Factory Tour DebriefFactory Tour Debrief
Factory Tour DebriefElaine Chen
 
ITAM US 2017 IBM Licensing Black Belt Challenge
ITAM US 2017 IBM Licensing Black Belt ChallengeITAM US 2017 IBM Licensing Black Belt Challenge
ITAM US 2017 IBM Licensing Black Belt ChallengeMartin Thompson
 

What's hot (19)

Technical Debt: Sources and Impacts
Technical Debt: Sources and ImpactsTechnical Debt: Sources and Impacts
Technical Debt: Sources and Impacts
 
Eric Ries Lean Startup Presentation For Web 2.0 Expo April 1 2009 A Disciplin...
Eric Ries Lean Startup Presentation For Web 2.0 Expo April 1 2009 A Disciplin...Eric Ries Lean Startup Presentation For Web 2.0 Expo April 1 2009 A Disciplin...
Eric Ries Lean Startup Presentation For Web 2.0 Expo April 1 2009 A Disciplin...
 
Technical debt a Business Perspective
Technical debt a Business PerspectiveTechnical debt a Business Perspective
Technical debt a Business Perspective
 
Managing CATIA V5 in PDM... Simply for COE Ask The Expert
Managing CATIA V5 in PDM... Simply for COE Ask The ExpertManaging CATIA V5 in PDM... Simply for COE Ask The Expert
Managing CATIA V5 in PDM... Simply for COE Ask The Expert
 
ITAM AUS 2017 IBM Blackbelt Licensing Competition
ITAM AUS 2017 IBM Blackbelt Licensing CompetitionITAM AUS 2017 IBM Blackbelt Licensing Competition
ITAM AUS 2017 IBM Blackbelt Licensing Competition
 
Meet up Continuous delivery
Meet up Continuous deliveryMeet up Continuous delivery
Meet up Continuous delivery
 
Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe
 
Get Smart About Technical Debt
Get Smart About Technical DebtGet Smart About Technical Debt
Get Smart About Technical Debt
 
ITAM US 2017 How NASA saved $103m on software licensing
ITAM US 2017 How NASA saved $103m on software licensingITAM US 2017 How NASA saved $103m on software licensing
ITAM US 2017 How NASA saved $103m on software licensing
 
Bpm at the speed of thought atx waveof_transformation_joy beatty
Bpm at the speed of thought atx waveof_transformation_joy beattyBpm at the speed of thought atx waveof_transformation_joy beatty
Bpm at the speed of thought atx waveof_transformation_joy beatty
 
Neue zeiten verlangen nach neuen Paradigmen - Bernd Rücker
Neue zeiten verlangen nach neuen Paradigmen - Bernd RückerNeue zeiten verlangen nach neuen Paradigmen - Bernd Rücker
Neue zeiten verlangen nach neuen Paradigmen - Bernd Rücker
 
BDW17 London - Abed Ajraou - First Utility - Putting Data Science in your Bus...
BDW17 London - Abed Ajraou - First Utility - Putting Data Science in your Bus...BDW17 London - Abed Ajraou - First Utility - Putting Data Science in your Bus...
BDW17 London - Abed Ajraou - First Utility - Putting Data Science in your Bus...
 
MEMSI June: Product Development and Manufacturing 101
MEMSI June: Product Development and Manufacturing 101MEMSI June: Product Development and Manufacturing 101
MEMSI June: Product Development and Manufacturing 101
 
MVP as a process. How @LegalTrek incorporated ‪#‎Lean‬ in building their lega...
MVP as a process. How @LegalTrek incorporated ‪#‎Lean‬ in building their lega...MVP as a process. How @LegalTrek incorporated ‪#‎Lean‬ in building their lega...
MVP as a process. How @LegalTrek incorporated ‪#‎Lean‬ in building their lega...
 
Introducing theSmart Reviewer by theSmart.io
Introducing theSmart Reviewer by theSmart.ioIntroducing theSmart Reviewer by theSmart.io
Introducing theSmart Reviewer by theSmart.io
 
Factory Tour Debrief
Factory Tour DebriefFactory Tour Debrief
Factory Tour Debrief
 
ITAM US 2017 IBM Licensing Black Belt Challenge
ITAM US 2017 IBM Licensing Black Belt ChallengeITAM US 2017 IBM Licensing Black Belt Challenge
ITAM US 2017 IBM Licensing Black Belt Challenge
 
FounderBus Tech TAlk
FounderBus Tech TAlkFounderBus Tech TAlk
FounderBus Tech TAlk
 
13 technical debt
13 technical debt13 technical debt
13 technical debt
 

Similar to Using technical debt as an asset without losing your pants

Technical stories v1.2
Technical stories v1.2Technical stories v1.2
Technical stories v1.2Jim Brisson
 
Managing technical debt
Managing technical debtManaging technical debt
Managing technical debtFadi Stephan
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software DevelopmentTathagat Varma
 
Kanban testing
Kanban testingKanban testing
Kanban testingCprime
 
Agile Development – Why requirements matter by Fariz Saracevic
Agile Development – Why requirements matter by Fariz SaracevicAgile Development – Why requirements matter by Fariz Saracevic
Agile Development – Why requirements matter by Fariz SaracevicAgile ME
 
Prashant technical practices-tdd for xebia event
Prashant   technical practices-tdd for xebia eventPrashant   technical practices-tdd for xebia event
Prashant technical practices-tdd for xebia eventXebia India
 
Technical debt strategy
Technical debt strategyTechnical debt strategy
Technical debt strategyMasas Dani
 
ROI at the bug factory - Goldratt & throughput (2004)
ROI at the bug factory - Goldratt & throughput (2004)ROI at the bug factory - Goldratt & throughput (2004)
ROI at the bug factory - Goldratt & throughput (2004)Neil Thompson
 
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
 
How To Manage And Reduce Development Techical Debt
How To Manage And Reduce Development Techical DebtHow To Manage And Reduce Development Techical Debt
How To Manage And Reduce Development Techical DebtAbdul Khan
 
A brief introduction to Enterprise and Industrial UX
A brief introduction to Enterprise and Industrial UXA brief introduction to Enterprise and Industrial UX
A brief introduction to Enterprise and Industrial UXLarry Burks
 
Why Is Managing Software So Hard?
Why Is Managing Software So Hard?Why Is Managing Software So Hard?
Why Is Managing Software So Hard?Michael Lamont
 
Lessons learned in surviving to Technical Debt
Lessons learned in surviving to Technical DebtLessons learned in surviving to Technical Debt
Lessons learned in surviving to Technical DebtPietro Di Bello
 
Why We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile ProjectsWhy We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile ProjectsRebecca Wirfs-Brock
 
Patterns and Antipatterns for Adopting IBM DevOps Tools
Patterns and Antipatterns for Adopting IBM DevOps ToolsPatterns and Antipatterns for Adopting IBM DevOps Tools
Patterns and Antipatterns for Adopting IBM DevOps ToolsStrongback Consulting
 
Software Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a TeamSoftware Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a TeamSoftheme
 
How to hire and keep engineers happy public
How to hire and keep engineers happy publicHow to hire and keep engineers happy public
How to hire and keep engineers happy publicPiaw Na
 

Similar to Using technical debt as an asset without losing your pants (20)

Technical stories v1.2
Technical stories v1.2Technical stories v1.2
Technical stories v1.2
 
Managing technical debt
Managing technical debtManaging technical debt
Managing technical debt
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software Development
 
Kanban testing
Kanban testingKanban testing
Kanban testing
 
Agile Development – Why requirements matter by Fariz Saracevic
Agile Development – Why requirements matter by Fariz SaracevicAgile Development – Why requirements matter by Fariz Saracevic
Agile Development – Why requirements matter by Fariz Saracevic
 
Prashant technical practices-tdd for xebia event
Prashant   technical practices-tdd for xebia eventPrashant   technical practices-tdd for xebia event
Prashant technical practices-tdd for xebia event
 
Technical debt strategy
Technical debt strategyTechnical debt strategy
Technical debt strategy
 
Smart CTO Service
Smart CTO ServiceSmart CTO Service
Smart CTO Service
 
ROI at the bug factory - Goldratt & throughput (2004)
ROI at the bug factory - Goldratt & throughput (2004)ROI at the bug factory - Goldratt & throughput (2004)
ROI at the bug factory - Goldratt & throughput (2004)
 
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
 
How To Manage And Reduce Development Techical Debt
How To Manage And Reduce Development Techical DebtHow To Manage And Reduce Development Techical Debt
How To Manage And Reduce Development Techical Debt
 
Technical Debt.pptx
Technical Debt.pptxTechnical Debt.pptx
Technical Debt.pptx
 
A brief introduction to Enterprise and Industrial UX
A brief introduction to Enterprise and Industrial UXA brief introduction to Enterprise and Industrial UX
A brief introduction to Enterprise and Industrial UX
 
Why Is Managing Software So Hard?
Why Is Managing Software So Hard?Why Is Managing Software So Hard?
Why Is Managing Software So Hard?
 
Lessons learned in surviving to Technical Debt
Lessons learned in surviving to Technical DebtLessons learned in surviving to Technical Debt
Lessons learned in surviving to Technical Debt
 
Why We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile ProjectsWhy We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile Projects
 
Technical Debt
Technical DebtTechnical Debt
Technical Debt
 
Patterns and Antipatterns for Adopting IBM DevOps Tools
Patterns and Antipatterns for Adopting IBM DevOps ToolsPatterns and Antipatterns for Adopting IBM DevOps Tools
Patterns and Antipatterns for Adopting IBM DevOps Tools
 
Software Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a TeamSoftware Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a Team
 
How to hire and keep engineers happy public
How to hire and keep engineers happy publicHow to hire and keep engineers happy public
How to hire and keep engineers happy public
 

Recently uploaded

20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 

Recently uploaded (20)

20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 

Using technical debt as an asset without losing your pants

  • 1. Using technical debt as an asset Giving the market what it wants now without losing your pants later Jesper Lindholt, Livatek – jlin@livatek.com
  • 3. Technical debt • What is it and where is it from? • How to avoid it • Fixing it when you got it • Using it as an asset (!) source: www.defenselink.mil
  • 4. Doing the right thing Business point-of-view Doing the thing right Tech point-of-view • What the market wants • What we promised our users • What we promised our investors • What will bring fantastic value to our clients • Right architecture • Test coverage • Modular • Documentation
  • 5. Where do things go wrong? Too much ambition • Features • Product roll-outs • Dead-lines without enough resources • Time • Budget • Skills • Tools leads to technical debt • Corners cut • Low quality work "Wet shorts" by philosophygeek
  • 6. Increased cost of change Increased software risk Who wants to work with stale and stinky code? Increased organizational risk (incl. chief scientist) Cowboy code that is harder to maintain and change Lack of architecture (beware creeping bug) DEBT INTEREST % Doing the thing wrong
  • 7. Technical debt => Cost of change Cost of change Time Simple, test-driven designs Rapid coding without testing
  • 9. Levers and handles Languages, tools and infrastructure Process, culture and habits Development discipline Software architecture
  • 10. Levers and handles Languages, tools and infrastructure Process, culture and habits Development discipline Software architecture • Choosing right language • Shared infrastructure • Style checking tools • Code conventions • Demand unit-test coverage • Strong definition of “Done” • Service Oriented Architecture • Modularity • Agree to having a process • Team operating agreement • Learning culture • Test-driven development
  • 11.
  • 12. BUT - you always do have a choice Let your customers down Work harder Be deliberate Focus your limited resources in a way that best prepares you for the future Work longer hours Forget test coverage Throw it all out the window Reduce internal quality Reduce accountability Say “no”
  • 14. QUESTION TO SELF Are we going to be around longer than short-term? YES
  • 15. FUNDAMENTAL Later – you will grow - your product - your team
  • 16. That means that you will…. • decide on purpose where to cut corners • document corners cut in your task management system • use systems to support communications and limit confusion NOT, that you will • have no time for architecture • ignore the iron triangle of (function, time, cost) and accept unrealistic dead lines
  • 18. Dealing with technical debt • Replace the whole thing – debt repayment • Incremental refactoring – paying back in installments • Live with it, pay the interest And bear the opportunity cost Gregory F. Maxwell <gmaxwell@gmail.com>
  • 20. The exception to prove the rule Cost of change Time Simple, test-driven designs Rapid coding without testing INTERESTING!
  • 21. Can we achieve this?? Cost of change Time
  • 22. Hacking it • Throw all some rules out the window • Do it in bursts – and then clean up • Obvious advantage • Leap forward for product functionality • Less-obvious advantages • Team bonding • Team gets to find its limits Pay-back time! Forget it, and you’ll be paying interest - and interest of interest Debt
  • 24. Technical debt - summary • Main source: when busy doing the right thing (needed in market) => not enough time/money to do the thing right • Problems: cowboy code, lack of architecture, no test coverage • Issues: cost of maintenance, cost of change, creeping bugs, software risk, organizational risk • Avoid with: modular SOA architecture, shared values in team, unit-test coverage, test-driven development • Accept it: only deliberately and when documenting • Do not just: work harder and longer – but focus • You have it: start all over, refactor module by module, or live with it • As asset: code wildly for a week – and clean up for a week
  • 25. Contact Livatek GmbH Hamburg Germany +49 40 60946277 de@livatek.com Livatek A/S Aarhus Denmark +45 7734 3090 dk@livatek.com Jesper Lindholt, CEO jlin@livatek.com +380 50 410 8070 +45 3024 8500 @jlindholt / @livatek linkedin.com/in/jesperlindholt

Editor's Notes

  1. I am Jesper – founder of Livatek We are a Danish company in Ukraine We help our clients in Western Europe tap into a Ukrainian talent pool for software development. We don’t do outsourcing but facilitate distributed teams with higher flexibility and lower costs. Over the years, my team and I have delivered around ½ million development hours.
  2. What are the symptoms? Where does it come from?
  3. The road to hell is paved with good intentions. Technical debt exists because of wishes to do the right thing. Why do we want to do the right thing – because it IS the right thing to do. Doing the thing right is something different. And there is sometimes a conflict.
  4. But that takes: money, resources, time, skills – whatever it is that we do not have enough of
  5. Looking at the big picture, the overheads of implementing each of these are not great. Developer objections are often of the running next to the bicycle type. We are so busy that we don’t have time to get on the bicycle.
  6. Keep in the back of your head that you are going to scale your product and your team