SlideShare une entreprise Scribd logo
1  sur  35
Télécharger pour lire hors ligne
Dancing for a product
release
lcerveau@nephorider.com
• From general (over) simplistic things to practical
tricks
• Mix of big company and startup experiences
• From inside (direct management) and outside
(consulting)
• Idea of creating one identified entity
• With a name, possibly a brand
• That has multiple releases with different
importances
• And where each release is infused by the
personality of its creator team
Product??
• The team has to deliver it
• The team has to evolve
So that a product lives
Put the Team in place
Years of cultural organization (Europe, East Coast…)
Tester
Dev
Product
Marketing
BOSS
High level glorious thinker
Low level manual stinker
Add the Project Manager as mid level wannabee parasite
Inside
Outside
Impact of the 201X Startup paradigm
• Let’s pretend this does not exist because there
are not enough people in the company and
everyone is multitasked
• Let’s not hide anymore the engineering geek
and make it a selling argument
• Let’s pretend a product/app is a common work
But it takes more to fight your reptilian/cultural/religious brain
Change your mental schema
Tester DevProductMarketing
Dictatorial Boss
Project Manager —> Engineering Project Manager
EPM
Engineering Project Manager
• Duty to make reporting and have a rigorous no lie/
no bullshit attitude
• Must have no favorite partner among the other
core team group
• Must anticipate (and do) the work that other do
not want to do : bug triage, reporting
• Should be number one product knowledge source
Technical or not?
• Decide from the start if you are a technological
company
• If yes make sure that you can show your technical
assets at any time
• If not think if having a technical team is a good
thing
• If not Keep a QA instead of an engineer
About QA
• It always come at last. Whatever you announce.
• QA people are always considered as “not good
enough to be an engineer”
• They are always right
• They must feed the machine (bug), especially to
do what automation can’t
Don’t break the cycle
Especially at day 1
Develop
Release Use/Test
Versioning
• When you repeat yourself change the
version each time. Reporting is essential.
• Build version versus marketing version (iOS
has agvtool - set up your project).
• Version all components, make the version
easy to find
Question most heard in product life cycle. Save
20% of useless talk
Release
• If there is one automated piece in your
system this is the release tool
• The boss should be able to make a build
• Release at regular and fixed intervals. Do
not wait for engineers/designer to complete
their fixes
• EPM should make sure everyone knows
what’s new there. Track history
Distribute (especially mobile)
• Use third party tools for mobile applications
(Testflight)
• Make sure everyone is over-notified of a new
build
• If you worry about who is on your distribution
list, do not put her/him there. Remove people
who do not install
• Use distribution to validate a development. This
is NOT final release
Measure
• A bug system is a metric system. It provides
cold facts.
• If you argue philosophically about what is a
bug (or not), a feature (or not), then stop
doing this job and do cocktails
• Make sure it can integrate at all level of the
workflow (gathering of bugs)
• The best tool for your team is the one people
use
The cycle is for everyone
• Product designer could be ask to provide 10
variations of one design
• Product launch is not done with talk : text to
write, translation to make, videos to prepare
• The EPM must gather all elements
Process or not?
• Process is a mean not a goal but “Without
process there is no product” .
• Do not make process or tools a topic of
discussion inside your company.
• Once a process decision is here, stick to it…
until you change it
• If it is not adopted try again later
Yaka, Fokon happens here
Tech management
Landscape
• Software Engineers are the kings of today
• ….but statistically this can’t be
• And everyone like to think they are in the late
part of the Gaussian curve
me = fXXXing genius
2 books to read
Dreyfus model of skill acquisition
• Developed by two (Stuart and Hubert)
brothers in the 1980
• Model of skill acquisition and mastering
• 5 levels from Novice to Expert: they see the
world in different ways
• Per skill model but….
Dreyfus model
Expert Expert work from intuition
Proficient Proficient practitioners can self correct
Competent Competent can troubleshoot
Advanced
Beginners
Advanced beginners don’t want the big
picture
Novices Novices needs recipes
Build your team
• Decide how to balance the skills and levels:
e.g one architect (expert), one debugger
(expert), 3 monkeys coders (Beginners)
Skills
Level
Some management experience
• Startup does not give you legitimacy. This is a
constant fight.
• Recruiting is the entry point: “Smart and get things
done”
• Applying “best practices” should be done
according to where the team stands in the Dreyfus
model
• No concession should be made on the company
code identity. If it looks good and coherent it
probably is.
Make a set of common knowledge
• Everey engineer should know this
• Some examples
- Stop and start the infrastructure
- Know an HTTP API
- Know the database model
- Measure performance of a system
Technology choice
• There is no technology fundamentally better
than an other. Just different paths to the
same point
Tech A
Tech B
So where are the differences?
• Someone who deadly wants to prove a
technology is better will be better
• Depending on what are the company goal the
technical target goal should be adapted,as
long as you are conscious about it
• In the end the quality will come from coming
back to what has been done. It takes one year
to write a piece of code
The signs to fire an engineer/consultant
• “We need to redo everything”
• “This is not in my code”
• “We should change to this new library”
Product evolution technical impact
• Ways to upgrade between versions. Be
forward and backward compatible
• Have a way to notice that there is
maintenance
• Make a version obsolete with a nice feedback
• Be as much crash prone in your data
technology
From day 1 have in your product
Stay manual
• You can not go so much faster than the
speed of team
• But you must always try to do it
Team learning can be slow process
• Release tool
• Automatic Bug reporting
• Automatic test
• Monitoring and notification of problems
Automation is useful
But sometimes keep it manual
• Automation is good only if someone read the
reports
• Understanding what needs automated need
manual try

Contenu connexe

Tendances

Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05
Guang Ying Yuan
 
Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05
guestaa42e9
 
Agile software development
Agile software developmentAgile software development
Agile software development
Hemangi Talele
 

Tendances (20)

Software Developer Career Unplugged - GeeCon 2013
Software Developer Career Unplugged - GeeCon 2013Software Developer Career Unplugged - GeeCon 2013
Software Developer Career Unplugged - GeeCon 2013
 
A Rapid e-Learning Primer for Technical Communicators
A Rapid e-Learning Primer for Technical CommunicatorsA Rapid e-Learning Primer for Technical Communicators
A Rapid e-Learning Primer for Technical Communicators
 
Spartez Open Day March 13th 2015
Spartez Open Day March 13th 2015Spartez Open Day March 13th 2015
Spartez Open Day March 13th 2015
 
Building Startups and Minimum Viable Products (NDC2013)
Building Startups and Minimum Viable Products (NDC2013)Building Startups and Minimum Viable Products (NDC2013)
Building Startups and Minimum Viable Products (NDC2013)
 
Demystifying pair programming, swarming and mob programming - Shrikant Vashis...
Demystifying pair programming, swarming and mob programming - Shrikant Vashis...Demystifying pair programming, swarming and mob programming - Shrikant Vashis...
Demystifying pair programming, swarming and mob programming - Shrikant Vashis...
 
Confitura 2013 Software Developer Career Unplugged
Confitura 2013 Software Developer Career UnpluggedConfitura 2013 Software Developer Career Unplugged
Confitura 2013 Software Developer Career Unplugged
 
Ten lessons I painfully learnt while moving from software developer
to entrep...
Ten lessons I painfully learnt while moving from software developer
to entrep...Ten lessons I painfully learnt while moving from software developer
to entrep...
Ten lessons I painfully learnt while moving from software developer
to entrep...
 
Ten lessons I painfully learnt while moving from software developer to entrep...
Ten lessons I painfully learnt while moving from software developer to entrep...Ten lessons I painfully learnt while moving from software developer to entrep...
Ten lessons I painfully learnt while moving from software developer to entrep...
 
Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...
Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...
Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...
 
Software Process... the good parts
Software Process... the good partsSoftware Process... the good parts
Software Process... the good parts
 
Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05
 
Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05
 
Lean responsive - Expanded
Lean responsive - ExpandedLean responsive - Expanded
Lean responsive - Expanded
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Why do all my ddd apps look the same - Vienna 2014
Why do all my ddd apps look the same - Vienna 2014Why do all my ddd apps look the same - Vienna 2014
Why do all my ddd apps look the same - Vienna 2014
 
Lecture 25
Lecture 25Lecture 25
Lecture 25
 
Open is as Open does
Open is as Open doesOpen is as Open does
Open is as Open does
 
The Importance of Culture: Building and Sustaining Effective Engineering Org...
The Importance of Culture:  Building and Sustaining Effective Engineering Org...The Importance of Culture:  Building and Sustaining Effective Engineering Org...
The Importance of Culture: Building and Sustaining Effective Engineering Org...
 
L'illusione dell'ortogonalità
L'illusione dell'ortogonalitàL'illusione dell'ortogonalità
L'illusione dell'ortogonalità
 
So i got an Arduino now what
So i got an Arduino now whatSo i got an Arduino now what
So i got an Arduino now what
 

Similaire à Dancing for a product release

Driving application development through behavior driven development
Driving application development through behavior driven developmentDriving application development through behavior driven development
Driving application development through behavior driven development
Einar Ingebrigtsen
 

Similaire à Dancing for a product release (20)

Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Why do mobile projects (still) fail - September 2014 edition
Why do mobile projects (still) fail - September 2014 editionWhy do mobile projects (still) fail - September 2014 edition
Why do mobile projects (still) fail - September 2014 edition
 
DevOps Year One
DevOps Year OneDevOps Year One
DevOps Year One
 
Continuous Delivery Decision points
Continuous Delivery Decision pointsContinuous Delivery Decision points
Continuous Delivery Decision points
 
It's XP, Stupid
It's XP, StupidIt's XP, Stupid
It's XP, Stupid
 
Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...
Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...
Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...
 
Android Developer Skills, Techniques, and Patterns
Android Developer Skills, Techniques, and PatternsAndroid Developer Skills, Techniques, and Patterns
Android Developer Skills, Techniques, and Patterns
 
TDD in Agile
TDD in AgileTDD in Agile
TDD in Agile
 
How to Build Software If You Can't Write Code
How to Build Software If You Can't Write CodeHow to Build Software If You Can't Write Code
How to Build Software If You Can't Write Code
 
GMO'less Software Development Practices
GMO'less Software Development PracticesGMO'less Software Development Practices
GMO'less Software Development Practices
 
Extreme Programming (XP): Revisted
Extreme Programming (XP): RevistedExtreme Programming (XP): Revisted
Extreme Programming (XP): Revisted
 
I Don't Code, Am I No Longer Useful
I Don't Code, Am I No Longer UsefulI Don't Code, Am I No Longer Useful
I Don't Code, Am I No Longer Useful
 
Sharpest tool in the box: Choosing the right authoring tool for your learning...
Sharpest tool in the box: Choosing the right authoring tool for your learning...Sharpest tool in the box: Choosing the right authoring tool for your learning...
Sharpest tool in the box: Choosing the right authoring tool for your learning...
 
05 DIGI CREATIVE people&process
05 DIGI CREATIVE people&process05 DIGI CREATIVE people&process
05 DIGI CREATIVE people&process
 
Internet of Things, TYBSC IT, Semester 5, Unit II
Internet of Things, TYBSC IT, Semester 5, Unit IIInternet of Things, TYBSC IT, Semester 5, Unit II
Internet of Things, TYBSC IT, Semester 5, Unit II
 
TDD - Seriously, try it! (updated '22)
TDD - Seriously, try it! (updated '22)TDD - Seriously, try it! (updated '22)
TDD - Seriously, try it! (updated '22)
 
What a DevOps specialist has to know about static code analysis
What a DevOps specialist has to know about static code analysisWhat a DevOps specialist has to know about static code analysis
What a DevOps specialist has to know about static code analysis
 
Computing DevOp Summit
Computing DevOp SummitComputing DevOp Summit
Computing DevOp Summit
 
Whats my MVP?
Whats my MVP?Whats my MVP?
Whats my MVP?
 
Driving application development through behavior driven development
Driving application development through behavior driven developmentDriving application development through behavior driven development
Driving application development through behavior driven development
 

Dernier

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Dernier (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 

Dancing for a product release

  • 1. Dancing for a product release lcerveau@nephorider.com
  • 2. • From general (over) simplistic things to practical tricks • Mix of big company and startup experiences • From inside (direct management) and outside (consulting)
  • 3. • Idea of creating one identified entity • With a name, possibly a brand • That has multiple releases with different importances • And where each release is infused by the personality of its creator team Product??
  • 4. • The team has to deliver it • The team has to evolve So that a product lives
  • 5. Put the Team in place
  • 6. Years of cultural organization (Europe, East Coast…) Tester Dev Product Marketing BOSS High level glorious thinker Low level manual stinker Add the Project Manager as mid level wannabee parasite Inside Outside
  • 7. Impact of the 201X Startup paradigm • Let’s pretend this does not exist because there are not enough people in the company and everyone is multitasked • Let’s not hide anymore the engineering geek and make it a selling argument • Let’s pretend a product/app is a common work But it takes more to fight your reptilian/cultural/religious brain
  • 8. Change your mental schema Tester DevProductMarketing Dictatorial Boss Project Manager —> Engineering Project Manager EPM
  • 9. Engineering Project Manager • Duty to make reporting and have a rigorous no lie/ no bullshit attitude • Must have no favorite partner among the other core team group • Must anticipate (and do) the work that other do not want to do : bug triage, reporting • Should be number one product knowledge source
  • 10. Technical or not? • Decide from the start if you are a technological company • If yes make sure that you can show your technical assets at any time • If not think if having a technical team is a good thing • If not Keep a QA instead of an engineer
  • 11. About QA • It always come at last. Whatever you announce. • QA people are always considered as “not good enough to be an engineer” • They are always right • They must feed the machine (bug), especially to do what automation can’t
  • 12. Don’t break the cycle Especially at day 1
  • 14. Versioning • When you repeat yourself change the version each time. Reporting is essential. • Build version versus marketing version (iOS has agvtool - set up your project). • Version all components, make the version easy to find Question most heard in product life cycle. Save 20% of useless talk
  • 15. Release • If there is one automated piece in your system this is the release tool • The boss should be able to make a build • Release at regular and fixed intervals. Do not wait for engineers/designer to complete their fixes • EPM should make sure everyone knows what’s new there. Track history
  • 16. Distribute (especially mobile) • Use third party tools for mobile applications (Testflight) • Make sure everyone is over-notified of a new build • If you worry about who is on your distribution list, do not put her/him there. Remove people who do not install • Use distribution to validate a development. This is NOT final release
  • 17. Measure • A bug system is a metric system. It provides cold facts. • If you argue philosophically about what is a bug (or not), a feature (or not), then stop doing this job and do cocktails • Make sure it can integrate at all level of the workflow (gathering of bugs) • The best tool for your team is the one people use
  • 18. The cycle is for everyone • Product designer could be ask to provide 10 variations of one design • Product launch is not done with talk : text to write, translation to make, videos to prepare • The EPM must gather all elements
  • 19. Process or not? • Process is a mean not a goal but “Without process there is no product” . • Do not make process or tools a topic of discussion inside your company. • Once a process decision is here, stick to it… until you change it • If it is not adopted try again later Yaka, Fokon happens here
  • 21. Landscape • Software Engineers are the kings of today • ….but statistically this can’t be • And everyone like to think they are in the late part of the Gaussian curve me = fXXXing genius
  • 22. 2 books to read
  • 23. Dreyfus model of skill acquisition • Developed by two (Stuart and Hubert) brothers in the 1980 • Model of skill acquisition and mastering • 5 levels from Novice to Expert: they see the world in different ways • Per skill model but….
  • 24. Dreyfus model Expert Expert work from intuition Proficient Proficient practitioners can self correct Competent Competent can troubleshoot Advanced Beginners Advanced beginners don’t want the big picture Novices Novices needs recipes
  • 25. Build your team • Decide how to balance the skills and levels: e.g one architect (expert), one debugger (expert), 3 monkeys coders (Beginners) Skills Level
  • 26. Some management experience • Startup does not give you legitimacy. This is a constant fight. • Recruiting is the entry point: “Smart and get things done” • Applying “best practices” should be done according to where the team stands in the Dreyfus model • No concession should be made on the company code identity. If it looks good and coherent it probably is.
  • 27. Make a set of common knowledge • Everey engineer should know this • Some examples - Stop and start the infrastructure - Know an HTTP API - Know the database model - Measure performance of a system
  • 28. Technology choice • There is no technology fundamentally better than an other. Just different paths to the same point Tech A Tech B
  • 29. So where are the differences? • Someone who deadly wants to prove a technology is better will be better • Depending on what are the company goal the technical target goal should be adapted,as long as you are conscious about it • In the end the quality will come from coming back to what has been done. It takes one year to write a piece of code
  • 30. The signs to fire an engineer/consultant • “We need to redo everything” • “This is not in my code” • “We should change to this new library”
  • 31. Product evolution technical impact • Ways to upgrade between versions. Be forward and backward compatible • Have a way to notice that there is maintenance • Make a version obsolete with a nice feedback • Be as much crash prone in your data technology From day 1 have in your product
  • 33. • You can not go so much faster than the speed of team • But you must always try to do it Team learning can be slow process
  • 34. • Release tool • Automatic Bug reporting • Automatic test • Monitoring and notification of problems Automation is useful
  • 35. But sometimes keep it manual • Automation is good only if someone read the reports • Understanding what needs automated need manual try