SlideShare a Scribd company logo
Sérgio Freire
Proud Product Owner
Product Manager
@darktelecom
From Software Developer to
Proud Product Owner:
challenges in Waterfall and
Agile contexts
2
Today’s menu
• Starters
• Background
• Main dishes
• Software Developer
• Team Leader
• Product Owner
• Dessert
• Product Manager
• Coffee & Digestive
• Other topics
• Open discussion
Background
In a nutshell
Who is this guy?
• PT Inovação
• Developer
• Team Leader
• Technology Consultant
(processes, tools, methodology)
• Runtime Revolution
• Team Leader & Senior Developer
• Xpand IT
• Product Owner & Product
Manager
5
Side Projects
Stupid things I’ve done
• Codebits (3rd, 5th and 6th prizes)
• Nagalhães
• Truz Truz – knock knock to
unlock
• remote control Meo with
Chocolate Milk Boxes (no award)
• The Grid (first version)
• The Grid, as a product
(guess the revenue I made?)
6
What makes
me excited
Thinks I like
• Get Things Done (even if I have to
make them J)
• Learning
• Discover
• Try
• Improving
• Being helpful, so others can
improve themselves
• Challenges
• Creativity
• Innovation
Main dishes
Software
Developer
9
Being a Software Developer
§ Waterfall
• You hope the BA did their work
• You do what you’re told (e.g. by the TL)
§ Some few problems
• You make something that is not exactly what customer needs
• Too many hierarchical layers => information turns into noise
• Problem vs Solution space
If I had an hour to solve a problem I’d spend 55 minutes thinking about the problem and 5 minutes
thinking about solutions. - unknown
10
Being a Software Developer
§ Agile
• You iterate and discuss with the team and the PO, on a daily basis
• Customer may act as the Product Owner
§ Some few problems
• Doing things iteratively has some challenges to the architecture design
• It is a complete different mindset than starting with a full spec
• Sometimes it’s hard to get the customer always available as a PO
Team
Leader
12
Team Leader vs Scrum Master
§ Team Leader
• Manages Team
• Defines tech architecture
• Accountable
• Senior (in theory)
• Sometimes you earn a leading role
• COOL!? Maybe not really
https://mozaicworks.com/blog/team-leaders-and-scrum-masters/
https://www.scrum.org/forum/scrum-forum/7630/team-lead-role-sign-bad-scrum
13
Team Leader vs Scrum Master
§ Scrum Master
• Servant leadership
• Guard & coach the Scrum Team
• Remove impediments for the Team
• Facilitate the various Scrum Events
• Ensure efficient communication between Team and the Product Owner
• Doesn’t tell the Development Team how to turn Product Backlog into Increments of
potentially releasable functionality;
Product Owner
15
Product Owner
§ Responsibilities
• Build and manage the product backlog
• Closely partner with the business and the team to ensure everyone understands the
work items in the product backlog
• Give the team clear guidance on which features to deliver next, on the upcoming
sprints
• Release Management
https://www.scrum-institute.org/Scrum_Product_Owner.php
https://www.atlassian.com/agile/scrum
16
Clarifications on Product Owner Role
“The Product Owner is one person, not a committee. The Product Owner may represent the desires
of a committee in the Product Backlog, but those wanting to change a Product Backlog item’s
priority must address the Product Owner.”
“For the Product Owner to succeed, the entire organization must respect his or her decisions.”
To me, a “Product Owner” is someone who not only has the power to modify its features, but they
have sufficient power to kill the product they own. If they don’t have that level of power, then they
are not really the product owner, and someone else really owns it. - Alan Cooper
17
Beware with the Proxy Product Owner
§ What is that?
• Someone else owns the product
• Product vision and features managed by someone else
Which leads to...
• Unclear ownership
• Unable to take the necessary decisions whenever they’re needed
• Unable to control the necessary budget/resources
• Not fully accountable
https://www.scrum.org/resources/blog/what-proxy-product-owner-why-it-found-so-often
https://dzone.com/articles/pattern-of-the-month-proxy-product-ownership
18
Avoid problems from the start
§ Write “good” user stories
• Clear
• Follow some principles of BDD
• Define Acceptance Criteria
• Review them with the team, always
upon sprint planning and later on
• in order to avoid misunderstandings, you can
explain them again as people start working
on them
As a [role]
I want [feature]
So that [benefit
As an Account Holder
I want to withdraw cash from an ATM
So that I can get money when the bank
is closed
19
Product Owner
§ Source of problems
• Maintaining multiple versions at the same time
• Does your product depend on others?
• Do you have to support multiple versions of that product?
• New versions rise unexpectedly and may break your product
• Customers will get upset and demand a fix ASAP
• Bye bye planning
Þ plan for the unknown: allocate people on advance out of Sprint context
Þ bugfixes managed using Kanban => released ASAP
How to deal with
>3000 customers?
21
Product Owner
Tactics your customers/stakeholders
will use
• Pressure (email, phone, don’t
renew/purchase, etc)
• They will find ways
• Massive voting
• Keep annoying you and your
support team
22
Product Owner
• Recommendations
• You’ll need the PM role, sooner or later...
• Be transparent
• Say no => not every customer is a customer
that you want
• Don’t commit to fixed dates => always
mention that you work with estimations
• Be clear about your Release Policy and how
you manage your releases
• Have a public roadmap
• Beware that you’re dealing with people =>
they’ll be smarter than you (votes example)
• Beware with sponsoring features!!
23
Handling your backlog
§ What you can do and some limitations
• apply “labels”, use “components” or other filters to properly tag issues
• having a well defined list of values may help later on
• Don’t use vote amount as-is or you will get garbage
• up to 1 vote per each customer
• not easy/effective to manage the backlog by multiple criteria
• “Comala Agile Ranking” for Jira can assist ranking backlog items by Importance/Risk
=> not perfect; how to deal with multiple value proposition?
24
Things that can affect your Sprints
§ Things that will happen
• Team not being focused
• Team working on side projects
• Unplanned events/activities
• HR, visits, etc
• Support issues
• Investigation of problems, optimizations, compatibilities => very hard to estimate
"If we knew what we were doing, it wouldn't be called research.” – Albert Einstein ??
25
Things that can affect your Sprints
• Avoid side projects
• Do them in-between Sprints or with someone working outside the Sprint
• Unplanned events/activities
• Talk with your stakeholders in order to be aware of them in advance
• Support issues
• Several levels, first ones handled by the Support team (if you have it)
• 1 person allocated each week (i.e. 1 person on average out of Sprint timeframe)
• TL as a backup
• Investigation of problems, optimizations, compatibilities
• Very high-level of uncertainty => do outside of Sprint but keep the communication going on
26
Common Scrum Traps
§ You’ll see this often
• Mini-waterfall
• Testing only done at the end
=> Shift-left your testing, up to the release planning
• Estimation 1 Story Point = x Hours
• you may use this at start but you have to change your mindset!
• Have a Release Date and a pre-defined Scope, for that date
=> you have to choose one
• Unclear or not adequate Definition of Done
• code implemented and review != Done
• Ownership / accountability!
Dessert
Product
Manager
Are you
building the
right
product?
30
Product Management
Product management is an organizational function that guides every step of a product’s
lifecycle: from development, to positioning and pricing, by focusing on the product and
its customers first and foremost. To build the best possible product, product managers
advocate for customers within the organization and make sure the voice of the market is
heard and heeded. (Atlassian)
31
Product Owner vs Product Manager
Product Owner is a role you play on a Scrum
team. Product Manager is the job.
Melissa Perri
(Product Manager Competence can be
summarized as).... deep knowledge of your
users and customers; deep knowledge of the
data that’s generated about your product;
deep knowledge of your industry; and deep
knowledge of how your business works.
Marty Cagan
There comes a point when growing
businesses benefit from having two product
roles — externally focused product managers
and internally focused product owners. And
the people are happier too.
@johnpeltier
32
Product Manager
The mess you may get involved with
• Team
• Engagement/Happiness/Growth
• Improve processes
• Communication
• Webinars, blog posts, articles, presentations on
events, videos
• Customers
• Demos, pre-sales, Q&A/clarifications,
recommendations, discussion of new features,
assistance
• Partners
• Q&A/clarifications, recommendations,
assistance
• Product development
• Prototyping, UI/UX, tech documentation
• Competition analysis
• Exploring
• Support
• Roadmap
33
Rian Van Der Merwe
@RianVDM
http://bit.ly/2BYx05R
34
Agile Product
Management
• Have the Agile Manifesto and its principles in mind
• Listen to the customer frequently (meet them
on person, discuss with them)
• Make frequent releases and gather feedback /
involve customers
• Be open to changes, prototype them and
discuss them with other customers
• Use analytics to have a better understanding on
people use your product
• Don’t overcomplicate attending to every single
request; make things simple yet useful for most
of your customers
• Your roadmap is not static; let you customers
be an active part of it
35
What matters for your
Product?
What matters for your
Product?
36
Style
37
Speed
38
Endurance
39
House on wheels
40
All the extras you can get
41
Don’t forget that...
§ Your product is like an holographic paper
• Take into account the different value proposition of your product
• It would be great to map and prioritize stories for each value proposition and from
there prioritize the backlog
42
Facts
• People see your product
differently
• People will value your product
differently
• People will have your product
even if they didn’t asked for it
• People will always get
unsatisfied with something
• You can get real ambassadors
43
Know your different user personas
• What are the different kind of users that user your product?
• What do they intend to use it for..
• And how?
Notes:
• the same persona can perform quite different scenarios
• different personas may have similar needs, yet slightly different (e.g. reporting)
44
Keep your
audience pleased
• Don’t forget to...
• Address needs for the different
personas and for their different
usage scenarios
• DON’T do it all at the same
time, or you’ll loose focus on
each release
• Give workarounds for things
you don’t want to do (or want
to do on the short term)
45
Mapping this to releases
§ Tips
• Make small, focused and frequent releases
• Use semantic versioning (i.e. major.minor.fix – 3.1.2)
• Go over your backlog and check long waiting or painful stuff
• Having in mind the different personas and the things most relevant for them
46
Don’t forget
§ This is not secondary stuff
• Technical debt
• Performance
• Usability & UX
• Ways of easing support activities
Problems come
with growth
48
“Multiple” Teams
• Dev team
• Support team
• Marketing
team
• Partners team
• Sales team
• Customer
Success team
• Design team
49
Challenges with growth
§ Source of problems
• Many requests from “multiple” teams at same time
• Many customer requests/support => unable to handle it
• “Improvements and bugs” created on the” backlog”
Þ don’t allow customers to create improvements/bugs directly; make them through the support
Þ Problem Space vs Solution Space
Þ support may create issues in the project; not on the “backlog” itself; use a specific “Backlog” version
50
You’re not running alone
51
What your users love
§ Tips
1. It’s not your product
2. And it’s not you J
3. And it’s also not what they do with the product by itself
It’s all about turning their pains into pleasures
(i.e. fulfilling their needs in seamless and pleasant ways)
And give them the opportunity to shine...
Coffee & Digestive
Cover with just title
How we work
54
Team setup
• Project Manager
• CMMI and other certifications compliance,
processes optimization, HR needs, top
alignment
• Team Leader (acts also as the Scrum
Master)
• coordinates Team and that processes are
met, including CMMI related activities
• Helps on support, namely on more critical
issues
• Interview new members for the Team
• Developers
• Implement stories (including documentation)
• Review code of others in Pull Requests
• Fix bugs
• Help on support
• Testers
• Involved in Pull Requests
• Support
• frontline for customer issues
• coordinates with dev team and PO
• PO/PM
Cover with just title
Product vs Services
56
Working in Product vs Services
§ Product
• your deadlines are more or less flexible (kind of)
§ Consulting / Services
• Hard to “sell” Agile/Scrum/Kanban
• People don’t valorize testing
• Time & Materials
• Hard to estimate
• Fixed-price
• Risky; try to avoid it
57
Do some things upfront
• Do a Design Sprint or some sessions with customer to algin scope and expectations
• you can then give a better estimate (reduce uncertainty) for Fixed-Price contracts
• See: https://thoughtbot.com/playbook/product-design-sprint/introduction
• Prioritize features together with customer => quite helpful for Scrum iterations
• Make some rough mockups
• better alignment; always good to have!
• Fixed contracts
• do visual design ASAP
• MVP => follows some Agile principles
Thank you!
sergio.freire at gmail.com
@darktelecom
Challenges are timeless.
Your biggest challenge? Yourself.
How can you overcome it? As a Team.

More Related Content

What's hot

What's hot (20)

User centred design (UCD) and the connected home
User centred design (UCD) and the connected homeUser centred design (UCD) and the connected home
User centred design (UCD) and the connected home
 
User driven development
User driven developmentUser driven development
User driven development
 
Beyond Staggered Sprints: Integrating User Experience and Agile
Beyond Staggered Sprints: Integrating User Experience and AgileBeyond Staggered Sprints: Integrating User Experience and Agile
Beyond Staggered Sprints: Integrating User Experience and Agile
 
Introducing Agile
Introducing AgileIntroducing Agile
Introducing Agile
 
Agile or how to break donw barriers
Agile or how to break donw barriersAgile or how to break donw barriers
Agile or how to break donw barriers
 
Use Lean Startup Techniques on a Remote Team by William Donnell - The Lean St...
Use Lean Startup Techniques on a Remote Team by William Donnell - The Lean St...Use Lean Startup Techniques on a Remote Team by William Donnell - The Lean St...
Use Lean Startup Techniques on a Remote Team by William Donnell - The Lean St...
 
Prototyping in a Scrum environment
Prototyping in a Scrum environmentPrototyping in a Scrum environment
Prototyping in a Scrum environment
 
Product Owner
Product OwnerProduct Owner
Product Owner
 
Story Mapping in Depth
Story Mapping in DepthStory Mapping in Depth
Story Mapping in Depth
 
Rapid Product Design in the Wild
Rapid Product Design in the WildRapid Product Design in the Wild
Rapid Product Design in the Wild
 
Responsive Design and Joomla!
Responsive Design and Joomla!Responsive Design and Joomla!
Responsive Design and Joomla!
 
Guerrilla Usability: Insight on a Shoestring
Guerrilla Usability: Insight on a ShoestringGuerrilla Usability: Insight on a Shoestring
Guerrilla Usability: Insight on a Shoestring
 
Lean Startup Masterclass
Lean Startup MasterclassLean Startup Masterclass
Lean Startup Masterclass
 
Agile and Design Thinking at IBM
Agile and Design Thinking at IBMAgile and Design Thinking at IBM
Agile and Design Thinking at IBM
 
The Future of User Experience
The Future of User ExperienceThe Future of User Experience
The Future of User Experience
 
Agile Prototyping Best Practices
Agile Prototyping Best PracticesAgile Prototyping Best Practices
Agile Prototyping Best Practices
 
Great Agile in a UX World
Great Agile in a UX WorldGreat Agile in a UX World
Great Agile in a UX World
 
(Agile 2011) Lean UX: Getting Out of the Deliverables Business
 (Agile 2011) Lean UX: Getting Out of the Deliverables Business (Agile 2011) Lean UX: Getting Out of the Deliverables Business
(Agile 2011) Lean UX: Getting Out of the Deliverables Business
 
Real World Lessons Using Lean UX (Workshop)
Real World Lessons Using Lean UX (Workshop)Real World Lessons Using Lean UX (Workshop)
Real World Lessons Using Lean UX (Workshop)
 
Practical-Agile Product owner workshop
Practical-Agile Product owner workshopPractical-Agile Product owner workshop
Practical-Agile Product owner workshop
 

Similar to From Software Developer to Proud Product Owner (Agile Connect Aveiro Meetup #20)

Patterns for getting started with agile
Patterns for getting started with agilePatterns for getting started with agile
Patterns for getting started with agile
Andre Simones
 

Similar to From Software Developer to Proud Product Owner (Agile Connect Aveiro Meetup #20) (20)

E-Commerce Project Management
E-Commerce Project ManagementE-Commerce Project Management
E-Commerce Project Management
 
How to Work with Teams as a Product Manager by fmr NY Magazine PM
How to Work with Teams as a Product Manager by fmr NY Magazine PMHow to Work with Teams as a Product Manager by fmr NY Magazine PM
How to Work with Teams as a Product Manager by fmr NY Magazine PM
 
Agile scrum benefits, pitfalls & solutions..
Agile scrum benefits, pitfalls & solutions..Agile scrum benefits, pitfalls & solutions..
Agile scrum benefits, pitfalls & solutions..
 
Scrum 101
Scrum 101 Scrum 101
Scrum 101
 
Building and Scaling a Product Team
 Building and Scaling a Product Team Building and Scaling a Product Team
Building and Scaling a Product Team
 
ME135A Agile lean workshop101414
ME135A Agile lean workshop101414ME135A Agile lean workshop101414
ME135A Agile lean workshop101414
 
UX in Action: IBM Watson
UX in Action: IBM WatsonUX in Action: IBM Watson
UX in Action: IBM Watson
 
Practicing Agile through Scrum
Practicing Agile through ScrumPracticing Agile through Scrum
Practicing Agile through Scrum
 
Agile for Business
Agile for BusinessAgile for Business
Agile for Business
 
Patterns for getting started with agile
Patterns for getting started with agilePatterns for getting started with agile
Patterns for getting started with agile
 
What It Takes To Be a Product Owner - Pratap Kumble - Scrum Bangalore 19th Me...
What It Takes To Be a Product Owner - Pratap Kumble - Scrum Bangalore 19th Me...What It Takes To Be a Product Owner - Pratap Kumble - Scrum Bangalore 19th Me...
What It Takes To Be a Product Owner - Pratap Kumble - Scrum Bangalore 19th Me...
 
Product is Hard - Marty Cagan
Product is Hard - Marty CaganProduct is Hard - Marty Cagan
Product is Hard - Marty Cagan
 
Req-usingDesignSprint.pdf
Req-usingDesignSprint.pdfReq-usingDesignSprint.pdf
Req-usingDesignSprint.pdf
 
Ent101 - Product Development (by Minalytix)
Ent101 - Product Development (by Minalytix)Ent101 - Product Development (by Minalytix)
Ent101 - Product Development (by Minalytix)
 
Agile Practice Workshop at Eye Care Leaders
Agile Practice Workshop at Eye Care LeadersAgile Practice Workshop at Eye Care Leaders
Agile Practice Workshop at Eye Care Leaders
 
Scrum training day 1
Scrum training day 1Scrum training day 1
Scrum training day 1
 
Bogdan Onyshchenko: Як стати кращим Продакт Менеджером? 11 порад з особистого...
Bogdan Onyshchenko: Як стати кращим Продакт Менеджером? 11 порад з особистого...Bogdan Onyshchenko: Як стати кращим Продакт Менеджером? 11 порад з особистого...
Bogdan Onyshchenko: Як стати кращим Продакт Менеджером? 11 порад з особистого...
 
Presented at Ford's 2017 Global IT Learning Summit (GLITS)
Presented at Ford's 2017 Global IT Learning Summit (GLITS)Presented at Ford's 2017 Global IT Learning Summit (GLITS)
Presented at Ford's 2017 Global IT Learning Summit (GLITS)
 
Betaleadership - ESCE Agile Marketing Class 2
Betaleadership - ESCE Agile Marketing Class 2Betaleadership - ESCE Agile Marketing Class 2
Betaleadership - ESCE Agile Marketing Class 2
 
Scrum
ScrumScrum
Scrum
 

Recently uploaded

Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
Alluxio, Inc.
 
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
mbmh111980
 

Recently uploaded (20)

Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdfA Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024
 
Studiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting softwareStudiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting software
 
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
AI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in MichelangeloAI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in Michelangelo
 

From Software Developer to Proud Product Owner (Agile Connect Aveiro Meetup #20)

  • 1. Sérgio Freire Proud Product Owner Product Manager @darktelecom From Software Developer to Proud Product Owner: challenges in Waterfall and Agile contexts
  • 2. 2 Today’s menu • Starters • Background • Main dishes • Software Developer • Team Leader • Product Owner • Dessert • Product Manager • Coffee & Digestive • Other topics • Open discussion
  • 4. In a nutshell Who is this guy? • PT Inovação • Developer • Team Leader • Technology Consultant (processes, tools, methodology) • Runtime Revolution • Team Leader & Senior Developer • Xpand IT • Product Owner & Product Manager
  • 5. 5 Side Projects Stupid things I’ve done • Codebits (3rd, 5th and 6th prizes) • Nagalhães • Truz Truz – knock knock to unlock • remote control Meo with Chocolate Milk Boxes (no award) • The Grid (first version) • The Grid, as a product (guess the revenue I made?)
  • 6. 6 What makes me excited Thinks I like • Get Things Done (even if I have to make them J) • Learning • Discover • Try • Improving • Being helpful, so others can improve themselves • Challenges • Creativity • Innovation
  • 9. 9 Being a Software Developer § Waterfall • You hope the BA did their work • You do what you’re told (e.g. by the TL) § Some few problems • You make something that is not exactly what customer needs • Too many hierarchical layers => information turns into noise • Problem vs Solution space If I had an hour to solve a problem I’d spend 55 minutes thinking about the problem and 5 minutes thinking about solutions. - unknown
  • 10. 10 Being a Software Developer § Agile • You iterate and discuss with the team and the PO, on a daily basis • Customer may act as the Product Owner § Some few problems • Doing things iteratively has some challenges to the architecture design • It is a complete different mindset than starting with a full spec • Sometimes it’s hard to get the customer always available as a PO
  • 12. 12 Team Leader vs Scrum Master § Team Leader • Manages Team • Defines tech architecture • Accountable • Senior (in theory) • Sometimes you earn a leading role • COOL!? Maybe not really https://mozaicworks.com/blog/team-leaders-and-scrum-masters/ https://www.scrum.org/forum/scrum-forum/7630/team-lead-role-sign-bad-scrum
  • 13. 13 Team Leader vs Scrum Master § Scrum Master • Servant leadership • Guard & coach the Scrum Team • Remove impediments for the Team • Facilitate the various Scrum Events • Ensure efficient communication between Team and the Product Owner • Doesn’t tell the Development Team how to turn Product Backlog into Increments of potentially releasable functionality;
  • 15. 15 Product Owner § Responsibilities • Build and manage the product backlog • Closely partner with the business and the team to ensure everyone understands the work items in the product backlog • Give the team clear guidance on which features to deliver next, on the upcoming sprints • Release Management https://www.scrum-institute.org/Scrum_Product_Owner.php https://www.atlassian.com/agile/scrum
  • 16. 16 Clarifications on Product Owner Role “The Product Owner is one person, not a committee. The Product Owner may represent the desires of a committee in the Product Backlog, but those wanting to change a Product Backlog item’s priority must address the Product Owner.” “For the Product Owner to succeed, the entire organization must respect his or her decisions.” To me, a “Product Owner” is someone who not only has the power to modify its features, but they have sufficient power to kill the product they own. If they don’t have that level of power, then they are not really the product owner, and someone else really owns it. - Alan Cooper
  • 17. 17 Beware with the Proxy Product Owner § What is that? • Someone else owns the product • Product vision and features managed by someone else Which leads to... • Unclear ownership • Unable to take the necessary decisions whenever they’re needed • Unable to control the necessary budget/resources • Not fully accountable https://www.scrum.org/resources/blog/what-proxy-product-owner-why-it-found-so-often https://dzone.com/articles/pattern-of-the-month-proxy-product-ownership
  • 18. 18 Avoid problems from the start § Write “good” user stories • Clear • Follow some principles of BDD • Define Acceptance Criteria • Review them with the team, always upon sprint planning and later on • in order to avoid misunderstandings, you can explain them again as people start working on them As a [role] I want [feature] So that [benefit As an Account Holder I want to withdraw cash from an ATM So that I can get money when the bank is closed
  • 19. 19 Product Owner § Source of problems • Maintaining multiple versions at the same time • Does your product depend on others? • Do you have to support multiple versions of that product? • New versions rise unexpectedly and may break your product • Customers will get upset and demand a fix ASAP • Bye bye planning Þ plan for the unknown: allocate people on advance out of Sprint context Þ bugfixes managed using Kanban => released ASAP
  • 20. How to deal with >3000 customers?
  • 21. 21 Product Owner Tactics your customers/stakeholders will use • Pressure (email, phone, don’t renew/purchase, etc) • They will find ways • Massive voting • Keep annoying you and your support team
  • 22. 22 Product Owner • Recommendations • You’ll need the PM role, sooner or later... • Be transparent • Say no => not every customer is a customer that you want • Don’t commit to fixed dates => always mention that you work with estimations • Be clear about your Release Policy and how you manage your releases • Have a public roadmap • Beware that you’re dealing with people => they’ll be smarter than you (votes example) • Beware with sponsoring features!!
  • 23. 23 Handling your backlog § What you can do and some limitations • apply “labels”, use “components” or other filters to properly tag issues • having a well defined list of values may help later on • Don’t use vote amount as-is or you will get garbage • up to 1 vote per each customer • not easy/effective to manage the backlog by multiple criteria • “Comala Agile Ranking” for Jira can assist ranking backlog items by Importance/Risk => not perfect; how to deal with multiple value proposition?
  • 24. 24 Things that can affect your Sprints § Things that will happen • Team not being focused • Team working on side projects • Unplanned events/activities • HR, visits, etc • Support issues • Investigation of problems, optimizations, compatibilities => very hard to estimate "If we knew what we were doing, it wouldn't be called research.” – Albert Einstein ??
  • 25. 25 Things that can affect your Sprints • Avoid side projects • Do them in-between Sprints or with someone working outside the Sprint • Unplanned events/activities • Talk with your stakeholders in order to be aware of them in advance • Support issues • Several levels, first ones handled by the Support team (if you have it) • 1 person allocated each week (i.e. 1 person on average out of Sprint timeframe) • TL as a backup • Investigation of problems, optimizations, compatibilities • Very high-level of uncertainty => do outside of Sprint but keep the communication going on
  • 26. 26 Common Scrum Traps § You’ll see this often • Mini-waterfall • Testing only done at the end => Shift-left your testing, up to the release planning • Estimation 1 Story Point = x Hours • you may use this at start but you have to change your mindset! • Have a Release Date and a pre-defined Scope, for that date => you have to choose one • Unclear or not adequate Definition of Done • code implemented and review != Done • Ownership / accountability!
  • 30. 30 Product Management Product management is an organizational function that guides every step of a product’s lifecycle: from development, to positioning and pricing, by focusing on the product and its customers first and foremost. To build the best possible product, product managers advocate for customers within the organization and make sure the voice of the market is heard and heeded. (Atlassian)
  • 31. 31 Product Owner vs Product Manager Product Owner is a role you play on a Scrum team. Product Manager is the job. Melissa Perri (Product Manager Competence can be summarized as).... deep knowledge of your users and customers; deep knowledge of the data that’s generated about your product; deep knowledge of your industry; and deep knowledge of how your business works. Marty Cagan There comes a point when growing businesses benefit from having two product roles — externally focused product managers and internally focused product owners. And the people are happier too. @johnpeltier
  • 32. 32 Product Manager The mess you may get involved with • Team • Engagement/Happiness/Growth • Improve processes • Communication • Webinars, blog posts, articles, presentations on events, videos • Customers • Demos, pre-sales, Q&A/clarifications, recommendations, discussion of new features, assistance • Partners • Q&A/clarifications, recommendations, assistance • Product development • Prototyping, UI/UX, tech documentation • Competition analysis • Exploring • Support • Roadmap
  • 33. 33 Rian Van Der Merwe @RianVDM http://bit.ly/2BYx05R
  • 34. 34 Agile Product Management • Have the Agile Manifesto and its principles in mind • Listen to the customer frequently (meet them on person, discuss with them) • Make frequent releases and gather feedback / involve customers • Be open to changes, prototype them and discuss them with other customers • Use analytics to have a better understanding on people use your product • Don’t overcomplicate attending to every single request; make things simple yet useful for most of your customers • Your roadmap is not static; let you customers be an active part of it
  • 35. 35 What matters for your Product? What matters for your Product?
  • 40. 40 All the extras you can get
  • 41. 41 Don’t forget that... § Your product is like an holographic paper • Take into account the different value proposition of your product • It would be great to map and prioritize stories for each value proposition and from there prioritize the backlog
  • 42. 42 Facts • People see your product differently • People will value your product differently • People will have your product even if they didn’t asked for it • People will always get unsatisfied with something • You can get real ambassadors
  • 43. 43 Know your different user personas • What are the different kind of users that user your product? • What do they intend to use it for.. • And how? Notes: • the same persona can perform quite different scenarios • different personas may have similar needs, yet slightly different (e.g. reporting)
  • 44. 44 Keep your audience pleased • Don’t forget to... • Address needs for the different personas and for their different usage scenarios • DON’T do it all at the same time, or you’ll loose focus on each release • Give workarounds for things you don’t want to do (or want to do on the short term)
  • 45. 45 Mapping this to releases § Tips • Make small, focused and frequent releases • Use semantic versioning (i.e. major.minor.fix – 3.1.2) • Go over your backlog and check long waiting or painful stuff • Having in mind the different personas and the things most relevant for them
  • 46. 46 Don’t forget § This is not secondary stuff • Technical debt • Performance • Usability & UX • Ways of easing support activities
  • 48. 48 “Multiple” Teams • Dev team • Support team • Marketing team • Partners team • Sales team • Customer Success team • Design team
  • 49. 49 Challenges with growth § Source of problems • Many requests from “multiple” teams at same time • Many customer requests/support => unable to handle it • “Improvements and bugs” created on the” backlog” Þ don’t allow customers to create improvements/bugs directly; make them through the support Þ Problem Space vs Solution Space Þ support may create issues in the project; not on the “backlog” itself; use a specific “Backlog” version
  • 51. 51 What your users love § Tips 1. It’s not your product 2. And it’s not you J 3. And it’s also not what they do with the product by itself It’s all about turning their pains into pleasures (i.e. fulfilling their needs in seamless and pleasant ways) And give them the opportunity to shine...
  • 53. Cover with just title How we work
  • 54. 54 Team setup • Project Manager • CMMI and other certifications compliance, processes optimization, HR needs, top alignment • Team Leader (acts also as the Scrum Master) • coordinates Team and that processes are met, including CMMI related activities • Helps on support, namely on more critical issues • Interview new members for the Team • Developers • Implement stories (including documentation) • Review code of others in Pull Requests • Fix bugs • Help on support • Testers • Involved in Pull Requests • Support • frontline for customer issues • coordinates with dev team and PO • PO/PM
  • 55. Cover with just title Product vs Services
  • 56. 56 Working in Product vs Services § Product • your deadlines are more or less flexible (kind of) § Consulting / Services • Hard to “sell” Agile/Scrum/Kanban • People don’t valorize testing • Time & Materials • Hard to estimate • Fixed-price • Risky; try to avoid it
  • 57. 57 Do some things upfront • Do a Design Sprint or some sessions with customer to algin scope and expectations • you can then give a better estimate (reduce uncertainty) for Fixed-Price contracts • See: https://thoughtbot.com/playbook/product-design-sprint/introduction • Prioritize features together with customer => quite helpful for Scrum iterations • Make some rough mockups • better alignment; always good to have! • Fixed contracts • do visual design ASAP • MVP => follows some Agile principles
  • 58. Thank you! sergio.freire at gmail.com @darktelecom Challenges are timeless. Your biggest challenge? Yourself. How can you overcome it? As a Team.