applying agile team management

47
#Acheivemore Huan Ho Cofounder/CTO, Rallyteam HR WEST 2017 Applying Agile Team Management

Upload: huan-ho

Post on 20-Mar-2017

144 views

Category:

Business


6 download

TRANSCRIPT

Page 1: Applying Agile Team Management

#Acheivemore

Huan Ho

Cofounder/CTO, Rallyteam

HR WEST 2017Applying Agile Team Management

Page 2: Applying Agile Team Management

2

introduction

• Computer engineer, skier / boarder, world traveler

• Tech, telecom, security, consulting, energy

• Startups and large corps

• Co-Founder and CTO of Rallyteam

Page 3: Applying Agile Team Management

3

agenda

Why• What does it mean?• Why do we want to be agile?

How • Key principles

What• Applying agile to improve your product and team

Page 4: Applying Agile Team Management

4

#Acheivemore

WHY

Page 5: Applying Agile Team Management

5

why agile

“relating to or denoting a method of project management, used especially for software development, that is characterized by the

division of tasks into short phases of work and frequent reassessment and adaptation of plans”

what does it mean?

Page 6: Applying Agile Team Management

6

why agile

• Quickly adapt and optimize for changing conditions / environments

• Save money, build the right product, innovate faster, stay competitive

what are the benefits?

Page 7: Applying Agile Team Management

7

why agile

• NO – Being agile does not mean you need to know C++

• Examples:• Developing people and teams

• Project management

• Software development

• Energy portfolio management

• Starting a company

• Sports

do I have to be a software developer?

Page 8: Applying Agile Team Management

8

why agile

example: waterfall vs agile

Waterfall:

Defined deliverables, timelines, roles

Requirements

Implementation

Testing

Deploy

Design

Maintain

Page 9: Applying Agile Team Management

9

why agile

Waterfall• Pros: Predictability

• Cons: Lack of flexibility and slow to respond to changes

• Challenge: Software changes so fast, needed a better way to respond faster to new requirements and customer feedback• Now seeing this in other industries and other parts of the business

example: waterfall vs agile

Page 10: Applying Agile Team Management

10

why agile

example: waterfall vs agile

Agile:

Incremental, iterative, feedback

Iteration 1

Iteration 2

Etc.

Requirement

Design/Analysis

Implementation

Testing

Deployment

User feedback

Page 11: Applying Agile Team Management

11

why agile

Agile• Pros: Flexible and adaptable

• Cons: Unpredictable, need to be comfortable with release a sub optimal product

example: waterfall vs agile

Page 12: Applying Agile Team Management

12

#Acheivemore

HOW

Page 13: Applying Agile Team Management

13

how to be agile

Agile focuses on …

“Individuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan”

Agile manifesto drafted in 2001

Page 14: Applying Agile Team Management

14

how to be agile

• Scrum• Backlog creation

• Sprint planning

• Daily scrum

• Retrospective

• Backlog refinement

• Self forming teams

methodologies and tools in software

Page 15: Applying Agile Team Management

15

how to be agile

• Understand goals/requirements

• Task planning

• Execution

• Feedback

• Refinement

• Repeat

key principles in general

Understand Requirements

Tasks

ExecutionFeedback

Refinement

Page 16: Applying Agile Team Management

16

how to be agile

• Spend time with your stakeholders (users, customers, team) to truly understand what it is you are trying to achieve

• Sometimes the goals/requirements will not be totally clear … that’s ok, you’ll be doing multiple iterations

Tip: Be careful to get trapped in “analysis paralysis”. Timebox yourself and move forward.

understand goals/requirements

Page 17: Applying Agile Team Management

17

how to be agile

• Based on your goals, create high level tasks

• Break down these high level tasks down into smaller tasks

• Stack rank the tasks based on priority and level of effort (i.e. 80/20 rule, go for the long hanging fruit first)

• Often referred to as “backlog creation”

Tip: Break down the tasks until they can be completed in less than 1 day

task planning

Page 18: Applying Agile Team Management

18

how to be agile

• Take items off the top of your backlog and add them to your “sprint”

• A sprint is a defined time period in which you will complete a set of tasks/features and release them to your users for feedback

• Sprints are typically 1 week, 2 weeks, 3 weeks … 4 weeks at most

• Use a Kanban to track your tasks (To Do, Doing, Done)

• As you progress through the sprint, do a check in every morning with the team (daily scrum). Keep this short, talk about:

• What was done yesterday,• What will be done today

• Roadblocks

execution

Page 19: Applying Agile Team Management

19

how to be agile

• Meet with your stakeholders, provide a demo of your product and then get it in the hands of users

• Collect feedback from your stakeholders/users and ensure it is indeed achieving their goals

• Questions to ask: what’s working, what’s not working, what can be improved, are we on the right track?

feedback

Page 20: Applying Agile Team Management

20

how to be agile

• Based on feedback from your team, review your last sprint and and determine what was done well and what can be improved (retrospective)

• Based on feedback from your stakeholders, review your backlog and add, remove and reprioritize tasks

refinement

Page 21: Applying Agile Team Management

21

how to be agile

repeat

Page 22: Applying Agile Team Management

22

#Acheivemore

WHAT

Page 23: Applying Agile Team Management

23

applying agile

example: to improve your product

Product roadmap

EngineeringCustomer/User

Rallyteam

Weekly Feedback Tasks Prioritized

Implement & DeployUsers Notified

Page 24: Applying Agile Team Management

24

applying agile

• Recently needed to develop new reporting features for customers

example: to improve your product

Page 25: Applying Agile Team Management

25

applying agile

• Step 1: Understanding their goals and requirements

“We would like a data extract of the number of active users and projects in Rallyteam. We will give this to one of our reporting analysts who will import this into their own reporting tool”

example: to improve your product

Page 26: Applying Agile Team Management

26

applying agile

• Step 2: Task Planning

example: to improve your product

Page 27: Applying Agile Team Management

27

applying agile

• Step 3: Execution

example: to improve your product

Page 28: Applying Agile Team Management

28

applying agile

• Step 4: Feedback

What’s working? What’s not working?

“Our reporting analyst is no longer available, but we can create a pivot table off of the data extract.”

“The numbers are not making sense. We’re seeing duplicate records.”

What are you trying to achieve with these reports?

“We would like to use these reports to identify unmatched users and projects to help staff them”

example: to improve your product

Page 29: Applying Agile Team Management

29

applying agile

• Step 5: Refinement

example: to improve your product

Page 30: Applying Agile Team Management

30

applying agile

• Step 6: Repeat

example: to improve your product

Page 31: Applying Agile Team Management

31

applying agile

• Using Agile to develop your people

• Using Agile to build “Elastic” teams

example: to develop and grow your team

Page 32: Applying Agile Team Management

32

applying agile

• Understand career goals

• Conduct gap analysis

• Put together development plan

• Execute development plan

• Bi-weekly touchpoints

• Refinement

• Repeat

example: to develop your team

Understand Team Goals

Development Plan

ExecuteBi-weekly

Touchpoint

Refinement

Page 33: Applying Agile Team Management

33

applying agile

• Step 1: Understanding your employee’s goals

• What job would they want to apply for next?

• Look at real job descriptions

• “I think I want to be a … “

example: to develop your team

Page 34: Applying Agile Team Management

34

applying agile

• Step 2: Conduct a gap analysis

• Based on the job descriptions identify the common skills

• List the common skills in a spreadsheet and for each skill have the employee do a self evaluation

example: to develop your team

Page 35: Applying Agile Team Management

35

applying agile

• Step 3: Development Plan (Task Planning)

• Based on the skills gaps, put together a list of projects/tasks for the employees that will help fill these gaps

• Add these to your development plan/backlog

example: to develop your team

Page 36: Applying Agile Team Management

36

applying agile

• Step 4: Execution

example: to develop your team

Page 37: Applying Agile Team Management

37

applying agile

• Step 4: Feedback

• Bi-monthly meetings

• Discuss• What was completed?• What is outstanding?• What’s working? What’s not?• Any roadblocks• Is this still inline with your career goals and

expectations

example: to develop your team

Page 38: Applying Agile Team Management

38

applying agile

• Step 5: Refinement

example: to develop your team

Page 39: Applying Agile Team Management

39

applying agile

• Step 6: Repeat

Benefits:

• Help guide employees down the right path

• Provide clear objectives to promotion and career goals

• Identify the necessary resources to achieving these goals

example: to develop your team

Page 40: Applying Agile Team Management

40

applying agile

• Understand company/team goals

• Project/resource planning

• Execute (hire resources)

• Regular feedback from team

• Refinement

• Repeat

example: build an “Elastic” team

Understand Goals

Resource Plan

ExecuteFeedback

Refinement

Page 41: Applying Agile Team Management

41

applying agile

example: build an “Elastic” team

Elastic ComputingTraditional Computing

VS

Page 42: Applying Agile Team Management

42

applying agile

example: build an “Elastic” team

Elastic TeamsTraditional Teams

VS

Page 43: Applying Agile Team Management

43

applying agile

• Constantly expanding and contracting teams depending on workload

• Have a “base” set of full-time employees that are full stack (i.e. jack of all trades) and “A” players

• Have a “variable” set of contractors that come in and help with specific tasks or projects

• Benefits: Cost efficient, higher engagement

• Tip: Have your employees help select which projects/tasks to outsource

• Like cloud computing, you need the technology to help you quickly and easily scale up/down your team

example: build an “Elastic” team

Page 44: Applying Agile Team Management

44

rallyteam

your private talent marketplace

Page 45: Applying Agile Team Management

45

rallyteam

how it works

Databases Marketing

Others …

Skills / Interests

Contractor/Employee

Need database help

Project

Rallyteam Matches

Page 46: Applying Agile Team Management

46

applying agile

Other areas we have applied agile:• Marketing

• Sales

• Product

• Quality assurance

• Support

Challenge: Where can you apply Agile at your organization?

@RallyteamApp

all areas of the business

Page 47: Applying Agile Team Management

47

#Acheivemore

THANK YOU

rallyteam.com/resources

[email protected]