Just wondering what people do for running their ideas past a developer.
One of the main concepts of shape up is to enable your build team to focus and know they will have their time to focus on building the current shape.
It then feels counter intuitive to pull someone away from that focus to discuss another idea.
It might be that it’s because we are small team that we have to do that. What do other people do are there senior developers that aren’t in the build team? If so what else are they doing?
When we need the delivery team to explore another idea, we shape some investigative work (usually for a lead developer) that must happen before the idea can be further shaped. Usually it’s a list of questions that we need answers to.
As part of that investigation, the delivery team sometimes has to build a test harness and/or proof of concept to validate that the function we want actually works with the existing technical framework.
I’m not sure this is best practice (mixing technical discovery with shaped work), but it’s helped us avoid overbooking developer time in a cycle.
Something we tried with moderate success was using the Cooldown period for this. We’d ask one or two devs if they wanted to come help us with the technical part of shaping for part of their Cooldown work. So it was more of an opportunistic approach, but was a good way to get it done without disrupting Cycle work.
Some devs also really enjoyed this, because it gave them a chance to be involved in the earlier stage ideation part of the solution. Not all devs are interested in this, but it was good to give the opportunity for the ones who are. Win-win!
A lot of product development workflows don’t necessary require product managers, product owners, etc. to have much technical ability. My opinion is that Shape Up is slightly different. In order to be able to properly constrain and write a good pitch, the shaper should have at least some level of understanding of product architecture. This helps greatly with setting boundaries and uncovering rabbit holes early on in the shaping process. At the very least, identifying new vs. existing patterns, design components, etc. can help the shaper understand when in the process a senior developer needs to be involved.
Discussing vs. Investigating
A discussion around the technical details of a new project doesn’t necessarily remove someone’s focus as long as they’re allowed to do so asynchronously, and given the responsibility to decide for themselves whether something can be a discussion or if it truly needs further investigation. In many cases, further investigation can be avoided by properly defining out of bounds and rabbit holes.
Out-of-cycle Engineering
My thought is that one of the key details of Shape Up that isn’t really discussed by RJS and that enables team focus on a single project is having CTO level or Principal (senior-most) Engineers that have the room to do deep technical work out of cycle. In Basecamp’s case I think those would be people like DHH and at least Jeremy (guessing). In our case, the VP of Engineering/Product and Director of Engineering don’t have in-cycle commitments which should give them availability to help on technical details in shaping.
I also talk about Shape Up and Product Development in general on Twitter
Just wondering what people do for running their ideas past a developer.
We’re using https://pragli.com/ a virtual office for remote teams. I’ll just ping an engineer to see when he can hope into a room with me and we’ll hash things out. Usually I’ll be sharing my screen.
One of the main concepts of shape up is to enable your build team to focus and know they will have their time to focus on building the current shape.
Ah, OK i see.
Can you give a few specific examples of the times when you want to do this? Just trying to understand the true nature of the request or discussion.
It then feels counter intuitive to pull someone away from that focus to discuss another idea.
One of the main concepts of shape up is to enable your build team to focus and know they will have their time to focus on building the current shape.
Just like @nt-from-chicago mentions we make a little bit of a small batch discovery shape. This is usually pitched as a “lets make this work within this appetite” but kind of includes a caveat that we still have some unknowns. So it runs a little bit into a discover+execute shape. I guess “Prototyping” would be the right kind of feeling, with the off-chance of actually already shipping something to production.
Another approach we’re taking is similar to @Aylon - we will post a draft Pitch to our Strategy message board. And then mention the dev team to chip on. Or we create an explicit todo for someone to check the pitch out in a few spare hours in the week.
There’s a difference between asking someone to make time to talk vs. interrupting their work to do different work.
That point in the book about not interrupting people in the cycle is all about the latter case. There’s nothing wrong with making time to talk here and there.
At Basecamp, we reserve capacity for this by eliminating pro forma meetings (we don’t have daily or weekly scheduled meetings) and only holding small ad hoc meetings for issues that arise.