I gave a talk at Code Fellows' Partner Power Hour series about how product managers and developers work together at Avvo -- including lessons we've learned and tips for dev students starting their careers.
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
How Product Managers & Developers Deliver Value at Avvo
1. Who’s this person
telling me what to do?
Working with a Product Manager on an agile team
Danielle Martin | Product Manager, Avvo | Code Fellows 2018
2. Danielle Martin
Product Manager, Avvo
Connect with me!
Email: dmartin@avvo.com
LinkedIn: /daniellempost/
Connect with Avvo!
● Jobs
● Meetups
● Mock interviews
4. Today I hope you learn...
● What’s an agile team and how do they work?
● What does a Product Manager do on an agile team?
● Successful Engineer : Product Manager relationships
● Life/career hacks
● Case studies
● Q&A
13. Teammates
Product manager: Set and drive strategy based on user goals, business
goals, and the fastest way to deliver user value.
User experience (UX): For us, interaction design and content strategy.
What info, when, and how - to achieve user goals and business goals.
Quality Assurance (QA): First and last line of defense. Repro bugs, triage
work, test new features.
Engineers / Developers: Deliver business value by building stuff. On my
team, we have data engineers, full-stack developers, front-end engineers.
Business analyst: Uses data to find problems and communicate impact.
15. Attorney
Journey
Backlog
Idea or pain point
from users or
the biz
Learn
Build
Measure
Prioritized
Get
feedback
AJ discusses,
questions,
estimates
Get
feedback
16. Agile is the fastest way
to deliver value to
customers.
- Kevin Goldsmith, CTO, Avvo
25. Words*…
Product manager (PM): Owns end-to-end product experience and
is responsible for delivering user/biz value.
Product owner (PO): Agile lingo. Same as product manager.
Project manager (PM): Manages a defined project; usually not
responsible for strategy.
Program manager (PM): Manages a defined program; usually not
responsible for strategy.
*Words mean different things at different places, just ask them what they do.
28. Some things I care about a lot
● Solving real “people problems” for real humans, often in
stress (Julie Zhuo & Sarah Wachter-Boettcher)
● Making sure everyone on my team knows why (Start with Why)
● Test & Learn, and share what you learned! (Agile, UX; If a tree falls…)
● Progress not perfection. Get value to users as fast as
possible #impact (The Lean Startup)
● Protecting my team from confusion and randomization -
often with a lil’ process to speed them up (Don’t Make Me Think)
29. If you’re going to
build things that
affect people's’
lives (you are),
read these!!
These are all
linked
32. What I expect
from Product
Managers
● Deeply understand your user and
their problems/goals
● Understand your business and
stakeholder problems/goals
● Balance the 2 to create strategy
● Clearly communicate strategy to
many people, in many formats
● Break up work into small, clearly
scoped chunks.
● Unblock & speed up the team -
including shielding them from noise.
● “Be kind and curious” - Leslie Zavisca
● Deliver value and #GSD
33. What I expect
from
Developers
● Deliver user & business value !!!
● Ask questions (especially if you
don’t understand why)
● Collaborate with others - diversity of
ideas, healthy debate, hole-poking,
before converging on a way
forward
● Explore options, communicate
pros/cons, recommend direction
● Don’t spin too long - raise your
hand if slowed, confused,
randomized
● “Be kind and curious” - Leslie Z.
● Practice communicating to non-tech
folks (pictures!)
34. Your PM will often say to you...
● Our goal/job is to deliver user value as fast as possible
● What’s the impact? (to user, to business, to developers)
● Is there a simpler way?
● Is there a faster way?
● Is there a benefit to doing this now vs. later?
● Draw me a picture
● Pros and cons? Considering those, which do you recommend?
● Are you blocked? Is there anything I can do to speed you up?
● Tell [stakeholder] to talk to me instead
37. What did Yana do?
● Estimated the work (1-2 story points)
● Reminded me of background “we did this once before”
● Shared code / how for dev teammates
● Gave multiple options & recommendation
● Asked a clarifying question
● Re-estimated based on my answer (2 points)
So that her PM and Dev teammates do not have
to read minds or waste time.
39. Framework: People problem
When: Someone brings you a problem or goal.
Why: Don’t waste time/work/money.
How:
1. What is the people problem?
2. How do we know it’s a real problem? (qualitative and
quantitative data)
3. How will we know when we’ve solved it?
Watch Julie Zhuo
40. Framework: PAR
When: Anytime you’re talking about your work.
Why: Tell the story of your work and why it matters.
How:
1. Problem - what were you trying to solve?
2. Action - what action did you take?
3. Result - what was the result? What value did you deliver?
45. Problem to solve: As Avvo Marketing, I want attorneys to
announce our attorney conference on the site.
Action: PM/UX decides where it should go, Marketing delivers
the asset, developers build it with an on/off switch - so we can
ship it now, anyone can turn on later.
Result: Built and shipped. PM flipped it on day-of email.
49. Problem to solve: As a consumer, I want a fast answer to my
question. But as an attorney, it’s hard / slow to add Q&A
subscriptions.
Action: UX talks to Sales to understand the problem. UX &
Developer design new interaction based on best-in-class / our
UI toolkit capabilities.
Result: Much easier to add subscriptions. But now it’s hard to
unsubscribe! And some other stuff!
Action: Iterate over 2 sprints.
54. Problem to solve: As Avvo, we want a new product that has
just 3 features of an existing 20+ feature product.
Action: We took a route with some theoretical future side
benefits. Then we hit surprises. Then we under-resourced the
team. Then we hit more surprises. And we just...kept….going….
Result: We lost sight of business value, our pivots weren’t
dramatic enough, people felt burned out. When we ultimately
shipped, we broke the website - for a while. We shipped
again, successfully. We learned some valuable lessons!
56. Our learnings (more life/career hacks)
1. Never lose sight of user / business value - say it early and often.
2. Build habit of pivot or persevere discussions - if estimates change, and
at each sprint planning. Still a priority? New info?
3. Bring "change in scope" to team and PM asap
4. Ship each sprint – good for user/biz value and for morale.
5. Mentoring is great for mentees and mentors and teams!
6. Rotate teammates off of projects - promotes shared understanding,
shared ownership over big decisions, and avoids burnout.
7. Legacy code was full of surprises and caused slowdowns (in
momentum and morale). Try a tech debt template.
57. I hope you learned about...
● Agile teams
● Product Managers
● Successful Developer : Product Manager relationships
● Some life/career hacks
● Some real-life case studies
● Answers to your questions