X
Business

Netflix: Python programming language is behind every film you stream

If you want a job at Netflix, it's a good idea to learn Python and all of its libraries.
Written by Liam Tung, Contributing Writer

The next time you're streaming Netflix, you can thank popular programming language Python and the developers who use it for much of the experience. 

According to Python developers at Netflix, the language is used through the "full content lifecycle," from security tools to its recommendation algorithms to its proprietary content distribution network (CDN) Open Connect, which ensures that content is streamed from network devices that are as close as possible to end users. 

Python is one of the most popular languages today and is widely used for data analysis, machine learning, DevOps, and web development. 

At Netflix, many of the network devices that make up its CDN are "mostly managed by Python applications," which do tasks like track the inventory, health, and location of network devices.   

"Python has long been a popular programming language in the networking space because it's an intuitive language that allows engineers to quickly solve networking problems," notes Netflix senior software engineer Amjith Ramanujam. 

The momentum behind the language is driven by useful libraries that get developed, he adds. These include the NumPy and SciPy libraries for Python, which Netflix uses to perform numerical analysis for its failover services. Netflix is also a heavy user of Redis Queue and Jupyter Notebooks tools for Python.  

Netflix also uses the Boto 3 AWS SDK for Python to configure its AWS infrastructure -- the streaming giant runs mostly on AWS infrastructure.

And, of course, Python is used extensively within Netflix's machine-learning algorithms for things like content recommendations, artwork personalization, and marketing. 

The company also uses a tool called Metaflow, which Ramanujam says "pushes the limit of Python."

"We leverage well parallelized and optimized Python code to fetch data at 10Gbps, handle hundreds of millions of data points in memory, and orchestrate computation over tens of thousands of CPU cores," writes Ramanujam. 

On the information security front, Netflix uses Python for security automation, risk classification, auto-remediation, and vulnerability identification. Python is even behind Netflix's Security Monkey tool, as well as a project called Prism, which helps identify vulnerabilities in source code.   


Editorial standards