Asynchronous Programming at Netflix

Solving big async problems by thinking differently about events.

Variables to tracking the state of async stuff

1994 - Design pattern book

Both Iterator and Observer: Producer is sending data to the consumer one piece of data at a time.

In Observer, data producer has no way of telling the consumer that sending data is done.

What is difference between array and event? Both are collections, this mindset make async programming easier.

ES6 intro

Observable - collection, over time.

JavaScript Testing and Static Type Systems at Scale - @Scale 2014 - Web - YouTube


All tests in Jest run in parallel, it can’t interfere.

Automocking - auto isolation.

Clear feedback about failing messages.

Understand module system and their dependencies.

Type checking without ruining Javascript awesome flexible features.

Advanced Debugging Techniques with Chrome - @Scale 2014 - Web - YouTube

Fast iteration, instant feedback.

Geo-spatial Features in RocksDB - YouTube

Single node key-value store.

Keys are sorted - possible "ray scans”

Open source by Facebook, forked by LevelDB

Especially good for map (spatial) data.

Spatial data are usually optimized for reads, cause import is one big import of all data.

Scaling the Netflix Global CDN, lessons learned from Terabit Zero\_o

> We hate routers, load balancers are stupid :D

Challenges about deploying hardware around the world.

Dave left netflix because everything was moving to AWS and it wasn't interesting for him.

Specialized to do one thing well - deliver video.

Layer 0

Control the path between Netflix and end users.

When entering new markets - you need to know the intersection of network and even the facilities.

It needs to be easily to deploy by contractors.

Facebook's Data Center Fabric


= micro cluster

uggh, … to hardcore for me

Platform Integrity: Lessons Learned in Protecting the Facebook Platform at Jonathan Gross

Fighting spam at Facebook for 4 years

Facebook platform - how data gets in and out of Facebook Open Graph.

Atack Vectors:

* API + Application Model

* Social Plugin

* Auth

Malicious apps:

It can reach my friends.

Solution: Review all the apps. Facebook was developed as open platform.

Log everything.

Prevent impact of false possitive.


Victim get hacked by clicking on e.g. Like button.

UI Redress attack.

Suspicious name :D

Following the mouse.

Session theft