15
Living Agile in Skype Jindřich Parus, Senior Software Development Engineer, Microsoft

Living Agile in Skype

Embed Size (px)

DESCRIPTION

Skype has seen dramatic growth in last decade - hundreds of millions of active users, billions of calling minutes and Skype clients on all major platforms. All that was made possible by a smart combination of great technology and development process. In this talk I will briefly summarize Skype's agile journey in last couple of years and share some lessons learned from running a team developing Skype app for Windows 8.

Citation preview

Page 1: Living Agile in Skype

Living Agile in Skype

Jindřich Parus, Senior Software Development Engineer, Microsoft

Page 2: Living Agile in Skype

Topics1. Introduction2. Brief History of Skype3. Skype Organic4. Skype’s Agile Transformation5. Skype Agile6. Lessons Learned

Page 3: Living Agile in Skype

Introduction• Speaker• [email protected]• @jparus

• What is Skype?• communication provider for digital world – calling, IM,

SMS, video messaging, file sharing, screen sharing, voice mail, …

• Skype Prague• Engineering center with ~200 engineers• Focused on Skype & Lync Web Experiences and cloud

services• Join our team as developer, tester or PM!• http://www.skypeworklife.com/locations/prague/

Page 4: Living Agile in Skype

Brief History of Skype

private investo

rseBay

Silver Lake,

a16z, …Microsoft

200

3200

5200

9201

1

$2.5B $2.7B $8.5B

Does agile development methodologies add $5.8B valuation to your business?

Page 5: Living Agile in Skype

Skype Organic (2003 – 2009)• Situation• Business growing hundreds of percent per year• Searching for revenue sources left and right

• Organic• lose concept of backlog - roadmap• lose development iterations (feature creep)• growing technical debt• scaling issues (org, user base, platforms)• lack of transparent prioritization

Page 6: Living Agile in Skype

Agile Transformation (2010-2011)• Started with Silver Lake et al. acquisition in late

2009• Focused on SCRUM• New org structure• Product teams formed (cross functional) • new roles (Scrum Master, Product Owner)

• Training program for Scrum Masters, team members, PMs & POs

• External consultants & agile coaches

Page 7: Living Agile in Skype

Skype/Microsoft Agile• All SCRUM concepts in place - product team,

backlog, sprint, ceremonies• Transparency, predictability• Regular rhythm

Page 8: Living Agile in Skype

Lessons LearnedBacklog, Bugs, Rhythm, Scrum Master, Scaling Scrum

Page 9: Living Agile in Skype

Backlog• Challenges• Multiple backlogs• main backlog with features• bugs backlog• technical improvements

• Infrastructure – should really come out of retrospectives and/or root cause analysis of incidents

• Refactoring – should be really part of a bug fix or a feature development

• Estimation• Maximum backlog item size

Page 10: Living Agile in Skype

Estimation

Page 11: Living Agile in Skype

• Sometimes one has to cut corners to meet business goals

• Technical debt grows• It’s necessary to constantly manage the bug list• Bug lifecycle (after it’s found ;-)• Triage (dev, test, PM)• Prioritize• Fix• Verify• Fix regressions caused by fixing the bug

• Solution: zero bug policy or “bug jail”

Bugs

Page 12: Living Agile in Skype

Rhythm• Development iterations• 2 weeks sprints• 2 sprints for a release

• What is the outcome of the sprint?• Code is shipped• Potentially shippable product• What is your release overhead (signoffs, engineering

activities, …)?

Page 13: Living Agile in Skype

Scrum Master• Responsibilities• Facilitating ceremonies• Attending Scrum of Scrums• Making sure the things move from left to right

• Who is Scrum Master• Full time Scrum Master vs. somebody from the team• Dev/test lead vs. team member?• Developer vs. tester?

• Rotating Scrum Master• Everybody has a chance to try it (CSM training)• Bigger picture

Page 14: Living Agile in Skype

Scaling Scrum• Straightforward when single team• When you start thinking about subdividing?

• Multi Scrum team challenges• Ideal team size – manageable ceremonies• How to split?• Permanently• Reorganize every sprint based on tasks and skills• What are the ceremonies like – one big team or per sub teams?

• How do you coordinate across different Scrum teams?• Scrum of Scrum

• Is the team sub division reflected in the formal org?

Page 15: Living Agile in Skype

Questions

jindraparus | jparus