Who uses python programming

Some people are interested to Python but might still have questions in their mind, are there any big companies who uses Python programming. They are concern whether is it worth it to learn Python? Python is the fastest growing programming language on the planet. It is also the most wanted programming language by developers in 2017, 2018, and 2019.

Aside from its simplicity, Python is well-known as a multi paradigm programming language. Programmers are freely to develop their programs using different approaches, including object-oriented programming, functional programming or procedural programming. This makes so many tech companies  love Python and use it to their real world applications. Some of them include FAANG companies (Facebook, Netflix, Google), social media giants (Instagram, Pinterest) to sharing and discussion platforms (Dropbox, Quora, Disquss).

Maybe you want to know where can you land a dream job after learning Python? What kind of applications or programs you have to build and maintain if you join one of them? So, if you want to know about what opportunities can Python developers get from existing businesses, you can read 9 companies who use Python programming language.

Start learning Python from UNLIMITED Books, Videos and Tutorials!

Google

Python has been adapted by Google since their earliest stage as a company. From the beginning, Google has decided to use "Python where we can, C++ where we must". Beside Python and C++, Java and GO are the only permitted languages to be deployed to Google's production.

Google always considers Python as an important language for them. They attracted so many prominent Pythonistas to join them. In fact, the creator of Python, Guido Van Rossum, worked for Google from 2005 to 2012.

Python is used on countless Google internal systems. Their core search algorithms are written in Python and C++. The entire YouTube site uses Python for view video, administer video, control templates and so much more. The main website for Google developers, code.google.com is also using Python.

Developers at Google use Python for various build systems, code review tools, and system administration tools. Python can also be seen in various Google APIs. And currently, Google is heavily using Python for their data analysis, Machine Learning, Artificial Intelligence and robotics projects.

Google uses Python
Google

NASA

National Aeronautics and Space Administration or well known as NASA is a U.S. government agency. Their name implies that their main responsibility is to conduct research and development related to air and space.

There is no official statement from NASA about what programming languages they use, for what applications a language is being used and how intensive they use a language compared to the other. We all aware that the nature of their research and development, they must employ diverse programming language for their projects.

The sign that Python plays prominent roles in NASA came from one of NASA's main shuttle support contractor, United Space Alliance (USA). They developed a Workflow Automation System (WAS) for NASA which is fast, cheap and right. USA's Senior Project Engineer disclosed the reason why Python was chosen for such a critical project in NASA:
Python allows us to tackle the complexity of programs like the WAS without getting bogged down in the language
Another evidence that NASA utilizes Python on their projects can be seen from their open source software Projects. There are more than 400 project that they publicly opened as an open source projects. You can find numerous projects that was written in Python on that page. The projects range from research related to stars, planets, atmosphere, aeronautics, remote sensing and GIS.

Facebook

Not many people realize that Facebook is using Python. This is mainly because Python is not the main language used by Facebook. Python contributes 21% of Facebook infrastructure's codebase. However, 21 percent in a social media giant means millions of lines of code and thousands of libraries.

Every month, there are about 5,000 commits performed by more than 1,000 engineers. Python's simplicity enables production engineers to easily interact with other team by providing reliable interfaces. Thus, the amount of code they have to write and maintain can be minimized and  they can be more focus on integrating services to their infrastructure.

Python also plays a crucial role in Facebook's infrastructure management. Multiple services such as network switch setup and imaging, auto-remediation of server hardware faults, scheduling and automating of maintenance work, server imaging and fault detection. In essence, the life cycle of their hardwares are controlled by using Python.

Moreover, in 2009 Facebook acquired FriendFeed, a company that developed Tornado web framework written in Python. Tornado isn't just another web framework, it is a real-time web framework which able to update news feed in real time. This framework is also designed to be able to handle more than 10 thousand connections per second.


Netflix

Netflix gives freedom to their developers to choose what language to code in. They noticed that more engineers turn to Python to handle their critical applications.

The prevalent use of Python in Netflix is due to the rich of standard and third-party libraries which they can use to solve any given problem. In addition, Python has succinct, clean and expressive syntax with very huge developer community. These qualities allow Netflix developers to rapidly iterate and innovate.

Here are some projects in Netflix which rely heavily on Python:
  1. Central Alert Gateway (CAG) - a RESTful web application to manage triggered alerts from Netflix telemetry system.  
  2. Chaos Gorilla -  a tool that randomly disables their production instances (failure simulation). They use it to increase their failure resiliency.
  3. Security Monkey - a system for monitoring and analyzing the security of their Amazon Web Services configurations.
  4. Howler Monkey - a tool for SSL certificates expiration monitoring system. 
  5. Chronos - a tool for automatic changes tracking system. 
  6. Aminator - a tool for creating custom Amazon Machine Images (AMIs).
  7. Sting -  a lightweight RESTful web service that slices, dices, and produces visualizations of large in-memory datasets.
Recently, Netflix developed a system of Regional failover. The system decreases the respond time to an outage from 45 to seven minutes with no additional cost. This failover system is powered entirely by Python.

Instagram

Instagram is the biggest Python user in the world. They built their photo sharing social media platform on top of Django, a web framework which is written in Python. The most interesting part was Instagram succeeded to make a smooth upgrade from Python 2.7 to Python 3. They did it after they had moved from Django 1.3 to Django 1.8 in 2016.

Their remarkable achievement has reached at levels most companies can only dream about. We are talking about 400 million active users per day, and when Selena Gomez or Cristiano Ronaldo post a photo, it would get 3 to 10 millions likes. Instagram proofed that Python is not only great in many ways, but it can also scale massively.

If you want to know why Instagram loves Python so much, you can take notice to what Hui Ding, a senior Instagram engineer, said about Python:
Python is user-friendly for engineers — it’s easy to get up to speed and get out the product, allowing the team to concentrate on user facing features. Python is simple and clean and favors pragmatism. It is a proven technology. And, finally, it’s a really popular language, which makes growing the engineering team easier

Dropbox

Guido van Rossum work for Dropbox who uses Python
Guido Van Rossum

Where did Guido Van Rossum move when he left Google in 2012? That's right he joined Dropbox. So, how do you think Dropbox value Python when they were able to convince the Father of Python to leave a giant like Google and join them?

Drew Houston, the co-founder and CEO of Dropbox, stated that Guido (with his Python) has contributed to Dropbox since the very first line of code. Dropbox must support all major operating system. In the past, developers must rewrite the same code into different programming languages and development tools to meet every platform requirement.

This is where Python came to the rescue. Python's simplicity, flexibility and elegance allows developers to write the code once and running it everywhere.

If you want to know what did Guido built in Dropbox, you can check this website. He explained that he just released a new feature for the Datastore API. The feature enables a developer to share datastores with others.

Enroll Nanodegree in Programming with Python Now!

Pinterest

Pinterest is a social media which provides 'catalog of ideas'. This platform isn't just a place to shared fascinating images, but a media where its users shared their interests. Many users have considered this social media as a search engine to find something they want to do. Their active users have reached 250 million per month on October 2018.

Their co-founder has revealed that Pinterest chose Python because of its speed of development and their comprehension with this language.

Pinterest used Python-Dajngo when they were launched, but they moved to Flask since late 2011. The main consideration why Pinterest switched to Flask was their interest to build and expand more APIs. As of January 2015, their Flask API receives 12 billion requests per day.

A bare bones framework like Flask gives a lot of freedom for customizing code. This makes APIs development and deployment ultra fast. Apart from its simplicity, Flask performs really well under loads.

In case you are fascinated to learn Flask, Flask Web Development book is a good place to start.



Quora

When you have an idea and want to launch it as a startup, you would have to choose a language to build your product. Unfortunately, Bjarne Stroustrup has pointed out that:
There are only two kinds of languages: the ones people complain about and the ones nobody uses.
So, whatever language you use there will always be problems you must deal with and users of other languages keep advocating their choice and say bad thing about the language of your choice.

And what Adam D'angelo has learned when he worked for Facebook that choosing a programming language is really important and is extremely costly to change. Thus, the Quora founders eliminated PHP from their choice.

The founders of Quora considered several languages including Python, C#, Java and Scala. Despite being relatively slow and lack of typechecking, they select Python since other languages have bigger complications for them.

They already familiar with Python and they would address Python lack of types with unit tests. Just like what Google did, they complement it with C++ to handle performance-critical code.

Here are several considerations that made Quora founders pick Python:

  • There are well supported and keep improving Python frameworks like Django and Pylon. They used Pylon in the beginning and then gradually replaced it their own custom system (LiveNode/webnode2).
  • Python's readability would make their lives easier when they work with a team on a site.
  • Python has so many libraries that can be easily incorporated into their codebase.
  • Marshaling data between the browser (Javascript) and Server (Python) is simple and effortless.  


Disqus

Disqus is the most popular third party commenting platform. More than three million websites are installing their system. They receive 50 million comments per month. Two billions people read Disqus comments every month that drives 17 billion monthly page views.

Disqus is using Django for nearly all of their web traffic. They were more serious to solely rely on Django since 2013. Their decision is based on the fact that they already knew Django really well and they want benefiting from the huge Django community. By following standard practices, they will hire developers much easier.

If you are interested to master Django web framework, you can start learning it from Django 2 Web Development Cookbook. This book will teach you  how to build, test and deploy robust an secure web apps quickly.

The secret recipe Disqus has to handle this mega traffic (45k request/second in 2013) is called Varnish. It sits between their load balancers and Django backends. Varnish caches the whole non-unique HTTP response before they hit a Django server. This reduces the inbound requests which hit the app server to only one third of the total requests.

Once again, critics about how Python and web framework are so slow and cannot scale are irrelevant. There are so many things you can do to surmount the disadvantages of a language. Changing language option is so costly and you will face different kind of obstacles with your new language.

Conclusions


Who uses Python
Why/How They Use Python
Google "Python where we can, C++ where we must”
Nasa
  • Python for Workflow Automation System
  • Python for so many open source projects
Facebook All hardwares in their data centers controlled by using Python
Netflix
  • Gives freedom to their developers to choose language
  • Most of developers love Python
Instagram The success story of Django
Dropbox The home of Python’s BDFL
Pinterest Switched from Django to Flask to build and expand more APIs.
Quora
  • The founders already familiar with Python
  • They would address Python lack of types with unit tests
  • They complement it with C++ to handle performance-critical code
Disqus
  • Already knew Django and want benefiting from Django community
  • They have secret recipe called ‘Varnish’

You can see that world leading tech companies love Python. Check out my article that discuss three giants in financial world (JPMorgan, BAML and Citigroup) who use Python.

If you want to discover more companies who use Python, you can go to any job search engine websites and type 'Python'. You will find hundreds of corporations who need Python developers.

To conclude, I want to highlight why leading tech enterprises embrace Python as one of their tech stack:
  1. Python is so simple and readable hence it is easy to learn
  2. Python is so rich with libraries and tools 
  3. Python is so fast in term of products deployment
  4. Python is very popular and make it easy to get support from community
  5. Developers love Python, it is easier for company to recruit new staff
  6. Python is scalable and portable
  7. Python is big data ready
If you are ready to join Python community, You can start learning the very basic of this language from Lean Python book. This book only deliver the very core of this language, hence you can move to advance Python tutorials quickly. Once you grasp the foundation of this language you can continue by choosing one application of Python.