You are on page 1of 55

Technology for Product Managers (Part 1)

Breaking into Product Management - Week 6

powered by Airtribe
Before we start
• Recording of all sessions will be available on Airtribe.

• The slides will be available on Airtribe, you don't need to take


screenshots but make sure you take notes.

• Write down your questions and ask them during the Q&A or on Discord.

• Please refrain from sharing political, religious, and NSFW content.

powered by Airtribe
Top Assignment
Here are the areas of evaluation:

1. Conceptual clarity 
2. Communication of thought 
3. Creativity in solutions 
4. Outcome driven approach - how to approach the target 

powered by Airtribe
Top Assignment
Group 2 - #3

• Visual Approach and design psychology was critical and you have people
who have very well defined (why blue), Red icons, and green icons
• Wireframes are well detailed and presented

powered by Airtribe
Top Assignment

Group 17 - #2

• Great understanding of the persona and concepts is part of the flow


• Awesome attempt at detailing the solutions

powered by Airtribe
Top Assignment
Group 5 - #1
Kudos team, really good effort. The overall approach to the problem was really
exhaustive in terms of understanding the user personas, their needs and the problems
they might face while using any digital app as well.

Purvee Khandelwal
Ritik Trivedi
Umang Kelani
Vivek Gupta
Ravi Shekhar

The winning group will get a subscription to Lenny's Newsletter for 1 month

powered by Airtribe
What are we looking at today?

1. Choosing the right product platform for your business

2. Q n A - Choosing the right product platform for your business

3. Basics of system design and architecture

4. Q n A -  Basics of system design and architecture

5. Intro to APIs and how they work

6. Q n A - Intro to APIs and how they work

7. Introduction to how the internet works

8. Q n A - Introduction to how the internet works


powered by Airtribe
😬
Tech for PMs Why? ✅
Tech for PMs

powered by Airtribe
Tech Jargons

👉🏻 • Caching 
• Database
• AI / ML / Data Science 
• NLP
• What else…?

powered by Airtribe
How different platforms are built and used?

👉🏻 Everyone has their preferences for operating systems. These preferences are
important, since operating systems (OSes) are at the heart of every computing device,
from phones to supercomputers. 

An operating system (or OS) is a group of computer programs, other software that lets
people interact with a computer. It manages computer hardware and software
resources. Some are used for everyday things like on a personal computer. Others are
mobile operating systems or are used for specialized work.

powered by Airtribe
Mobile Apps

👉🏻 But for a major utility in the smartphone market, there are two types of OS which
as iOS and Android
Even though the apps might have the same functionality, both versions are
incompatible with each other.
There are always heated debates on which OS to use when you are entering into new
markets.

• Versioning
• Performance 
• Dynamic information 

powered by Airtribe
Mobile Apps

powered by Airtribe
How different platforms are built and used?

powered by Airtribe
How different platforms are built and used?

👉🏻 Why did Google make Android free to phone manufacturers? And the paradox of
choice 
Google’s Android mobile operating system is free for both consumers and phone
manufacturers.
Google’s strategy begins with getting as many people as possible using Android.
Making Android free is working: in the last quarter of 2020, over 80% of newly-sold
phones ran Android.
Android allows you to modify the app as much as in terms of interface which is not
possible in iOS and you can avail of all scalable services which Google provides.

powered by Airtribe
How different platforms are built and used?

👉🏻 Why did Google make Android free to phone manufacturers? And the paradox of
choice 
• Google’s Android mobile operating system is free for both consumers and phone
manufacturers.
• Google’s strategy begins with getting as many people as possible using Android.
Making Android free is working: in the last quarter of 2020, over 80% of newly-sold
phones ran Android.
• Android allows you to modify the app as much as in terms of interface which is not
possible in iOS and you can avail of all scalable services which Google provides.

powered by Airtribe
How different platforms are built and used?

👉🏻 Why did Google make Android free to phone manufacturers? And the paradox of
choice 
• Android is open-source to the core; it’s built around the “kernel” of the open-
source operating system Linux, which is also used in some of the world’s biggest
supercomputers.

powered by Airtribe
How different platforms are built and used?

• Android is open source, phone manufacturers get to customize the interface, which
helps their phones stand out.  That’s a good incentive for phone makers to pick
Android over another operating system

powered by Airtribe
How different platforms are built and used?

👉🏻 Factors choosing platforms:


• Where my major market is and what OS they use
• What kind of customization do I need in the app - iOS might not allow certain bloat
or ad layers 
• Ingestion of layers on Platform for acquisition 
• Availability of tech resources for the development to take place 

powered by Airtribe
Breakout room - Choosing the bet

You are a PM for a Jewellery marketplace but particularly focused on Silver and
Bronze jewelry in India

You are told to validate your customer persona of who purchases it and come with
three insights

1. The typical purchase of an order is around 10 dollars per person


2. People who purchase more than 2 orders end up increasing their order value by the
3rd order to 100 dollars per person. Order frequency is once a month
3. Most folks who order are from metro cities and have access to smartphones

Which platform based on the above hypothesis would be best for our audience?
Andriod , iOS , Web powered by Airtribe
Basics of system design and architecture of PMs

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 For those of us in product management who come from non-engineering


backgrounds, it is important to continue building on our technical skills.
Sometimes knowing where the technical bar for PMs starts and ends is the
hardest part.

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 First off, any 3-tier architecture in a


software product consists of:

Presentation Tier - the UI, with HTML, CSS,


JavaScript, jQuery, etc

Application Tier - this is where the


business logic lives. The Presentation Tier
can communicate with it via the Application
Tier's APIs.

Data Tier - the database


powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 Separation of concerns is a design principle for separating a computer program into


distinct sections, such that each section addresses a separate concern. For example,
the business logic of the application is a concern and the user interface is another
concern. Changing the user interface should not require changes to business logic
and vice versa.

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 Now the next step is to scale 

You need your system to scale up to millions of users around the world. Your web
server, app server, and the database will start to get overwhelmed. The solution is
using clusters of multiple servers to fulfill each function, so each server only has
to handle a fraction of the load.

How do your users' requests get routed to the different servers, though? You need a
load balancer to direct traffic. There are many different algorithms a load balancer
could use to direct traffic.

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 Now you have a cluster of web servers and application servers, but each request from
a user may get routed to a different instance than the user was just talking to before.
If the first request goes to app server A and the second goes to app server B, how will
B know what's going on? 

That's why your web server and app server need to be stateless. Only the database
should maintain state, so it doesn't matter which web server or app server the user
gets routed to, and you can scale those layers easily and independently.

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 The importance of being stateless primarily refers to the app server component of
an overall system. The database is an appropriate place to store the state, and
thus most holistic systems are stateful. Otherwise, you couldn't fill your shopping
cart at Amazon, because on every page click it would forget who you are and what
you've done so far.

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 The key to being stateless is in the app


server which is serving your APIs
Two places you can store state are 

A) in the database that is shared by all app


servers, so it doesn't matter which app
server you get routed to on a particular
request,
or

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 B) in the browser via cookies. 

This is common to remember if someone is logged in or not and if so, who they are.
The client state, however, is not secure, as it is in the user's control, not yours. They
can go in and modify the contents of their cookies, clear their cookies, switch
browsers (in which case you'd lose the state), etc
Best to store any important state in the DB where it can be a single source of truth.

powered by Airtribe
Basics of system design and architecture of PMs
👉🏻 The essence of understanding the
same is through use cases 

• As a PM ask more questions than


answers: How fast would the
database be, will it be able to
function under this specific SLA? Can
I query this specific information?
Can it support complex analytical
queries? How is it scalable?

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 The essence of understanding the same is through use cases 

• Provide the problem not the solution: Some product managers unknowingly tend
to provide a solution instead of presenting the problem first. If you don’t have an
in-depth knowledge of the system, you might end up providing a suboptimal
solution. Make sure you explain the problem first to the engineer so that you get to
hear their point of view. Then offer the solution.

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 The essence of understanding the same is through use cases 

• Understanding Tech Debt: Tech debt is defined as the implied cost of additional
rework caused by choosing an easy (limited) solution now instead of using a better
approach that would take longer. For the product, tech debt translates to:

• Development costs: Pace of execution is slowed, Operational costs, Opportunity


costs: Time lost in releasing a feature which could have improved business. Bugs
lead to lost profits, Business costs. Outages leading to loss of revenue.

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 The essence of understanding the same is through use cases 

• Understanding Tech Debt: Tech debt is defined as the implied cost of additional
rework caused by choosing an easy (limited) solution now instead of using a better
approach that would take longer. For the product, tech debt translates to:

• Development costs: Pace of execution is slowed, Operational costs, Opportunity


costs: Time lost in releasing a feature which could have improved business. Bugs
lead to lost profits, Business costs. Outages leading to loss of revenue.

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 Translating design into effort

While assessing a design ask about how


long it would take to build the feature and
what tradeoffs can you take. Make sure
alternatives are considered.

powered by Airtribe
Basics of system design and architecture of PMs

The PM

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 PM: Let’s build a search functionality on this entity.

Engineer: Sure. We can set up ElasticSearch/Solr and set up a pipeline to index all the attributes. We’ll get a
rich set of filtering options. It would scale well.

PM: How long will that take?

Engineer: That can be up and running in a month.

PM: Can we do it in a shorter time?

Engineer: If we just implement the search only on the name of the entity, we can have a simpler
implementation. We could directly query the MySQL DB with a simple SQL query. That’ll take maybe just a
couple of days.

powered by Airtribe
Basics of system design and architecture of PMs

👉🏻 PM: What limitations will we have?

Engineer: A couple of them. If the scale grows we might have performance issues. If we want to introduce
complex filters, we might need a separate system for search.

PM: Since we don’t need to solve for scale right now and can live with searching just by the name. Let’s do
that.

Engineer: Cool. The proper search feature will be a tech debt, and we would need to solve that later when
scale grows and need advanced search features.

PM: Alright. I’ll keep that in mind and consider that in my product roadmap.

powered by Airtribe
Breakout room 2 - Implementation the right feature
You are a PM of a curated upskilling marketplace, which has over 120 plus courses in data science, engineering,
product, etc. You do 1 million dollars in revenue each year and search contributes to 10% of that

You are told to improve the search functionality of the platform as 20% of learners who find courses end up
don't find the right course because of the terms they type

like somebody searching for python ends up writing "Pyton" and it shows no results. The no result rate is 20%

In order to solve this dilemma - you are given two data points

1. 20 courses out of 120 give you 90% of your revenue


2. Keywords used by learners on the website are more than 5000+ in number which means 2 learners by
searching for the same course end up typing different keywords for it

In order to solve this, you are to choose between a platform that is search as a service costing 60k USD per
year or implement a quick fix solution that solves it not as deep as search as a service but saves you 40k USD.
What decision will you make? powered by Airtribe
Introduction to APIs and how they work

Making API Calls with the waiter

powered by Airtribe
Introduction to APIs and how they work

👉🏻 Google lets you include a small snippet of code in your app to draw a Google Map, and it
provides other snippets of code to let you draw on the maps, calculate driving directions
between points on the map, and even find out the speed limit for a particular road. All of
these tools are cheap or even free.

powered by Airtribe
Introduction to APIs and how they work

👉🏻 The first kind of API lets one app ask another specialized app to solve a particular
problem, like calculating driving directions, sending text messages, or translating
sentences. It’s like how you could call a plumber or carpenter to fix problems around
your house instead of trying to do it yourself.

The second type of API lets one app ask another app to hand over some interesting
information, such as sports scores, recent Tweets, or today’s weather. It’s like calling
the front desk at a hotel to learn which museums and restaurants they recommend.

powered by Airtribe
Introduction to APIs and how they work

The first kind of API lets one app ask another specialized app to solve a particular
problem, like calculating driving directions, sending text messages, or translating
sentences. It’s like how you could call a plumber or carpenter to fix problems around
your house instead of trying to do it yourself.

👉🏻 The second type of API lets one app ask another app to hand over some interesting
information, such as sports scores, recent Tweets, or today’s weather. It’s like calling
the front desk at a hotel to learn which museums and restaurants they recommend.

powered by Airtribe
Introduction to APIs and how they work

👉🏻 The final kind of APIs lets developers access the features of the device itself. Snapchat
taps into your phone’s Camera API to zoom, focus, and snap photos. Google Maps itself
uses your phone’s Geolocation API to figure out where in the world you are.

It’s worth noting that APIs aren’t perfect. Using an API makes app developers’ lives
easier, but it also makes their apps dependent on the API.

powered by Airtribe
Introduction to APIs and how they work

👉🏻 API stands for Application Programming Interface. You might know that already, but
does that help to describe what they do? Not really.

APIs allow two systems to communicate with each other. The best description I’ve
heard is that an API is essentially a form of contract between the two systems and the
API documentation determines the terms of that contract.

For more details refer to - link

powered by Airtribe
Introduction to APIs and how they work

👉🏻 One of the best analogies of APIs is this:


“If you go to a restaurant as a customer, you are not allowed to enter the kitchen. You
need to know what is available. For that, you have the menu. After looking at the menu,
you make an order to a waiter, who passes it to the kitchen and who will then deliver
what you have asked for. The waiter can only deliver what the kitchen can provide.”

powered by Airtribe
Introduction to APIs and how they work

👉🏻 So again:
Kitchen: The database, no customers allowed to protect data integrity.

Waiter: The API, a middleman that knows how to serve data from the database without
disrupting its functioning.

Customer: An external system that wants to get their data

Menu: API docs

Order: An actual single API call.


powered by Airtribe
How the Internet works?

powered by Airtribe
How the Internet works?

👉🏻 The internet can seem like magic at times. What happens when you type
“google.com” and hit enter?

Every webpage has its address, just like a building. In this case, it is
like“https://google.com/maps”. And just like with buildings, Web page addresses make
it easy for different people to get to the same page. For instance, if you sent
“https://www.google.com/maps” to fifty friends, they’d all end up at the same webpage.
This webpage address is called the Uniform Resource Locator, or URL.

Address decoding: When your browser sees the full URL, it breaks the URL into parts to
figure
out where to go
powered by Airtribe
How the Internet works?

The internet can seem like magic at times. What happens when you type
“google.com” and hit enter?

Every webpage has its address, just like a building. In this case, it is
like“https://google.com/maps”. And just like with buildings, Web page addresses make
it easy for different people to get to the same page. For instance, if you sent
“https://www.google.com/maps” to fifty friends, they’d all end up at the same webpage.
This webpage address is called the Uniform Resource Locator, or URL.

👉🏻 Address decoding: When your browser sees the full URL, it breaks the URL into parts to
figure
out where to go
powered by Airtribe
How the Internet works?

👉🏻 First is the “https://”. That’s called the “protocol,” and it defines how your browser
should connect to the website. As an analogy, if you’re trying to Uber to the home, you
have a few options for how to get there:

UberPOOL, UberX, or UberBLACK (a way to ride in luxury cars).


Similarly, when you’re trying to get around the internet, you have two main ways of
getting around, or “protocols.”

powered by Airtribe
How the Internet works?

👉🏻 IP addresses: The catch is that computers don’t think in terms of domain names; they
think in terms of numerical codes called IP addresses.
Every website has at least one IP address, much like most people have a cell phone
number. 

To convert a domain name to an IP address, your browser uses a Domain Name Service
(DNS)

If your computer can’t figure out what IP address a domain name corresponds to, it’ll
usually ask your internet service provider (ISP), like Airtel or JIO.

powered by Airtribe
How the Internet works?

👉🏻 So, to summarize, your browser now knows to use HTTPS to grab the homepage of
216.58.219.206 — an IP address that humans fondly call “google.com”. Your browser
packages up this “request” and sends it to the huge computers that run Google’s
website, called “servers.”

Eventually, the servers that run google.com get the request and notices that you want
the homepage.

powered by Airtribe
Learners after today's session 👀

Kabhi kabhi lagta hai apun hi CEO hai

powered by Airtribe
5th Assignment 🙌

The assignment will be published on the


Airtribe Dashboard tomorrow <date>

Powered by Airtribe
Q&A

powered by Airtribe
See you in the next session 👋🏻
S6: Growth Funnel and
Loops (Part 2)
Sunday, 3rd April | 6:00 PM (IST)

powered by Airtribe

You might also like