Transcript
Page 1: Lean startup - 8 techniques every dev team should know

8 techniques every product development team should know

LEAN STARTUP

Page 2: Lean startup - 8 techniques every dev team should know

INTRODUCTIONS

• Currently CEO of AgileEngine

• Co-founder and CTO of Validio (now GlobalLogic Kharkov)

• Co-founder and CTO of 2 startups

• Author of “Covert Java” book

• Developer, architect, entrepreneur, speaker

Alex Kalinovsky

Agile Engine 2

Page 3: Lean startup - 8 techniques every dev team should know

AWARENESS TEST

PAY ATTENTION!

Agile Engine 3

Page 4: Lean startup - 8 techniques every dev team should know

AWARENESS TEST

Story of 2 startups

Agile Engine 4

Page 5: Lean startup - 8 techniques every dev team should know

5Agile Engine

Startup 1 – Boo.com

Page 6: Lean startup - 8 techniques every dev team should know

6Agile Engine

ShoeSite.com

Startup 2 - Free Shipping on Shoes

Page 7: Lean startup - 8 techniques every dev team should know

Which startup did better?

7CreamTec

Which one did better?

Page 8: Lean startup - 8 techniques every dev team should know

2 startups side-by-side

• 50,000 varieties of shoes

• $1 billion in sales

• 24 million customers

• Acquired by Amazon.com for $1.2 billion

8AgileEngine

• $135M spent in 18 months

• $500,000 in sales

• 609 orders

• Liquidated for $250,000

Page 9: Lean startup - 8 techniques every dev team should know

Why do it?

• The question is not “can this product be built”. In the modern economy, the more pertinent questions are “Should this be built” and “Can we build a sustainable business around it”?

9AgileEngine

Page 10: Lean startup - 8 techniques every dev team should know

Introducing Lean Startup

• Roots in Toyota

• Everyone can be entrepreneur

• Startups are best at turning ideas into products in the environment of extreme uncertainty

• Lean Startup approach can be used for enterprise architecture, recruiting, QA and sales

10AgileEngine

Page 11: Lean startup - 8 techniques every dev team should know

Define Vision

11AgileEngine

What do you want to achieve?

Page 12: Lean startup - 8 techniques every dev team should know

Establish Strategy

• How will you measure progress?

• Talk with customers to validate your assumptions

• Understand your customer and discover their needs

• Value learning over working software

12AgileEngine

Page 13: Lean startup - 8 techniques every dev team should know

Lean Approach

• What I say is not what I do

• Only way to validate is to build and measure

• Learn to see waste from value

• Lean thinking defines value as providing benefit to the customer; anything else is waste

• Ship soon. Learn. Cut waste.

13AgileEgine

Page 14: Lean startup - 8 techniques every dev team should know

Build-Measure-Learn Feedback Loop

• Core of lean startup

• Each iteration tests a hypothesis of value or growth

• Minimize time through the loop

14AgileEngine

Page 15: Lean startup - 8 techniques every dev team should know

VISION – Experiment

• If you cannot fail, you cannot learn

• Start with hypothesis/prediction

• Test predictions empirically

• Science, not alchemy

15AgileEngine

Page 16: Lean startup - 8 techniques every dev team should know

Ready to build!

16AgileEngine

Page 17: Lean startup - 8 techniques every dev team should know

Dropbox challenge

• What to build to test if building Dropbox is a good idea?

17AgileEngine

Page 18: Lean startup - 8 techniques every dev team should know

STEER – Leap – MVP

• MVP = Minimum Viable Product

• Not a prototype – have to measure results

• Plan is based on assumptions; goal of iteration is to validate one of more of them

• Entrepreneurs dramatically overestimate how many features are need in MVP

• When in doubt – simplify

18AgileEngine

Page 19: Lean startup - 8 techniques every dev team should know

MVP examples

• Video MVP - Dropbox

• Concierge MVP – StreetCount

• Cheap MVPs allow you to test ideas quickly and iterate. Angry Birds

• Low quality is OK for startups because of extreme uncertainty – craigslist.com

• Don’t worry about patents, worry about execution

• Commit to iteration no matter what for an agreed period of time

19AgileEngine

Page 20: Lean startup - 8 techniques every dev team should know

Measure

20AgileEngine

Page 21: Lean startup - 8 techniques every dev team should know

Measure

• Actionable – must demonstrate clear cause and effect

• Accessible – easy to find and understand

• Auditable – can be reproduced and verified

21AgileEngine

Page 22: Lean startup - 8 techniques every dev team should know

VISION – Experiment – Hypothesis

• Value hypothesis tests whether a product really delivers value once users are using it

• Measure purchases, returning visitors or contributions

• Growth hypothesis tests how new customers will discover product

• Measure referrals and invitations

22AgileEngine

Page 23: Lean startup - 8 techniques every dev team should know

Measure - Cohort Testing

• Which way is this bus headed?

23AgileEngine

Page 24: Lean startup - 8 techniques every dev team should know

STEER – Measure – Split Testing

• Split Testing to determine a better of 2 versions

• Key to validating if something should have been built in the first place

• Marketing may be more important than new features

24AgileEngine

Page 25: Lean startup - 8 techniques every dev team should know

Learn

25AgileEngine

• Was your hypothesis right?

• Did metrics improve?

Page 26: Lean startup - 8 techniques every dev team should know

PIVOT or PERSEVERE

• Pivot – a structured course correction designed to test a new fundamental hypothesis

• Don’t get stuck in Zombie land

• Example: online activism platform -> The Point -> local pizza coupon -> Groupon

26AgileEngine

Page 27: Lean startup - 8 techniques every dev team should know

Lean Approach

27AgileEgine

Page 28: Lean startup - 8 techniques every dev team should know

Lean Approach

28AgileEgine

Can we improve?

• When problem is not really known, we value knowledge over working software

• Progress is measured by learning

Page 29: Lean startup - 8 techniques every dev team should know

Typical Development Process

29AgileEgine

Where is learning?

Page 30: Lean startup - 8 techniques every dev team should know

Lean Approach

30AgileEgine

Page 31: Lean startup - 8 techniques every dev team should know

Lean Approach

31AgileEgine

Page 32: Lean startup - 8 techniques every dev team should know

Lean Approach

32AgileEgine

Page 33: Lean startup - 8 techniques every dev team should know

Lean Approach

33AgileEgine

Page 34: Lean startup - 8 techniques every dev team should know

Lean Approach

34AgileEgine

Page 35: Lean startup - 8 techniques every dev team should know

Lean Approach

35AgileEgine

Page 36: Lean startup - 8 techniques every dev team should know

Lean Approach

36AgileEgine

Page 37: Lean startup - 8 techniques every dev team should know

Tendency to overengineer

• Interfaces

• IOC / DI

• Separation of layers and DTOs

• Mocks vs test data

• (Over)analyzing requirements

• Patterns

• Excessive use of frameworks

37AgileEngine

Page 38: Lean startup - 8 techniques every dev team should know

Agile vs Lean

38AgileEgine

• Solution Unknown

• Elicit stories from customers

• 2-4 week sprints

• Continuous integration

• Done = working software

• Problem Unknown

• Validate features with market

• Get through the loop as fast as possible

• Continuous deployment

• Done = validated learning

Agile Lean Startup

Page 39: Lean startup - 8 techniques every dev team should know

Conclusion

1. Define vision

2. Establish strategy

3. Start with MVP

4. Build a hypothesis

5. Measure metrics

6. Learn from data

7. Build value, cut waste

8. Pivot or persevere

39AgileEngine

Page 40: Lean startup - 8 techniques every dev team should know

Credits

1. Eric Ries, Lean Startup

2. Abby Fichter, How Development Looks Different at a Startup

3. The HackerChick Blog

40AgileEngine

Page 41: Lean startup - 8 techniques every dev team should know

41AgileEngine

Change the world!

Can one person change the world?

Page 42: Lean startup - 8 techniques every dev team should know

Company X vs AgileEngine

42AgileEngine

• “We hire the best”

• “We value our developers”

• “We work with latest technologies”

• “We innovate”

• “Lots of projects”

• “Room to grow”

• “Trips to US”

• “Good work environment”

• Pass our development test

• Pay at the top end of market

• We invent latest technologies

• Build products

• Interesting projects

• Promote from within

• Relocation to the US

• Best looking girls!

Company X AgileEngine

Page 43: Lean startup - 8 techniques every dev team should know

43AgileEngine


Top Related