The art of making waffles is very similar to the challenges in team software development. Things have to be prepared on time, and instructions have to be followed. The mixing and cooking seem fairly simple, but it's a repetative and unforgiving task, and in the end you have to ship.
As a one-person exercise, it's fairly easy. But when you scale things up, it gets complicated. Several people working together cannot simply "make waffles". They have to coordinate and divide up the work. And to make waffles for a lot of people, you need multiple waffle irons, mixing stations, and serving.
The challenge for a team is how to organize themselves into assembly steps. At one station, some engineers melt the butter, crack eggs, and mix things. At the same time, another group prepares the dry ingredients, measuring properly. The output of the two streams must flow, and be ready in time for the engineers who are cooking on hot waffle irons.
Suddenly, the team realizes where the bottlenecks are. The cooking goes slow. A bad mixing step will lead to huge delays, while people scramble to recover. The irons are too hot, and things burn. Ingredients run out. The waffles might get cold, and customers will be waiting a long time. They have to make excuses to hungry people who have no waffles.
If they can get it right, a team learns together the art of delivery: shipping things fast, communicating, and paying careful attention to quality and customer service.
Making waffles is a great way to train engineering teams to work more effectively together.
- 100 g nuts
- 150g butter
- 80g sugar
- 3 eggs
- 150g flour
- 1tsp baking powder
- 2.5 dl milk
- (optionally) 1tsp vanilla extract
Mixing and Cooking
- melt butter.
- mix butter + salt + sugar + eggs together.
- slowly add rest of ingredients and milk while mixing.
- cook it and YUMMMY TUMMY FANTASTIC
Preparing in Bulk
(for advanced delivery teams)
Double Dry Bag
(pre-mix into large Zip-Lock bags to save time)
- 200g nuts
- 160g sugar
- 300g flour
- 2 tsp baking powder
- 2 tsp vanilla
- Remove all measuring devices (scales, cups with levels) and make the team figure it out, using approximation
- Chaos Monkey! Introduce random failures in the waffle irons
- Tell them there are 20 customers coming at a certain time, then have them show up early
- Limit the amount of available dishes and forks, introduce a dishwashing workstream
🔗 original gist - a semi-regular team tradition since 2012