Showing posts with label 2020 Facebook onsite. Show all posts
Showing posts with label 2020 Facebook onsite. Show all posts

Monday, August 3, 2020

BigTiger: 系统设计的基本方法SNAKE原则

Here is the link. 

The process of defining the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements. 



How to design NetFlix? 

Top level design:

Scenario:

Necessary: requirement/ assumptions

First step: ask how many users
  5,000,000 daily users
Second step: prediction
  2 - 10 times more - future, 3 months, Netflix - twice more users

125 users
3MBps -> peak bandwidth 3.75 Tb/s 

Storage 
  10KB
3 months later storage 5,000,000 * 2 * 10 = 100GB

Hard disk

14,000 movies
Total storage:

Application: 
service/ algorithms
Step 1: 
Step 2: 

Kilobit (Data)
First step:   

Evolve (How to advance system design?)
Step 1: analysis
  directions:
   Better: limitation
   Broad: scenarios
   Depth: small details

Angles:
  . Property
  

SNAKE:
Scenario
Necessary
Application
Kilobit
Evolve 

Micro: 
recommendations: 
u1 = {m3, m5, m7, m11)


Class Recommender{
}

Necessary (limitation)
prediction

Algorithm & Kilobit 

For movie liked by u1


   







Facebook/LinkedIn面试官亲授:硅谷“两大巨头”,究竟如何面试?

Here is the link. 

在Facebook面试超过50人的Jim老师,在LinkedIn面试超80人的Jeff老师,拥有“面人”超级丰富的经验。他们逐条分析,两大“硅谷巨头”如何面试?添加微信(orangechaser)加入BitTiger求职内推群。

1:20/ 2:17

Linkedin system design interview tips



Time range: 1:12 - 1:14 /2:17





How to prepare for interview from hiring manager? Based on how the report is written by hiring manager. 

How to present the talent to manage projects at work? 
How do you manage those problems at project? 
Time estimation, coordination, ...
a problem, present a solution - how to manage the project? 
Life cycle of project, how users will use, and then have a product manager thinking as an engineer. 

How to design product feature to enhance competitions? 

Sunday, August 2, 2020

System design: From a novice to an expert in less than 10 days

August 2, 2020

Introduction

It is the interviewee's dilemma, if I cannot pass the phone screen, then I should focus on algorithm and data structure; After the phone screen, there is less than 2 - 3 weeks to prepare system design, and also algorithm practice. How should I make myself an expert on system design interview? Can I make transition from a novice to an expert. 


Long polling -> system design -> networking course -> go back to long polling article

August 2, 2020

Introduction

It is the first time I realize that it is so powerful tool I should master last 10 years. What I did miss is to review those networking and distribute system courses on the internet regularly. It will make me an excellent engineer and learner any where and any time. 

My system design reading task

I have to focus on the basics this time.  I do believe those course lecture notes are so good for me to learn and review basics, and then get back to those topics like long polling I worked on before. The article I read should be perfect match to examine how good I learn through those lecture notes. 

Long polling article is here


Friday, July 31, 2020

Stanford university: CS144 – Introduction to Computer Networking

July 31, 2020

Introduction

It is part of system design preparation. I like to take some time to review introduction to computer networking course from Standford university. I do think that I do not have time to read computer networking textbook, so it is better for me to study lecture notes first. 

Introduction to Computer Networking

Here is the lecture notes. 


Thursday, July 30, 2020

University of Waterloo: Distributed Database

Here is the link of course. I plan to spend a few hours to go over important concepts. 

Course notes - I plan to read course notes and I like to spend a few hours on the course. 

Map reduce notes is here


Wednesday, July 29, 2020

System design: Computer networking - a top-down approach 7th edition

July 29, 2020


Introduction

It is my Facebook onsite interview prepration on August 13, 2020. How should I prepare for Facebook system design interview? Do I purchase Leetcode premium version? Do I pay to purchase system design video from tech lead on youtube.com, a senior level programmer from Amazon to get one hour service? I choose to stay hunger, stay to be frugal, learn by myself. I do believe that best learning will happen if I choose not to be a parrot in my own system design interview. 

A network book

I like to focus on basics. One is to review operating system basics, and then networking basics. Since I have limit time to prepare, I like to work on networking basics. 

I chose to spend at least 10 hours to rush to go over as many topics in the book "Networking - Top down approach". I like to focus on application layer, case study about Netflix, youtube.com. 

Sunday, July 26, 2020

A Technical Overview of Kubernetes (CoreOS Fest 2015)

Here is the link.


INFRASTRUCTURE & OPERATIONS - Painless container management with GKE & Kubernetes

Here is the link. 

Kubernetes is leading the charge into the next generation of cloud computing. With a vibrant community, this open project is defining the APIs that let you use the same techniques that Google uses internally. Workload portability is a reality - Kubernetes can work on any cloud or in your own datacenters, all with the same API and tools. Google Container Engine streamlines it even further, offering you a managed container cluster with just a few clicks. Speakers: Brendan Burns & Tim Hockin, Google


Brendan Burns - Microsoft Distinguished engineer

July 26, 2020

Introduction


It is my short research about the author of book I am reading second day. It is called "Designing distributed systems - Patterns and paradigms for scalable, reliable services".

Brendan burns

I spent one hour to go over the book and see if I can learn something quickly. System design interview preparation is the art, and I do like to take some risk this time for hunting for good learning material, asking friends, and get connected to people in my social circle.

I asked my friend who works at NVIDA senior machine learning engineer, Dr. Liu recommended me the book.


Facebook onsite: Preparation - ask a friend

July 26, 2020

Introduction


I got an offer from my friend, used to be my coach back in 2018 for Seattle prime video group onsite interview. He recently joined Google and left Indeed. So I like to learn more about how to prepare Facebook onsite interview. 

My notes


He recommended me to work on Leetcode high frequency Facebook algorithms. Usually Facebook asks the exactly same question from Leetcode. 

Focus on algorithm. It is hard to remove bias from system design interview. Make sure that I can solve all the algorithm problems on onsite interviews. 

System design: Ask a friend

July 26, 2020

Introduction


I chose to ask my friend met in my nephew's party back in 2015. She is senior machine learning engineer and joined NVIDA back in 2015. She recommended me to read the book. 

A system design book


I spent a few hours to read the book, and I like to read more about it today. 

Designing distributed systems - patterns and paradigms for scalable, reliable services.

Brendan Burns

Linkedin Liu Xin - Here is the link.

Good job! Dr. Liu!




CAP theorem - P is tough to remember - Partition tolerance

July 26, 2020

Here is the link. 

CAP theorem

The CAP theorem (coined by Eric Brewer) talks about the trade-off between consistency and availability you have to make in your distributed system. This video describes what it is, and how it impacts your system design.

An example - a bank, one customer, two ATM, network between two ATMS

One customer - two ATMs

What if something breaks?

consistent view of balance

ATM broken or network problem

partition - suffer partition

Consistent design

Do my best - partition heals - More available

Both consistence - available design

Real world - degree of consistency - degree of available

Partially available design
. Deposit: yes
Withdrawls: small and rate limited
Balance info: tentative


The CAP theorem

Formalize the trade-off between consistency and availability in the presence of partitions.






Saturday, July 25, 2020

Storing hundreds of millions of simple key-value pairs in Redis

Here is the link.


Shard (database architecture)

Here is the article. 


Sharding & IDs at Instagram

Here is the link.

With more than 25 photos and 90 likes every second, we store a lot of data here at Instagram. To make sure all of our important data fits into memory and is available quickly for our users, we’ve begun to shard our data — in other words, place the data in many smaller buckets, each holding a part of the data.




Friday, July 24, 2020

System design: Instagram Architecture: 14 Million Users, Terabytes Of Photos, 100s Of Instances, Dozens Of Technologies

Here is the link. 


Facebook onsite: Three weeks learner - Amazing learner

July 24, 2020

Introduction


It is such great experience to go over two month preparation for Facebook phone screen. Everything runs smoothly, work, preparation and practice. I have learned so many lessons as a software programmer, I do believe that most important thing is to train myself and push myself hard to be a problem solver. 

Three weeks learner


I like to adapt to be a learner and also take some time to look into system design, and also work on nonstop on algorithm practice as well. 

I did ask a few friends met on interviewing.io last two years, and then quickly I got guidelines for my system design study. 

Amazing linkedin and interviewing.io to make world connected. Here is my github page.