Point of Product

Point of Product

Share this post

Point of Product
Point of Product
Crash course: Parallel batch processing

Crash course: Parallel batch processing

A secret trick to working smarter

Nini Ren's avatar
Nini Ren
Jan 27, 2024
∙ Paid

Share this post

Point of Product
Point of Product
Crash course: Parallel batch processing
Share

pink green and blue square pattern

Happy New Year! 🥳 As a New Year’s resolution, I identified goals I wanted to achieve such as exercising more, learning more, and hanging out with friends more.

I did what all PMs do: map goals onto a calendar 📅. I realized that I simply could not fit everything in the 168 hours of a week without trading off time for sleep, work, or food — and I was not willing to trade off any of these.

What to do?

Hint: Use parallel processing!

Before we dive into what’s parallel processing, let’s start from a simple cooking example 🍽️.

Every now and then, I like to cook a Japanese chicken curry over rice. It’s the only dish I’m proud enough to bring to a dinner party. Here’s my secret 🤫 original cooking process — secret because it’s terribly inefficient and I’m spilling a compelling value proposition I can deliver at a dinner party!

  1. Peel and chop up the onions, carrots, and chicken (15 min.)

  2. Flash boil the potatoes and then peel and cut them (30 min.)

  3. Pan sear the chicken (10 min.)

  4. Boil the chicken, onions, and carrots with curry in a pot (60 min.)

  5. Wash rice and cook it in the rice cooker (30 min.)

It took over 2 hours to cook this dish!

beef stew served on dish
Okay, guilty as charged, I did not make this Japanese curry in the picture.

Experienced cooks out there would think, why not boil the potatoes first?

In fact, you might suggest this instead: Start boiling the potatoes; then chop up the chicken and start pan searing it; and then peel and chop up the potatoes, onions, and carrots. Within 30 minutes, complete steps 1 through 3. While the main ingredients cook into a curry, start cooking the rice. Since the rice will finish before the curry, the last two steps shouldn’t take more than 60 minutes. Overall, this new process would cut down the time to 1.5 hours.

Why does rearranging the order of the steps make things go faster?

The proposed process leverages something called parallel processing:

Computational processing in which a process is split into subunits that are executed simultaneously by independent processing units.

In this example, while things cook by themselves, I could work on other parts of the cooking process. Fundamentally, it’s the “independent processing units” (IPUs) in the process or system that makes it possible.

Can you identify the IPUs in this cooking example?

It’s the (1) pot that boils, (2) the pan that sears, (3) the rice cooker, and (4) me.

In fact, let’s remap this problem from the perspective of how long each IPU takes to complete all components of the cooking process:

  • Pot for flash boiling the potatoes and for cooking the curry (90 min.)

  • Pan to sear the chicken (10 min.)

  • Rice cooker for the rice (30 min.)

  • Me to chop the chicken and veggies (15 min.)

From this perspective, it becomes clear that even if we perfectly rearranged steps in parallel, the fastest we can cook is 1.5 hrs. Or is it?

You can actually cut down the total process to only 60 minutes with another IPU — another pot.

The thing that takes the longest to get right is actually tender carrots and potatoes. Why not get those going ASAP? With another pot, here’s the process:

  1. Start boiling potatoes in Pot A (25 min.)

  2. In parallel, peel and chop up the carrots (5 min.)

  3. Start boiling the carrots in Pot B, which will later boil other ingredients (60 min.)

  4. In parallel, cut the chicken (5 min.)

  5. Start pan searing the chicken (10 min.)

  6. In parallel, cut the onions (5 min.)

  7. Potatoes are done flash boiling (~25 min. have elapsed since start).

  8. Peel and cut the potatoes (5 min.)

  9. Chicken is done searing (~30 min. have elapsed since start).

  10. Put everything into the Pot B. (remaining 30 min. to cook everything)

  11. In parallel, wash and cook the rice in the rice cooker (30 min.)

  12. Plate everything (~60 min. have elapsed since start).

What do you notice as the trade off with parallel processing?

A few things to notice. There are more steps in the process, the average duration of each step is shorter, and the whole process requires more coordination.

This is the “cost” of greater efficiency which can be summed up as switching costs and coordination costs.

The switching costs in this example are the time and energy required to switch between each task such as tossing food into a pot, turning on/off the range, cleaning a knife, etc.

The coordination cost in this example is the mental energy required to plan and execute each step and do so with minimal flaws.

While the total cooking time is reduced, I feel greater intensity of work because I am putting more work per unit of time.

Technically, we are also using another technique here called batch processing to best reduce these costs:

Computerized batch processing is a method of running software programs called jobs in batches automatically. While users are required to submit the jobs, no other interaction by the user is required to process the batch.

Whenever I put food into a IPU for processing, I did so in a batch. I didn’t boil just one piece of carrot, but all the pieces of carrots for the dish at once. I also didn’t just cut one piece of chicken, sear it, cut another piece, sear that, etc.. I cut the chicken into all the pieces I needed and then seared them all.

Batching helps eliminate switching and coordination costs for all processes in the batch. But of course, it fundamentally requires those costs between batches.

We combine both computing concepts together into one idea: parallel batch processing. To apply it well to your everyday life, it comes down to:

  1. Identifying the IPUs

  2. Identifying a task that is fundamentally alike and repetitive to batch on a IPU

  3. Reducing the switching and coordination costs to operate between batch jobs

Meeting my New Year resolutions

Turns out your brain can be thought of as multiple IPUs, depending on the complexity of the task.

I found I can exercise and learn at the same time 🏃📚. While my body exercises, my mind is actually left open to learn. Therefore, I use my ears can to listen to audiobooks or podcasts and the information sticks because my mind is relatively clear.

I can also hang out with friends and learn at the same time 🎉📚. Part of learning is reinforcing and challenging things you initially learned. For me, that’s best done when I have another friend who can contribute their perspective, which can both reinforce and challenge what I learned. By discussing things I’ve learned, I found it enriches the quality of conversations with friends.

The one thing I haven’t been able to do is an activity that covers both exercising and hanging out with friends. I think hiking could work, so I’ll let you know how well that goes.

Bonus productivity finding:

I discovered that exercising reduces my overall need for “downtime” because I feel greater energy throughout the day. Downtime is anything that switches attention away from anything perceived as “work”. Downtime is a switching cost of going on/off anything perceived as “work” and is recovery from the fatigue of processing a task.

Exercising, once it becomes a habit, substitutes the downtime ordinarily required as a switching cost and it increases my overall mood and energy, reducing fatigue.

Eating healthy works in a similar way 🥗. It substitutes downtime and gives me more energy, naturally eliminating fatigue.

Parallel batch processing applied to PM work

I will dive into three examples employing parallel batch processing to increase your productivity at work. We will outline how to efficiently conduct an efficient customer interview campaign, write a product requirement document, and maintain productivity at work.

This post is for paid subscribers

Already a paid subscriber? Sign in
© 2025 Yue Ren
Privacy ∙ Terms ∙ Collection notice
Start writingGet the app
Substack is the home for great culture

Share