Scrum in practice at klarna

20
Scrum in practice By Elad Maimon

description

How to do SCRUM and how are we doing it in practice at Klarna TLV. Covering the next topics: sprints, retro + demo, standup, pair programming, code quality, MVP, continuous integration, continuous deployment, and more...

Transcript of Scrum in practice at klarna

Page 1: Scrum in practice at klarna

Scrum in practiceBy Elad Maimon

Page 2: Scrum in practice at klarna

Manifesto for Agile Software Development

Individuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

That is, while there is value in the items onthe right, we value the items on the left more.

Page 3: Scrum in practice at klarna

Rugby team…

SCRUM ?

״אתה מתחיל לרוץ הכי מהר שלך, ולאט לאט אתה מגביר…״

Page 4: Scrum in practice at klarna

Scrum Overview

Page 5: Scrum in practice at klarna

Key Principles

● MVP (“good is enough”)

● Team empowerment

● Short feedback loop (fail fast)

● Trust

● Continuous delivery

● Continuous improvement

● Keep WIP low

Page 6: Scrum in practice at klarna

Follow it by the book…

Scrum in Klarna - How ?

Page 7: Scrum in practice at klarna

● Responsible for everything!○ Requirements, UI, architecture, test, deploy, monitor

● No one in the team is more important or has a stronger say.

● Yet, different responsibilities (roles):○ Product Owner (PO) - owns the backlog, prioritize,

approve every deployment.

○ Scrum Master - ensures the Scrum process used as intended.

○ The Team - deliver, deliver, deliver…

It’s All About The Team

Page 8: Scrum in practice at klarna

Sprints

● 1-2 weeks sprint

● Planing

● Daily standup - no discussions, only status!

● Demo + Retro

● Using Jira …or

Page 9: Scrum in practice at klarna

Planing

● PO prioritises and decides what gets into the sprint backlog

● Team estimates story points by voting

● Team velocity measured by story points of last sprints

● Engineering stories in every sprint

Page 10: Scrum in practice at klarna

User Story

● Must have a product value○ Demonstrate it in the sprint demo

● Done == deployed

● Elephant carpaccio○ Stories are 1-5 days long. Bigger ? Split !

● Work only if it is in the sprint backlog

Page 11: Scrum in practice at klarna

Pair Programming

It is awesome !

Page 12: Scrum in practice at klarna

Pair Programming - cont.

● Driver - Navigator model● Switch frequently● Code quality much higher● Knowledge sharing is much less

necessary● Stronger developer helps the other

to improve● Challenges - need to practice

○ http://www.wikihow.com/Pair-Program

Page 13: Scrum in practice at klarna

Quality

● Built in development process

● No QA organization

● TDD - red green refactor

● Code review for each line

● Continuous integration

● Test coverage - we strive to 100%

● Zero bug mentality

Page 14: Scrum in practice at klarna

Think Agile - MVP

● Agile is not just set of rules, it is a state of mind.

● You can’t declare yourself Agile - you feel Agile.

● “I won’t build a mechanism that supports future requirements”

● “Instead, I’ll build the minimum required, and refactor it later if necessary”

Page 15: Scrum in practice at klarna

Think Agile - Elephant carpaccio

● If a feature is too long, break it down and deploy it, even if there’s no real use in the partial implementation

● Keep the product value for each story

(Partners admin page example)

Page 16: Scrum in practice at klarna

Think Agile - Keep WIP low

● If story get stuck, don’t hold it while continuing working on new stories

● Instead, find the product value of current state, deploy as is, and create a new story in backlog to fill the gap later

● If not possible - reject the story

Page 17: Scrum in practice at klarna

Think Agile - Short feedback loop

● It is hard to be sure that you are not writing bugs

● Thus, you must trust your tests.

● Get a short feedback loop, don’t be afraid to fail, it is better fail fast than continue working on the wrong direction

Page 18: Scrum in practice at klarna

● We use Ruby on Rails.○ Designed to support rapid web development.○ Pick technology that supports RAD

● We use Chef for provisioning○ Infrastructure as a Code

● We love open source

● We contribute back

● Hackathons

● Sustainable productivity

What Else ?

Page 19: Scrum in practice at klarna

Our Values

Play as a team

Craft like an artist

get things DONE

Page 20: Scrum in practice at klarna

Thank you