Month: July 2020

As a product manager, having context of how a computer works will greatly help you understand the reasons or complexities that may arise when working with engineers for building your product. 

As an aspiring product manager with no technical background, I did not go through any formal training to understand exactly how a computer works and how it’s relevant to tech products that are built today. 

Knowing how well give you a leg up on the following:

  • Productive product feature discussions (especially for tradeoffs) with your engineering team which will help delivering results faster
  • Speak to other teams or leaderships about reasons why work may take longer or the needs for your product which will help credibility and effective communication

Flashback to when I didn’t really understand the parts of a computer…

Back in the 90’s, most of us non tech folk hear the word computers and visualize an Apple Mac desktop computer we used to surf the nascent internet on in the 2000’s and use AOL (for email) and AIM (Instant message) with our friends and family. 

When I hear computer, I visualized this:

Or this:

Ah, such fond memories. 

And now it’s exponentially changed to this:

Can’t really get enough of the screens nowadays eh. Almost as humanity has thought it’s evolved to have more than 5 pairs of eyes and exponential growth of multitasking skills. 20 years later we may have a minimum of 6 screens for every office desk. I digress. But really, today, this is what most people think when they say they need to get to their computer or portable clamshelled computer, AKA laptop with connecting wires to even larger LED screens. 

What most nontechnical folk don’t realize is that this is a computer:

And this is a bunch of super large computers stacked together, also known as servers:

A computer is basically comprised of two parts:

  • Processor
  • Storage

The Processor is like a brain. It does computations such as multiplying and subtracting numbers (aka information). Storage on the other hand holds information like a refrigerator stores food until it’s needed. So how do the two work together?

Let’s use a chef analogy to break it down:

Say the kitchen is the computer which is where the chef and refrigerator live.

A chef is the brain or processor, refrigerator is storage. Guests are the input. When a chef is asked by the guests to make a dish, the chef needs to figure out which foods to be transferred from the refrigerator in the hands of the chef for her to prepare the food, make the dish, and serve. 

Types of Storage

Depending on the dish and kitchen, the chef will need to take food from the freezer or refrigerator. Food from the fridge can be taken out and processed immediately. This means it’s faster to transfer this food to be processed by the chef and make the dish to serve to the guests. 

If food is needed from the freezer it needs time to thaw so it’ll take longer to make the dish and serve to the guests. 

Which is a great segway to how this really works in a computer’s context. Food in this case is the information that needs to be transferred from storage for the processor to do its job. 

Depending on the computer and the type of storage it has will allow for faster or slower information processing. Different company products have different types of storage depending on a product’s requirements.

Below are basically the 5 types of a storage out there a computer may have:  

Pyramid of storage

For simplification using the chef analogy let’s just use two types. In a chef’s context, think of food from the freezer as Tape storage, whilst, L1 Cache as fridge storage.

The lowest level is tape, a type of storage which takes the longest time for information to be transferred to the processor. Freezer food needs more time to process.

Alternatively, the top layer, L1 cache is a type of storage which takes the fastest time for information to be transferred to the processor. Refrigerator food needs less time to process.

(Note: L1, L2, L3 cache are grouped into one layer classification but L1 is the fastest with L3 being the slowest within that classification.) 

Typically, storage that allows faster processing is way more costly to the business than storage that is more accessible. 

Putting it all together, the key point is that information needs to be gathered and processed efficiently for things to work in your product. If you have food in the freezer it’ll take longer to make things happen for your guests. If you have food available in the refrigerator, it’ll be faster to make the dish for serving.

The type of storage and processors you have is directly correlated to how well your restaurant or product performs. Depending on the size of the restaurant and the number of customers (or addressable market) it serves equals the 1 to n kitchens made up of 1 to n refrigerators, freezers, and chefs required. So the smaller your product is, the less kitchens you’ll need. The larger your product, the more kitchens.

Taking in how a computer works directly applies for understanding this in an engineer’s context. In a way, an engineer is the general manager of the kitchen(s) who deeply cares about how to make the guest’s experience delightful.  

When asking or having discussions about product features, it’s great to be cognizant what engineers must think through around inputs, storage and processing of information. Further, the things they care about directly affects what a product manager cares about – the guests experience which make up the following:

  • Performance – how well they perform with a guest’s request
    • Usability and Functionality – how well they satisfy the guest’s experience in making and fulfilling the guest’s request in real-time
    • Reliability – how reliable they are in serving guests
    • Availability – how available they are for their guests
    • Scalability – how many guests they can serve at once
  • Cost – how much food storage and chefs are needed or how many kitchens would it take to serve all guests
    • This directly affects the restaurant’s total cost and can be translated to the business cost of making the final product experience to be great for the guests while solving for how to minimize cost if there is higher demand or specialized requests but still achieve the same delightful outcome for guests.

Depending on how complex the guest’s request is, the less or more time it will take to deliver. This is why building epics, features, or stories for your product vary in time to completion and it is a concept that’ll help you accelerate your workflow as you define features for your product and gain empathy and offer effective communication with your engineering team.