applying agile team management

Post on 20-Mar-2017

146 Views

Category:

Business

6 Downloads

Preview:

Click to see full reader

TRANSCRIPT

#Acheivemore

Huan Ho

Cofounder/CTO, Rallyteam

HR WEST 2017Applying 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

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

4

#Acheivemore

WHY

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?

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?

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?

8

why agile

example: waterfall vs agile

Waterfall:

Defined deliverables, timelines, roles

Requirements

Implementation

Testing

Deploy

Design

Maintain

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

10

why agile

example: waterfall vs agile

Agile:

Incremental, iterative, feedback

Iteration 1

Iteration 2

Etc.

Requirement

Design/Analysis

Implementation

Testing

Deployment

User feedback

11

why agile

Agile• Pros: Flexible and adaptable

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

example: waterfall vs agile

12

#Acheivemore

HOW

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

14

how to be agile

• Scrum• Backlog creation

• Sprint planning

• Daily scrum

• Retrospective

• Backlog refinement

• Self forming teams

methodologies and tools in software

15

how to be agile

• Understand goals/requirements

• Task planning

• Execution

• Feedback

• Refinement

• Repeat

key principles in general

Understand Requirements

Tasks

ExecutionFeedback

Refinement

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

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

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

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

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

21

how to be agile

repeat

22

#Acheivemore

WHAT

23

applying agile

example: to improve your product

Product roadmap

EngineeringCustomer/User

Rallyteam

Weekly Feedback Tasks Prioritized

Implement & DeployUsers Notified

24

applying agile

• Recently needed to develop new reporting features for customers

example: to improve your product

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

26

applying agile

• Step 2: Task Planning

example: to improve your product

27

applying agile

• Step 3: Execution

example: to improve your product

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

29

applying agile

• Step 5: Refinement

example: to improve your product

30

applying agile

• Step 6: Repeat

example: to improve your product

31

applying agile

• Using Agile to develop your people

• Using Agile to build “Elastic” teams

example: to develop and grow your team

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

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

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

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

36

applying agile

• Step 4: Execution

example: to develop your team

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

38

applying agile

• Step 5: Refinement

example: to develop your team

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

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

41

applying agile

example: build an “Elastic” team

Elastic ComputingTraditional Computing

VS

42

applying agile

example: build an “Elastic” team

Elastic TeamsTraditional Teams

VS

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

44

rallyteam

your private talent marketplace

45

rallyteam

how it works

Databases Marketing

Others …

Skills / Interests

Contractor/Employee

Need database help

Project

Rallyteam Matches

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

47

#Acheivemore

THANK YOU

rallyteam.com/resources

huan@rallyteam.com

top related