S3:E03 - Timeboxing
S03:E03

S3:E03 - Timeboxing

Episode description

In this episode of ‘The Retrospective,’ we dive into the topic of timeboxing as a method for engineering management. We start by explaining what timeboxing is and how it differs from time blocking. We then discuss its application in managing delivery, emphasizing the importance of fixing time while allowing scope to vary. We also cover practical benefits like simplifying planning, managing technical debt, and creating a predictable cadence for stakeholders. We round off with common pitfalls to avoid and tips for implementing timeboxing effectively in your team.

Download transcript (.srt)
0:06

Péter (2): Hello everyone.

0:07

Welcome back to The Retrospective.

0:09

As you know, this is an engineering leadership podcast where we give

0:14

advices and share our experience, on engineering management and

0:18

engineering leadership topics.

0:21

With me here is our regular host, Jeremy.

0:23

And I'm Peter , the co-host, and for new listeners, we have a format where

0:28

we are focusing every episode on one single topic targeted at engineering

0:33

managers and technical leaders who are interested in generic leadership topics.

0:38

This time, it was on Jeremy, on you to bring a topic.

0:41

So I'm curious, what did you bring to us?

0:44

Jeremy (2): Yeah.

0:44

it's great to be here with you, Peter.

0:46

the topic I wanted to talk about is, something near and dear to my

0:49

heart, which relates to delivery.

0:52

delivery is one of the key things that, engineering managers are

0:55

responsible for, the topic I wanted to talk about was really.

0:59

focusing on time boxing and using time boxing as your main

1:02

method to manage, delivery.

1:06

Péter (2): Awesome.

1:06

What is time boxing?

1:09

Jeremy (2): Well, it's not time blocking... fundamentally.

1:14

Time boxing is a principle, that you then apply.

1:17

the principle of time boxing, basically, is that you block a period of time

1:22

to do a task or a project, and you stick to that timeframe basically.

1:28

In a project, normally you have what you're gonna do, and you have the timeline

1:33

and you have maybe the people as well.

1:35

And so what you actually do is you fix the number of people.

1:38

ideally you fix the time, but you allow the scope to change in time boxing.

1:43

in traditional project management, you are actually, Usually having variable, scope.

1:48

'cause as you build you do more and you may also try and add

1:51

more people or do other things.

1:53

So time boxing is really trying to limit, and then still deliver something.

1:57

the principle of time boxing is really well known to most people because,

2:02

when people say they're working in agile and they're often using

2:05

sprints, one week sprints, two week sprints, whatever, and time boxing is

2:09

a fundamental principle of sprints.

2:12

Péter (2): so this is basically like scrum sprints rebranded in a different way.

2:18

Jeremy (2): Important thing is to understand that this is the

2:19

principle behind sprints then, to understand the power of that.

2:25

And then, all I'm saying is, when you're doing projects, I would suggest

2:29

that you apply this principle to your projects as well, even if you're using

2:33

sprints as part of your delivery.

2:35

or you could be using Kanban or whatever.

2:37

the idea that I'm proposing is that you apply time boxing to the bigger level

2:42

projects and not just to your sprint or whatever that you're already doing.

2:47

Péter (2): Okay.

2:48

maybe we can get into a little bit deeper about the problems this is solving.

2:53

Like, how do you diagnose traditional project management and how time

2:57

boxing is solving those problems, or what are the problems it's solving?

3:01

Jeremy (2): Yeah.

3:02

so I think what I see a lot of companies doing, and a lot of places

3:09

I've worked in, is some element of, been called water scrum fall.

3:15

So kind of like, high level.

3:16

planning process and project planning process that's kind of waterfall.

3:21

a lot of high level requirements, documents, design documents,

3:25

pre-plan out, big project.

3:26

And then you do, scrum, as a kind of approach to each

3:31

your way through that project

3:32

Péter (2): like a way to manage the work that was predetermined.

3:35

Jeremy (2): Exactly.

3:36

And then we just see how much of that we pull into this sprint.

3:39

We plan it out.

3:40

maybe we allow some time in the sprint for run activities that are regular stuff that

3:45

comes up, people's holidays, et cetera.

3:47

But you are, you're basically.

3:49

biting your way through the project backlog that you already pre-planned.

3:53

And then

3:54

Péter (2): Mm-hmm.

3:54

Jeremy (2): on your release process, you may also have a waterfall release.

3:57

you may be hopefully deploying regularly or on demand.

4:01

But, there can often be even a waterfall release approach to.

4:06

the actual project going out.

4:07

I think the problem with that approach that when you do a

4:12

project, when you do some work.

4:15

discover I need to make another decision here As I encounter something,

4:19

I learn something as I do the work.

4:21

And what you discover is, oh wow, there's this five more things

4:25

I need to do or this extra edge case that I need to take care of.

4:29

so as you do the project, your backlog of the project is expanding.

4:33

It's not getting smaller, it's getting bigger.

4:35

And there's all these new ideas that you have.

4:37

And then you go down this rabbit hole and you build this extra thing.

4:41

And, um.

4:42

Your project exploded.

4:44

And what happens is that business is saying, why is this taking so long?

4:49

You're not delivering any results.

4:51

Um, and, and like, we all get fixated on, oh.

4:55

You know what?

4:55

I learned all these new things and I can't release this now

4:58

because it's not perfect anymore.

4:59

I have a fear based on, oh, I wish I could just polish this thing

5:04

a bit more before I release it.

5:06

we get dragged into all of these perfectionist tendencies as well.

5:11

And then we try and do lots of crazy things in organizations.

5:14

Like we have even more detailed estimation.

5:18

Let's estimate out the whole project with story points.

5:20

do super advanced, capacity planning for the quarter where you take all of your

5:26

projects highly detailed estimates I keep getting challenged on why is that a

5:30

large, so I need to go to a super detailed estimate to explain why this is large.

5:35

I spend so much time planning and building the infrastructure around

5:40

my delivery and I'm actually spending less time on the value delivery part,

5:45

the thing that makes a difference for the customer or for the business.

5:48

Péter (2): Yeah.

5:49

. software development is a creative work, by nature.

5:53

If you want a hundred percent precise estimates, you need to do the wall work.

5:57

you need to face those hard problems.

5:59

it's just absurd because, you have a six weeks project and the

6:02

first four weeks you estimate if you can fix into it or, or, or.

6:06

Fit into it or not.

6:08

that's a typical problem and the solutions we come up with sometimes

6:12

are also typical, like, delay the project, delay the release, increase

6:16

the headcount, to try to fit into the deadline or wrong solutions.

6:20

Jeremy (2): Add another person.

6:22

This is like a super, I think I've got it right next to me

6:26

on the shelf, but you know, the mythical man month, you know, let's

6:28

Péter (2): Yeah.

6:29

Jeremy (2): some more people at it.

6:30

It'll go faster.

6:31

The reality is throw more people at it.

6:33

They have to have more context.

6:35

There's more communication needed in the project.

6:38

We go slower, so.

6:40

Péter (2): Yeah, yeah, yeah.

6:41

Exactly.

6:41

Exactly.

6:42

Jeremy (2): Yeah.

6:43

Yeah.

6:44

Péter (2): Yeah.

6:45

Jeremy (2): this is why

6:46

Péter (2): Why I, I,

6:47

Jeremy (2): I really prefer,

6:48

Péter (2): prefer.

6:49

Jeremy (2): as an approach because, it's based on this other idea,

6:53

from what's called a Parkinson's law, which is basically that work.

6:57

Expands, to fill the time allotted to it.

7:00

and time boxing inherently acknowledges that.

7:04

And it works with the fact that that's what happens.

7:07

so I think it's a way to, Reduce the amount of things that you have to do and

7:13

get to, more of an incremental shipping value and learning, in smaller chunks.

7:18

In a, in a, in a lighter weight way, I would say.

7:22

You, you can potentially, and, and maybe controversially, you

7:25

could get rid of story points.

7:27

You could, I mean, potentially it, I think it's an enabler for

7:30

Kanban, potentially as well.

7:32

I mean, you choose the method that works for you in the end.

7:34

I don't really think it matters if it works for the team, but it definitely

7:38

Péter (2): They're definitely around.

7:39

Jeremy (2): Force yourself to get something out the door and,

7:41

I think it's a forcing, I think that that's the main thing.

7:43

It's a forcing function, a lighter weight forcing function to get stuff done.

7:49

Yeah.

7:49

Péter (2): I would like to make this very explicit, like you have these three

7:52

variables, the time, the scope, and the resources, like how many people you have,

7:58

and you make a very conscious decision that you're just gonna put a pin on

8:02

the time, like that's gonna be fixed.

8:04

Everything else.

8:05

I mean, resources don't change, I guess so.

8:08

Jeremy (2): yeah, you

8:08

Péter (2): 'cause.

8:08

Jeremy (2): re the people as well.

8:10

I would definitely say you try and fix two variables out of the three.

8:14

Péter (2): Okay, so, but this means that there is a lot of flexibility

8:16

on the third because projects are changing, we have new information.

8:20

so I guess this is what time boxing is like, let's put aside resources

8:24

now and consider fixed teams because, a lot of organizations don't change

8:28

teams around, in the short term.

8:31

you have two variables, the time and the scope, and you say.

8:34

I'm gonna fix the time and let's see what happens, right?

8:37

So this is time boxing essentially,

8:39

Jeremy (2): That's exactly it.

8:40

Péter (2): and I.

8:41

Jeremy (2): like a couple rules related to this to make this work.

8:44

which is that whatever time box you set, you need to ship something.

8:50

You don't expand the time box.

8:51

Like our initial feeling is always, oh, so close to this time box.

8:56

Péter (2): I just had one more day, like I even saw people working on weekends.

9:00

Just to finish the Friday stuff during the weekend because

9:03

it's such a strong pressure.

9:05

Yeah.

9:05

Jeremy (2): Weeks are kind of an inherent time box that we've

9:07

created as humans for ourselves.

9:09

Uh, we, we don't always recognize that.

9:12

And the day is a time box that, you know,

9:15

Péter (2): Yeah.

9:15

Jeremy (2): time box that nature imposes on us.

9:18

Péter (2): Hmm.

9:19

Jeremy (2): the moments in between meals are time boxes that nature imposes on us.

9:23

what I like about this rule is it's a forcing function for the

9:26

conversation about what scope do we cut and, ideally as early as

9:31

possible to still make the time box.

9:34

so I think that's like the first rule.

9:35

Péter (2): Quick question on this.

9:37

yeah, really something before the time box ends.

9:39

That's, that's the first rule.

9:41

Why is there so much emphasis on releases?

9:43

, Cannot we say that, okay, we are done with this task, this is ready for release, but

9:47

maybe we have some, regulatory reasons.

9:50

Maybe there are training materials that needs to be done.

9:53

not every organization can just quickly release something, to the wide.

9:57

Maybe there are on-prem clients and, and so why is this emphasis on release?

10:01

Jeremy (2): I think I'll answer this by giving you the second rule of the

10:06

Péter (2): Sorry for interrupting.

10:07

Jeremy (2): it's okay.

10:09

No, no, it's really, it's valid, right?

10:10

so the second rule is you get to the end of the time box no matter what.

10:14

You stop working and you review your progress and you look back and you

10:18

retrospect and you say, what did we learn?

10:22

The reality is that,

10:26

can mean lots of different things depending on what you're doing.

10:29

It could be, that we put the dock out for a review.

10:33

it could be that we have a prototype, that we can do some user testing with it.

10:39

It could mean that we have it.

10:41

And it's not ready to be turned on in under feature flag

10:44

with users, but it's there.

10:46

the really important part is you reflect at the end of the

10:50

time box of what you learn.

10:51

And then there's another part of it, which is, you ask yourself,

10:55

do we spend more time on this?

10:57

Is this worth still spending more time on?

11:00

And then you allocate another time box, towards the activity

11:04

if you feel like that is because.

11:06

The reality is that most projects, require multiple time

11:11

boxes, to get the end result.

11:13

But, from an engineering perspective, I would say maybe there's a third

11:16

rule I could add, which is no.

11:19

project Time box should be bigger than six weeks.

11:22

Péter (2): Mm.

11:22

Jeremy (2): which means

11:23

Péter (2): That's more like a practical implementation thing, right?

11:26

Jeremy (2): yeah, but I think a lot of projects like that we do,

11:30

they take a quarter, you know?

11:32

Péter (2): Yeah.

11:32

Jeremy (2): want people to work in smaller, time boxes within that.

11:37

Even though we all say, yeah, we want to keep working on this.

11:40

it makes us reflect back and say, well, okay.

11:43

gonna need to do another six weeks on this.

11:46

What is the outcome that we want at the end of that six weeks?

11:50

And rather than just running for 12 weeks for something, uh, and then thinking

11:55

about it, it's really having that kind of like, that, that reflective moment.

12:00

and this goes back to the other part that I think on a high level part

12:03

of, of time boxing, which is that you use time boxes like this, of.

12:10

what are we going to do, for the quarter, and then doing this heavy

12:13

capacity planning and saying, okay, I can do this Tetris of these projects,

12:17

and then this combination of projects so I can commit to these goals.

12:21

You can say priority one is this.

12:24

Priority two Is this priority three?

12:25

Is this priority one?

12:27

I'm gonna spend two six week.

12:30

Time boxes on it with, two people of, of, or three people of the team in it.

12:35

Priority two, I'm going to do, a six week project with two other people and priority

12:40

three, I'm gonna do a spike of two weeks time box to learn something about it.

12:46

your planning becomes appetite and priority based upfront, and is so much

12:51

simpler your scope is gonna change.

12:55

And you have some ambitions in the goals and so on.

12:58

, But, , you don't have to do all this complex Tetris

13:01

planning, which is all in a way.

13:03

Anyway, it's all finger in the air stuff.

13:05

Right.

13:05

You never really, I mean, no.

13:06

Estimates are really, I don't like, I think as an industry

13:09

we're moving away from estimates.

13:11

so yeah.

13:13

Péter (2): Okay.

13:13

I really like two aspects of what you were saying.

13:15

one is that, to answer my question, why is there an emphasis on releasing something?

13:20

And it really ties to the second rule about, stopping when the

13:24

time sends and reviewing progress.

13:26

and the key insight for me is that.

13:29

In order to efficiently review the progress and learn from what you

13:33

did, you need outside feedback.

13:35

you need to get something from the outside, from your users, your

13:39

colleagues, your sales team, whatever.

13:41

And this is why releasing something, getting something out

13:44

of the scope of the team and, to increase, the value of feedback.

13:47

And, and the second thing I really liked is you were talking about outcomes.

13:51

it's, I think it's really, like I had an experience earlier when I was

13:54

leading platform teams and, we wanted to try, cloud development, tools.

14:00

But we called the whole initiative improving the local developer experience.

14:07

And one of the spikes was only to figure out, if cloud development is

14:12

mature, mature enough for our goals.

14:14

And it was really good because we found out that no, it's not, and

14:17

actually the problems are in different areas in the development pipeline,

14:21

and we could focus on that without having to change the project or go

14:25

into a rabbit hole of implementing something that was not needed.

14:28

So because the outcome was improving the local developer experience.

14:33

We had the freedom to experiment with various stuff.

14:36

Jeremy (2): Exactly.

14:37

And, I think if we move on to like, what are the practical kind of ways

14:40

Péter (2): Yeah, yeah.

14:41

Yeah.

14:42

Jeremy (2): I think this is a really good segue into that because, I would give some

14:45

very high level guidance on this, which is you have a project or an initiative.

14:52

Divided into six week chunks.

14:55

So maximum six weeks, Why six weeks?

14:57

I think six weeks is just about long enough to really build something

15:03

relatively significant and ship it.

15:05

it's interesting because that kind of time box has emerged from multiple places.

15:10

it's actually interesting 'cause it's part of the Shape Up approach where they

15:14

work in these six week cycles and then a cool down Shape Up really focuses on the

15:18

whole org working on a rhythm like that.

15:20

and that can work.

15:21

but there's other companies as well, I think have blogged about

15:24

this kind of six week time box,

15:27

I can't remember.

15:27

I think it might be Intercom and a couple others that have put it out there.

15:31

It seems to have emerged as something that that's reasonable.

15:35

you can fit a few of those into a quarter, and so on.

15:37

So I think it works, well as like your upper time bound

15:40

for an increment of a project.

15:43

It is kinda like turtles all the way down.

15:46

it's kind of like a time box.

15:48

We talked about setting an outcome for what am I trying to achieve?

15:52

a guidance for what you should have as an outcome is a change in human

15:56

behavior that impacts business results.

15:59

Péter (2): Unplug that a bit.

16:00

'cause there, like, I feel like this is those kind of sentences where

16:03

every word has a reason to be there.

16:05

So just briefly, it's a short rabbit hole, but I'm curious

16:09

Jeremy (2): Changing human behavior.

16:10

So human behavior is measurable.

16:12

It's something that you can measure, you know, users are able to do this

16:15

thing or users do this thing, and you can measure, like ship a feature

16:20

Péter (2): before,

16:21

Jeremy (2): the

16:21

Péter (2): but it's the feature, it's gonna

16:23

Jeremy (2): a behavior

16:23

Péter (2): behavior.

16:24

Jeremy (2): a behavior.

16:25

So you should be able to measure that at some point afterwards, right?

16:28

linking it to business results.

16:30

So it has to have an impact, right?

16:31

It's not just a random thing.

16:33

now.

16:34

Engineers can get really hung up on this, especially on technical things,

16:38

but I think that human can be internal.

16:41

can be, , the, the going faster, giving feedback.

16:47

It can be, we spend less time investigating flaky tests.

16:51

Péter (2): Yeah.

16:51

Jeremy (2): can

16:51

Péter (2): Yeah.

16:52

Jeremy (2): so, you know, like I, I do think this, this, this kind of outcome

16:55

approach, it's really important.

16:57

It's not ship a feature or ship this much of a feature.

17:01

so I think it's important.

17:01

Then the second part.

17:03

Breaking this down is you don't just have the six week time box if

17:07

that's your max or, or whatever.

17:09

You need to chop that up into some time boxes.

17:13

I like to say maximum two weeks of, and those are milestones, right?

17:19

but if you can do one week this outcome, and again, those are

17:24

outcome, outcome, outcome, right?

17:26

so that's why I say

17:27

Péter (2): And shipping, shipping, shipping.

17:28

Also like you want teams to ship something at the end of a milestone also.

17:33

Jeremy (2): Do a demo.

17:33

Ideally, you should be merging your code every day, and it should be going into

17:37

production, but maybe you're under a feature flag, some of those milestones we

17:40

can actually, turn something on for users or, we can, enable in beta or we can do a

17:47

user test with the mocks that we've done.

17:50

But like, those are all shipping that we can do.

17:53

But yeah, those one, two week milestones really important also.

17:57

So you're, you're not just doing the forcing function at the

18:00

top, you're doing it all the way through, because what happens is.

18:03

If you don't do that, as you do work, oh, there's this other really interesting

18:08

thing that I need to do, you get diverted and you do this really interesting,

18:14

important thing, but you lose sight of the outcome I was trying to achieve,

18:20

which didn't need this thing to happen.

18:22

And I could have either stuck it in the backlog, I could document that we

18:25

should really look at this or whatever.

18:27

But like, if you can get from A to B. And maybe that's, you'd have

18:31

this conversation, the project.

18:33

Wow.

18:34

I'm only gonna be able to do Happy Path.

18:36

the scope, right?

18:37

That's a scope conversation.

18:39

You're having a conversation about the scope, but you're

18:42

obsessively focused on trying to hit the outcome of the milestone.

18:45

so that's, that's really important.

18:48

I do think then the other practical guidance I'd give is

18:52

names of your milestones and your your time box need to have.

18:57

Clear kind of outcome based naming.

18:59

So they don't just call it like technical things or A B, C, D or 1, 2,

19:03

3, 4, milestone 1, 2, 3, or whatever.

19:06

No.

19:07

Make it meaningful for someone looking at your project plan to understand and

19:12

like, what are you trying to achieve?

19:14

and then this goes to the final part, I would say, which is, visualize, create

19:18

the visualization of your progress.

19:20

that means like showing like on a high level your project plan, the

19:24

milestones, your progress, that, that can be Kanban, like a board

19:28

that you have in the team and so on.

19:30

But like visualizing, the project, projects together,

19:34

the time boxes together.

19:35

and

19:36

Péter (2): Yeah.

19:36

Jeremy (2): earlier, the really important thing in this is having a

19:42

conversation when scope starts to creep, D

19:45

Péter (2): Yeah.

19:46

Jeremy (2): Aggressively on the milestone that you're trying to

19:49

achieve, put it into the next time box for the project, as like, okay, this

19:54

is the extra things we need to do.

19:55

We got to the end of the time box.

19:57

We, over the project, six weeks, we realized actually we only

20:00

were able to build happy path.

20:02

We learned all these other things.

20:03

We definitely need to be able to do a second time box of two weeks

20:08

to make this something that can actually be turned on for users.

20:11

Great.

20:12

We learned a lot.

20:14

we still have an aggressive time box, which means that we need to get over

20:17

perfectionism and, the fear of shipping.

20:20

Péter (2): Yeah.

20:20

I really like this, I feel like this technique addresses the

20:25

inevitable, that scope is changing.

20:28

Things happen.

20:29

There's an incident in the middle of your sprint that takes a week

20:32

to resolve all kind of things, and acknowledging that these diversions

20:38

and unplanned things will happen.

20:40

It creates a recipe for how to handle those, and the recipe is

20:45

don't push the deadline, don't push the end of the time box out.

20:49

Because that's just gonna have verse implications.

20:52

Focus on the scoping and releasing something and get those learnings,

20:56

get those feedbacks so your next time books can be more valuable and

21:01

Jeremy (2): Yeah,

21:02

Péter (2): and deliver results more aligned with business goals.

21:04

Jeremy (2): exactly.

21:05

And I think that the thing I would add to that is the other thing that

21:08

comes up when you're working is new stuff, new project, new thing.

21:13

And what time boxing allows you to do is to say we could do that when

21:17

this time box ends in two weeks.

21:21

Instead of pausing projects halfway and coming back to them, you say, let's,

21:26

okay, uh, is it okay if we start that in two weeks when this time box ends?

21:30

We have a natural point that we've forced our project to

21:33

end we can insert a new thing.

21:35

Péter (2): Perfect.

21:36

Jeremy (2): doesn't, it's less, I feel like it's less disruptive.

21:39

'cause you took your project to a natural.

21:42

Point that you aimed for from the beginning rather than a

21:45

pause at 80% done or 60% done and come back to it in two months.

21:50

so it allows you to do reality of engineering is I

21:54

had to do this extra thing.

21:56

yeah, and like in your example where you have an incident that took a week out

21:59

of the project, have to just slip of the outcomes that you're able to achieve.

22:04

Oh, we didn't work on that milestone for a week because of this instant.

22:08

Um.

22:09

re, we pushed stuff out.

22:10

The time box achieved less, but Okay.

22:13

You know?

22:15

Péter (2): I, I really like the aspect also that you mentioned with ShapeUp, that

22:18

it creates a predictable rhythm that can be extended to other departments also,

22:24

like if marketing knows that there is this six week cycle, if sales support, no.

22:30

Product management very important.

22:32

like product managers can reliably expect that after the end of six weeks, I can

22:38

rely on getting some kind of learnings that I can use in my next planning or

22:43

next, steps of coming up with features.

22:45

Yeah.

22:45

I like this predictable organization wide rhythm that this creates.

22:50

Jeremy (2): yeah, what I'm not arguing for here, 'cause ShapeUp has.

22:54

This kind of company rhythm, which is six weeks, two weeks, cool.

22:58

Down and, and then you have like, what are the things that we work

23:02

on in that six week time box?

23:04

I'm not arguing for that to be honest.

23:05

I think one of the issues with Shape Up that some companies have found

23:10

that engineering is too locked in that six week period and we need other

23:15

Péter (2): Yeah.

23:16

Jeremy (2): In a specific con context of Basecamp, the company their products

23:23

Péter (2): is like the Spotify model,

23:25

Jeremy (2): yeah.

23:25

Péter (2): right, the old famous model like that worked for them in those times.

23:29

Jeremy (2): I think the things that you need to learn from shape Up.

23:32

Extract the principles.

23:33

This principle of maybe six weeks

23:35

Péter (2): Technically

23:36

Jeremy (2): time bound for your project

23:38

Péter (2): you don't have to follow it all.

23:39

Jeremy (2): definitely don't force my teams to work in all six weeks.

23:42

Some projects are two weeks with a two week time box, and it's more about

23:46

Péter (2): more about,

23:47

Jeremy (2): might have three projects in flight or two projects in flight.

23:51

with different timelines,

23:52

Péter (2): mm-hmm.

23:53

Jeremy (2): and they may have different periods of cool down and so on in between.

23:56

I think it's very hard to

23:57

Péter (2): Very hard to.

23:59

Jeremy (2): whole engineering or whole company rhythm like that.

24:02

if it works for you, it works for you.

24:03

Péter (2): Yeah, I guess it's a secondary benefit.

24:05

Like if it works great, it's a nice to have, like, okay.

24:09

I'm trying to be mindful of time.

24:11

I have a quick question and then we should move on to how this goes wrong

24:14

and what are the pitfalls to avoid.

24:15

So my question is that, that, you seem to be downplaying the

24:19

importance of estimations, agreeably.

24:21

Like, we all know that they are never right.

24:24

But in order to figure out what you can fit into a time box, you need some kind

24:29

of estimations, you need some story points or t-shirt sizes or something.

24:32

So how do you resolve this conflict of estimations?

24:36

Nah, they, it's a waste of time, but on the other hand, I need to figure

24:40

out what to fit into the time box.

24:44

Jeremy (2): I think it's

24:44

Péter (2): I think it's much easier.

24:47

Jeremy (2): to say, these are my priorities, stack ranked.

24:51

Péter (2): Mm.

24:52

Jeremy (2): think it's much easier to say priority number one.

24:57

In my opinion, I would spend this much time and this many people

25:01

during that time box on it.

25:05

and to work with your planning on an appetite based approach,

25:11

based on priorities, and say, no.

25:14

Number three, we need to do something on it.

25:17

We can't just have number one take over everything, I only want

25:21

you to spend two weeks on it.

25:23

Péter (2): Mm-hmm.

25:23

Jeremy (2): And I just

25:24

Péter (2): Mm-hmm.

25:24

Jeremy (2): spike and learn this thing.

25:26

Maybe it's going to inform the next quarter, right?

25:30

But we need to be able to have done that to go into the next quarter.

25:34

if you're working in this way, you need to have, some basics, like

25:38

being able to ship really quickly.

25:40

Time boxing goes all the way down to the tasks that you plan, like

25:43

planning tasks breaking down.

25:45

You should be able to break down the tasks that you're going to do

25:49

in the current week or whatever into A task that takes a day max.

25:55

basically you are, decomposing your work.

25:58

um, ultimately this goes more to the kind of idea of counting the number of tickets

26:02

to see your, velocity and you plan and break down your work into small enough.

26:07

tasks.

26:07

You break everything down into one story point size whatever, like small

26:12

size, whatever that is for you and you.

26:14

And then you just count those and, and in a way you still can calculate your

26:17

velocity, uh, or you can predict it.

26:20

But, um, the whole point of time boxing is that you're more saying, okay.

26:27

first time box in this, uh, the first milestone time box in this project, of six

26:32

weeks is um, we're gonna have a kickoff.

26:36

We're going to have a, a planning session together.

26:38

We're going to align with the stakeholders.

26:41

We're going to have a draft a design document and a PRD.

26:44

That, or whatever it is that you're going to do.

26:47

then in the second milestone, we're gonna finalize that and finalize the plan.

26:51

And we'll also have done these two spikes that we know we need to do.

26:55

And actually, your milestones might evolve.

26:58

You might have only planned the first two milestones of the six weeks,

27:03

and then milestone three might be two weeks because you have to build.

27:07

And this thing and happy path and you are a CI or whatever

27:10

it is that you need to do.

27:11

And then the final, bit might be to just get to the ship, a final outcome of that.

27:16

Right?

27:17

So the whole process is very different.

27:21

Péter (2): Yeah, I like that.

27:22

what I'm hearing also is that this process acknowledges the time

27:27

needed to do proper estimations.

27:30

And actually puts it into the first phase of a time box.

27:33

it's not expecting you to come up with estimations, off the top of your head.

27:38

It involves the whole team to do the spikes, as you said.

27:42

do some design documents, planning, validating, and not focusing on this

27:47

simple question of how long does it take to build a newsletter for my site.

27:51

Jeremy (2): Yeah, exactly.

27:51

the whole planning process becomes so much easier.

27:59

Péter (2): Every engineer has been there, I think, who was asked to make an

28:03

estimation that this very uncomfortable feeling that I'm just bullshitting here.

28:08

Like, I have no idea to know exactly how long will it take, because there

28:12

are just so many unknowns and it would be easier to just do the damn

28:15

thing and measure how much time it took than trying to estimate it.

28:19

Jeremy (2): process is, oh, we need to do quarterly planning right now, and

28:23

we have these things that we could do.

28:26

Let's really quickly estimate out the size of these different things that we need to

28:30

do, which we know then the stakeholders are gonna challenge in the, in

28:34

Péter (2): Yeah.

28:35

Jeremy (2): quarterly planning meeting.

28:36

And then, uh, we're gonna do Tetris.

28:39

With those based on what we argue of the actual site, what

28:42

we think, and the stakeholders.

28:43

Now that's easy.

28:44

Why are, why is that so big?

28:46

You know, I and so on.

28:47

And uh, then you have this kind of like back and forward and you Tetris

28:53

plan the quarter and then you're

28:55

Péter (2): Yeah.

28:56

Jeremy (2): and then you feel like you're failing the whole quarter because

28:58

as you go you've maybe done an upfront project plan already, but it's still.

29:03

Péter (2): It's still in your head like it didn't meet reality.

29:07

Alright, let's talk about common pitfalls.

29:09

Like what are the risks with this process and how to avoid them.

29:12

Jeremy (2): Yeah.

29:12

let's do this rapid fire.

29:14

Time boxes being treated like a deadline and having kind of like a death march

29:19

like you just mentioned that, you know, people working or you earlier

29:22

about weekends to meet the deadline for the Friday, what we said we would

29:25

Péter (2): Yeah,

29:26

Jeremy (2): or whatever.

29:28

I think like the important part is.

29:32

the conversation about the variable scope as early as possible

29:36

and focusing on the outcome.

29:39

so of course time boxes are forcing function, right?

29:42

And that's the whole point.

29:44

Like there will be a sprint

29:45

Péter (2): be.

29:45

Jeremy (2): towards, ah, like this afternoon, I'm just racing to

29:48

get this thing so I can ship the demo, but that's okay actually.

29:51

but if you're, you know, like, and that's the whole point of the time box, but it

29:54

can't, it can't be like that all the time.

29:56

so that, that, that, that also comes from being super rigid.

30:00

rather than using your judgment, having conversations,

30:02

conversation is so important.

30:04

I would argue that like at each milestone or like some kind of cadence

30:07

in the team as well as at the end of the project, you do retrospectives.

30:12

and it would also say like, that cooling off period in between, you

30:15

know, like over, like not, not putting enough slack and, and, not having

30:20

sometimes a buffer in between, some of the bigger project time boxes that

30:23

you're doing, I think is, is a problem.

30:26

and like this takes time.

30:28

you're not gonna be landing this the first time you do it.

30:32

It's probably gonna feel a bit like a car crash, until you've

30:35

done like a few of these and then you start to get into your rhythm.

30:40

so it's kind of like a, it's like a steep learning curve, to, to adapt to this.

30:44

And frankly, biggest learning curve isn't just the team, it's the leadership

30:49

in letting go of this upfront planning, deep estimate conversation and so on.

30:56

Ultimately, I think for leadership it is liberating because you're able to

31:00

more easily adjust direction during the quarter because it's always

31:04

leadership that is throwing stuff in.

31:06

Péter (2): Yeah,

31:06

Jeremy (2): but it, it's hard.

31:08

It's hard and,

31:09

Péter (2): it.

31:09

Jeremy (2): all the time,

31:11

Péter (2): it, it's interesting that you mentioned leadership.

31:13

I had a talk with a CT of a tech startup.

31:16

I was considering, consulting them.

31:18

and the main problem they brought me was that, in the last two years we missed

31:24

all of our deadlines, like no exceptions.

31:26

And what can we do to meet those deadlines?

31:30

And I was asking.

31:32

What if the, the, the consequences, the the opposite.

31:35

Like, why don't you abandon deadlines?

31:38

why do you need internal deadlines?

31:40

and the guy just didn't understand.

31:42

I mean, probably I did a bad job explaining this concept, but, it

31:46

was weird to me that, something is not working, but they keep on doing

31:49

this, doing this and, and beating themselves up that is not working.

31:52

Jeremy (2): and it is funny 'cause in that scenario I would say, if

31:57

you made your deadlines fixed?

32:00

fixed capacity, fixed time, variable scope.

32:03

Then you're actually

32:04

Péter (2): Yeah,

32:04

Jeremy (2): boxes, you

32:05

Péter (2): Plus the, it's guaranteed that you're not gonna miss the

32:07

deadline because you didn't say what you're gonna deliver by the.

32:11

Jeremy (2): function because you will say, I wanna achieve this

32:13

by this date, and we'll cut some corners that we think we can do and

32:20

we try and ship something by then

32:22

Péter (2): Yeah.

32:23

Jeremy (2): retrospect and say, is that enough?

32:24

Péter (2): Hmm.

32:25

Jeremy (2): okay.

32:25

Péter (2): Yeah.

32:26

Jeremy (2): So,

32:27

Péter (2): I really like also the emphasis you put on retrospective

32:30

and learning and improving.

32:32

Maybe we should do a separate episode on just the retrospective itself now

32:36

that we are called the retrospective.

32:37

'cause I think I.

32:39

Jeremy (2): Yeah.

32:39

Péter (2): there are a lot of pitfalls in that.

32:40

there are a lot of teams that are just doing it because it's in the

32:43

S Chromebook but they don't really get the value it could provide, so

32:47

Jeremy (2): yeah.

32:48

Péter (2): just an idea for a future episode.

32:50

Jeremy (2): Totally agree.

32:51

Péter (2): All right.

32:53

I think we talked a bit about the bigger picture benefits like the

32:56

company-wide cadence, more predictability.

32:58

What else comes to your mind how this could be beneficial in the

33:02

bigger picture for engineering teams?

33:04

Jeremy (2): so it simplifies planning as we talked about because you have

33:07

prioritized topics and you're talking about applying your appetite for how

33:10

much of my budget, how much of people's time are we gonna spend on this?

33:13

That's your budget and your appetite.

33:15

think it makes

33:16

Péter (2): I think it.

33:16

Jeremy (2): simpler way of working.

33:18

It removes a lot of process in terms of potentially removing story points.

33:22

I think it, it removes a lot of the kind of upfront planning,

33:25

capacity planning, and so on.

33:27

So it becomes an easier.

33:29

Way of working for new people to join, and is simplified even

33:33

if like the fact of having to.

33:36

Discuss and change scope is actually gonna be really hard for every new

33:39

person coming in and they have to learn.

33:42

but it's a different thing.

33:44

You have to learn rather than, you know, like all the other stuff.

33:46

What does five points mean here or whatever.

33:50

I think this, yeah, and then, managing of stakeholders, the ability to

33:53

adjust to changing stuff, and so on.

33:58

And I think then the other bit that's interesting on this is.

34:01

Technical debt, which is like this eternal problem that we have in

34:04

engineering, can be time boxed as well.

34:07

And that works really well with your stakeholders because, you can say, I

34:10

have this problem, I'm gonna try and tackle it in three weeks, this quarter.

34:14

and it's fixed.

34:16

And it's not like that technical debt project expanded and blew up and took up.

34:19

You know, you just realize we only shipped a part of it in the end,

34:22

and we need to maybe do some more.

34:24

so I think then it compounds, because ultimately.

34:27

Um, should be able to ship more because you're being a bit more aggressive

34:33

in descoping a bunch of stuff and, realizing that's good enough for now

34:39

I need to go after this other thing.

34:41

And so, I'm hoping that organizations that adopt this feel they are able to

34:47

deliver more on more business outcomes.

34:49

Because they're kind of, okay, well, you know

34:52

Péter (2): Okay, well, you know what?

34:53

We actually.

34:53

Jeremy (2): outcome was this.

34:54

And you could do that in a very, if you had a three week time box or three

34:59

months, maybe the three week can deliver just enough, to make the impact, right?

35:04

Um, there's questions about tech debt accumulation and

35:08

so on, but I, I think it, it

35:09

Péter (2): I think it helps.

35:11

Jeremy (2): ultimately push a bit more impactful change to

35:14

Péter (2): Mm-hmm.

35:14

Jeremy (2): customers.

35:16

Péter (2): I would even say more, it can be misleading.

35:19

I would say the emphasis is on better, like more aligned with business goals.

35:25

we all been there when we release a big half year, two year project,

35:29

whatever, and we just realized that users didn't need this.

35:33

for a new company, for a small company, this can even mean

35:35

the death of the company.

35:37

this way of working with the shorter feedback loops and the quicker

35:41

learnings, allows you to really deliver the most impactful things.

35:47

Jeremy (2): Yeah.

35:47

exactly.

35:49

Péter (2): what would be the three takeaways that, listeners could take

35:53

with them if they hear about time boxing?

35:55

Jeremy (2): Yeah.

35:57

number one, I would say a time box is about focusing on an outcome, that's like

36:01

a variable scope to enable that outcome.

36:05

it's not just like a time limit, for a fixed scope or whatever.

36:09

it's a forcing function to make you.

36:12

Focus on achieving that outcome regardless, uh, and deeply prioritize

36:18

as you do that to achieve the outcome.

36:20

Number two, I wanna remind you about the two rules, that

36:23

I think are non-negotiable.

36:25

Ship something at the end of the time box do the retrospective

36:29

say, what did we learn?

36:30

Should we work more on this?

36:32

Is this enough actually, you know, uh, should we do something

36:35

else that's higher priority?

36:37

the discipline of making it.

36:38

And if you're starting out, like number three, if you're starting out, might be

36:41

a bit hard to just whole scale do this.

36:44

So when you get to that tricky moment in the quarterly planning and there's

36:48

a lot of things that you're trying to fit in, you could just say, Hey.

36:53

How about we just do a two week spike time box on this topic.

36:57

We protect that.

36:58

And, um, and that's it, right?

37:01

You know, like just apply it a little bit somewhere and see if you can learn.

37:06

And then if you can, like, um, if, if, if that's working well, maybe you can

37:11

apply it to a few more places and if it's working well for you, maybe the next

37:14

planning session or whatever you propose a more of a time box based approach.

37:19

Péter (2): Nice.

37:19

So yeah, focus on outcomes, not deadlines.

37:22

The two main rules.

37:23

Ship something before the time box ends and retrospect.

37:26

And then start small and build a muscle.

37:29

I really like this angle also that you mentioned at the end, uh, some

37:32

practical advices or thoughts about how to start, how to switch to this

37:36

way of working, uh, as a final thought.

37:39

Do you wanna add something on that?

37:42

Jeremy (2): I think the way to get people on

37:45

Péter (2): people.

37:46

Jeremy (2): is to explain this, the triangle of project management

37:50

of scope and time and people, or, you know, a resource or whatever

37:55

and put that on the table of like.

37:58

Okay, well, you know, which, what are we talking about here?

38:01

You know, like remind them again about that project management triangle.

38:04

and use that to introduce the time box.

38:06

I think that's how I would kind of frame it.

38:11

Péter (2): Yeah, and I.

38:13

Jeremy (2): One thing that,

38:14

Péter (2): I if you feel discomfort, you should feel it like this is how it works.

38:18

it's gonna be hard.

38:19

Jeremy (2): Yeah,

38:20

Péter (2): the whole point.

38:20

Yeah.

38:21

of everything new that you're learning.

38:22

Jeremy (2): Because the discomfort, discomfort means, okay, remind

38:25

me what's my focus, what's I need to, what am I trying to, what's

38:29

the outcome I'm trying to achieve?

38:31

How do I aggressively prioritize?

38:33

And by the way, when you aggressively prioritize, you take

38:35

the pressure off yourself again.

38:38

so yeah.

38:38

it's a symptom that you need to prioritize.

38:42

Yeah.

38:42

Péter (2): Thank you Jeremy.

38:44

This was super useful.

38:45

I already know three people that I'm gonna send this episode once it's live.

38:49

and thanks for the listeners for sticking with us.

38:52

we are gonna be back soon in another episode where I'm

38:55

going to prepare a topic.

38:56

see you then.

38:57

Jeremy (2): it's great.

38:57

And you know, like there's all these algorithm stuff out there.

39:01

Feel free to share or like, and whatever the things that feed the algorithms.

39:06

we really appreciate our, small group of listeners that listen to

39:10

us, when we release an episode.

39:12

Péter (2): Exactly, or just do what I'm gonna do and send it

39:15

to a friend or someone who you think it could be useful for.

39:18

Jeremy (2): Exactly.

39:20

Cheers folks.

39:21

Péter (2): right.

39:22

Bye bye.