Living Agile in Skype

Post on 05-Dec-2014

249 views 3 download

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.

Transcript of Living Agile in Skype

Living Agile in Skype

Jindřich Parus, Senior Software Development Engineer, Microsoft

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

Introduction• Speaker• jindrich.parus@skype.net• @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/

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?

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

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

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

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

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

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

Estimation

• 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

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, …)?

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

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?

Questions

jindraparus | jparus