jdd2014: game of throneware, or how not to get killed when a developer becomes a manager - jakub...

86
Game of Throneware or how not to get killed when a developer becomes a manager

Upload: proidea

Post on 01-Jul-2015

105 views

Category:

Software


2 download

DESCRIPTION

You are a good developer, each year you learn more, each year you earn more. You become senior, you become architect, chief architect, chief principal officer architect, and, one day, you are at the top-payroll level, and there is no place to go. You are happy with what you do, but your wife/husband/bank keeps asking for more. What do you do? You go to middle management. What happens, when you become a manager? How do you organize teams, workspace? How do you help people? How do you deal with politics, communication? What has the position of your desk to do with the architecture of your systems? How do you make decisions?

TRANSCRIPT

Page 1: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Game of Throneware

or how not to get killedwhen a developer becomes a manager

Page 2: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Jakub Nabrdalik

10+ years asBusiness Analyst

Software DeveloperTeam Lead

Program ManagerProduct OwnerScrum Master

Solution/Software ArchitectHead of Software Development

Page 3: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Chapter 2How a developer becomes a manager

Page 4: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 5: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 6: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Lesson 1: all man must die

Page 7: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Lesson 2: dead men cannot help their teams

Page 8: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Lesson 3

Page 9: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 10: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 11: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 12: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Why building a companyis different from building software

Chapter 3

Page 13: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

there is an app…a book for that

Page 14: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 15: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 16: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Complexity

One thing I learned, painfully, is that no matter what you plan for the system, it is not going to happen. The world doesn’t work that way. The system you live in doesn’t care about your plans. You may think that A leads to B, and in theory, you might even be right. But theory rarely works in practice, and predictability has a devious sister named complexity.[Jurgen Appelo; Management 3.0]

Page 17: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

No silver bullet: what can you do?

experiment

observe, listen

adapt

Page 18: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

It’s not a tutorial, it’s a case study

Page 19: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Chapter 4Politics and communication

Page 20: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 21: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 22: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 23: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Lesson 1: for direct people

Page 24: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Before you talk, think about what goal you want to achieve, and whether what you’ll say is bringing you closer to the goal.

Page 25: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Compare

This idea is completely stupid, and impossible to implement with our teams!

Page 26: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Compare

This idea is completely stupid, and impossible to implement with our teams!

It’s an interesting idea, but I have doubts whether it suits our situation. Can you create a proof of concept for that?

Page 27: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Lesson 2: for simple people

Everyone has an agenda

Learn what the other party wants, and use it (align their goal with yours)

Page 28: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Example: Linux

Page 29: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Example: consulting

Page 30: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Lesson 3: body language

Page 31: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 32: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 33: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Lesson 3: body language

The less direct the channel of communication, the more likely you are, to be misunderstood

face2face > video > chat > email

Page 34: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Organize things

Chapter 5

Page 35: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

system architecture vision document

how people are split into teams

where your desk is located

What is more important?

Page 36: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

System architecture vision document

"Organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations"M. Conway

Page 37: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

How people are split into teams

"Your team structure will override any architecture you have" Jeffrey Sologov

Conclusion:small (scrum) teams = microservices

Page 38: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Where your desk is located

Page 39: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Where your desk is locatedFap setup

Page 40: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Where your desk is locatedFap setup

advantages:porn time!privacy!ogame!

disadvantages:teams? R U kidding?

Page 41: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Teams

Designated group of people, is not a team

Team is a group of people that works together, on a common goal

Page 42: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Where your desk is locatedIsle setup

Page 43: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Where your desk is locatedIsle setup

advantages:some privacysome cooperationsome porn

disadvantages:I need to get up? F you!

Page 44: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Where your desk is locatedTeam setup

Page 45: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Where your desk is locatedTeam setup

advantages:turn around/lean to helpself controlling systemself motivating cultureopen

disadvantages:no porn

Page 46: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 47: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

system architecture vision document

how people are split into teams

where your desk is located

It has to go together!

Page 48: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Decision making

Chapter 6

Page 49: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Here are the tasks. Now do it!

Page 50: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Explaining WTF to your people is never on the picture!

Thus:decisions which (from other’s perspective) make no sensedecisions which (from other’s perspective) are bad for people and business

Page 51: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Engineers are built to solve problems

Throw a problem at themDescribe the constraintsLet them find a solution

but have your solution ready in case they won’t

Page 52: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Engineers accept a smart leader

Page 53: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Engineers accept a fair leader

Page 54: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

How to be smart & fair?

Page 55: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

How to be smart & fair?

Easy: just don’t be unfair & stupid!

Page 56: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

How not to be unfair and stupid

trusttransparencyfairnesscooperation

Page 57: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Fairness

make the reasoning publicinclude all the partieslisten to everyone who has something to say

Page 58: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Fairness

Even if people do not agree, they will understand WHY a decision was made

Engineers accept REASONABLE decisions, even when they do not agree

Page 59: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Cooperation

Responsibility always comes with power

Empower people, and let them decide

Self organized teams

Page 60: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Self organized teams

What about a Team Leader?- watches for interpersonal problems- breaks impasse- veto right

Plan minimum (your expectations)- retrospectives (join, publish)- standups

Page 61: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Who said you have to have just one model?

Hiring - delegation/democracyReview - democracyTech problem - meritocracyOperating system - anarchyNew office design - feudalism

Decision making model

Page 62: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

The sad truth

Chapter 9

Page 63: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

meetings, end of flow

Page 64: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Having goals helps you get through

My goals:- make our development scalable- make 4finance the best place to develop- hire the best people- create culture of learning and improvement

Page 65: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

But I wanna code too

Page 66: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Solution 1: Right Hand

Page 67: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Solution 2: Pair Management

Page 68: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Solution 3: Boy-scouts

Page 69: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Solution 4: MMA

Page 70: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

No matter what you dobe an engineer

Page 71: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Problem with (free) time

Chapter 7

Page 72: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

A dev always have something to do, even in an imaginary situation when his backlog is empty (learning, coding, games, porn)

What does a full-time scrum master do, when he has nothing to do?

Page 73: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

Good people do, what they can

Page 74: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

The people that do not code

Scrum masters optimize processes They do not stop on bottlenecks

Scrum masters need more meetingsEngineers hate meetingsEngineers do not work on meetingsProblem?

Page 75: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

But: innovation happens only when you have time to innovate

Page 76: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

You can have too much chocolateYou can have too much agile

Chapter 8

Page 77: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 78: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik

soft(s)killswork it out

Chapter 1

Page 79: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 80: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 81: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 82: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 83: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 84: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik
Page 85: JDD2014: Game of Throneware, or how not to get killed when a developer becomes a manager - Jakub Nabrdalik