- Node.js in 2021
- Node.js in Media & Entertainment
- Why did Netflix choose Node.js?
- Node.js in Social Media Communication
- Why did Twitter choose Node.js?
- Node.js in Transportation and Services
- Why was Node.js chosen by Uber?
- Node.js in Fintech
- Why did PayPal shift to Node.js?
- Node.js in Technology and Research
- What made NASA choose Node.js?
- Final Words
What companies use Node.js? Today, probably everyone had heard about such Node.js companies as Netflix, Uber, PayPal, NASA, and Twitter. You have used at least half of these apps for your purposes. They have implemented Node.js not so long ago and aren’t going to switch to the old ways again. Why did this happen? What does Node.js have to offer that other technologies can’t? Let’s find out!
Node.js in 2021
In 2020, Stackoverflow counted 51.4% of developers that were using Node.js, and 66.8% committed to Node.js as their most loved back-end technology. Statista stated that 18.1% of respondents in the world found Node.js one of the most desirable technologies in development in the previous year. Google Trends showed that the search statistics of Node.js worldwide for the past 12 months was more than 70% interest, with a little downfall in Autumn and re-gaining its interest closer to March 2021.
Node.js in Media & Entertainment
According to the Netflix site, it is the top American movie streaming web platform that reached 203.7 million subscribers in January 2021. Netflix was founded in 1997 by R. Hastings and M. Randolph and grew significantly over the last 24 years. The 2020 revenue Netflix accumulated was $25 million and its net income was equal to $2.7 million. And it is among the companies that use Node.js in production.
Kim Trott, the director of the UI platform engineering at Netflix, talked about shifting to Node.js and the inevitable changes that had to be made to scale. Back in 2013, the Netflix website had some issues in its performance, e.g.
- large, legacy application (monolith)
- 40 minute startup times
- slow builds
- huge developer machines
These four reasons were affecting Netflix heavily in terms of productivity, desirable quick advancement, rapid innovations, AB testing (hundreds of them) to improve user experience. The drawbacks such as slow startup and constant “roadblocks” did not allow the team to perform 100% and meet their goals.
Why did Netflix choose Node.js?
With “simplicity is the key” in mind, Netflix’s team took the course for the dumb rendering layer, worry less about routing, view templates, and pumping data. The main idea was to move the website into a single-page application, which allowed not to render each page fully, only its parts. And, the team chose Node.js because of
- a common language (the same code written to run)
- performance (non-blocking, asynchronous, and faster load time)
- rich module ecosystem (open-source, NPM, UI-focused)
The most complex thing for Netflix according to Kim Trott was to “unlearn Java instincts and understand Node instead”. Java architecture has been built for many years and going for Node and its architecture required special attention and usage of tools. Now, Netflix focuses on Node.js development to excel in
- process isolation
- developer experience
- performance enhancement
- deployment pipeline
This transition is still ongoing and the team has to figure out how to go from Java to Node, which isn’t as easy as it sounds. But the future results are looking good.
Node.js in Social Media Communication
Twitter is an American news and social networking platform for sharing personal messages and thoughts. It was created and launched by Jack Dorsey, Noah Glass, Biz Stone, and Evan Williams in 2006. In 2020, Twitter counted more than 330 million users and $3.72 billion of yearly revenue. And this social media also appeared among the companies using Node.js.
In 2017, to make sure users obtained a better and faster experience sharing their messages, a re-write of the Twitter mobile website was released and called Twitter Lite. James Bellenger, a Twitter employee, working on Twitter Lite talked at the 2015 Node.js Summit in Portland that there was a need to optimize Twitter for
- interface speed
- network efficiency
- high-quality user experience
Bellenger claimed that the new version had a visual update and a bunch of new features visible to the public. But what the public had no idea of was a complete rewrite of the Twitter web stack.
We really re-wrote everything, and that included the back end on Node, – Bellenger stated.
Why did Twitter choose Node.js?
- slow to compile
- hard to maintain
- complex to develop the stack
- frustrating to reimplement frontend on the backend
Due to having few competent Scala developers on the market, hiring wisely to resolve these minuses was not an option for Twitter. Moreover, the pace the Twitter team set themselves to improve and excel wasn’t met either. The mobile website started to fall behind the native iOS and Android apps and users noticed that.
While considering options, the Twitter team focused on the outcomes they wanted to achieve, i. e. optimize Twitter for
- network efficiency
- offline work
- low-quality networks (developing countries)
- enabling engineers at the company
- decreasing implementation time
So, there was a need to obtain a service that could execute parts of the JS app in areas where it could improve user experience. At this point, replacing Scala with Node.js and shifting the focus from services to a browser was a step to success.
The results Twitter achieved with Node.js:
- the app became cheaper to operate
- the compute cost is only for the 6% per view
- deploy time lowered to 6 minutes (instead of 30 minutes)
- recompile the project locally takes 1 sec (and was 4 minutes)
These results are not even ultimate but are already exciting. With enhanced speed, reduced code, fewer people on the team, and faster app deployment Twitter is opting for success.
Node.js in Transportation and Services
Uber is an American tech company providing such services as ride-hailing, food and package delivery, courier delivery, freight transportation, and also electric bicycle and scooter rental (in partnership with Lime). Uber is one of the target gig economy firms. According to Statista, the company has generated $11.1 billion in net revenue in 2020. Also, Uber has more than 100 million monthly users globally. Uber became one of the top Node.js companies as well.
Why was Node.js chosen by Uber?
Unlike the other companies, that simply shifted from one language to Node.js on the server-side, Uber used Node from the start. The company has chosen this technology due to having:
- a 100% service-oriented architecture
- reliable routing
- efficient protocols
- testing opportunities
Tom Croucher, site Reliability Engineering professional at Uber shares that
Uber is one of the leading companies that started building its platform with Node and did a great business on top of it. Uber dispatching systems run on Node. Users opening an app or visiting the website to book a ride or using APIs to see what vehicles are available, don’t even suspect it, but most of these systems run on Node.js.
Besides server-side Node at the core of Uber operations, there are other technologies in use. Of course, if Uber wants to achieve a high-performance system it uses Node in deployment, in any other cases, it explores and exploits either Python or Go.
Node.js in Fintech
PayPal is an American company providing online payments in half of the world’s countries. So, in one click you can make online payments, pay fees, make money transactions, and more. Originally, PayPal was created in 1998 and made its first public offering in 2002. PayPal’s revenue in 2020 skyrocketed to $19 billion. Also, there are more than 305 million active registered user accounts nowadays. PayPal assessed Node.js users on the market and was eager to test the technology’s potential.
Why did PayPal shift to Node.js?
The transition road to Node.js PayPal’s Matt Edelman is characterized as the “inner-source” transformation. Edleman has been working at PayPal as a full-stack engineer since 2007, gradually shifted to server-side development, and became a member of the Node.js team.
In 2012, Node.js replaced Java/Spring development at PayPal. The Node.js usage had to build high-definition prototypes and be a prototyping platform. Within some time, this shift was efficient for PayPal and the team of developers decided that Node.js had to stay. What’s more, according to Edelman, the time, efforts, and people involved in Node.js feature deployment decreased significantly in contrast to the same feature development with Java. So, there was no need to have two server-side engineering teams anymore. PayPal team found out that Node.js:
- built apps twice as fast
- needed fewer people
- had 33% fewer code lines
- constructed with 40% fewer files
The shift to Node.js on the level of the enterprise was gradual. To ensure the tradition of newer and better technology was positive, the company hired influencers, experts/mentors, and used community support. One of the influencers that helped PayPal get used to Node was Netflix. Its representatives taught the PayPal team to
- provide capabilities
- design for re-use and deprecation
- be clear about the processes
- promote standards
Now, Node.js helps the company enable
- unify engineers into one team
- understand users’ needs at any level in the tech stack
By the end of the day, PayPal benefited from this transition and will remain on top due to the enhanced performance of its app.
Node.js in Technology and Research
NASA or The National Aeronautics and Space Administration is an independent organization in the US with its astronautic program and space research. Nasa was created in 1956. Now, it is a well-known organization with a budget reaching around $25.25 billion in 2021.
According to Node.js Foundation, NASA uses Node.js in several different ways. One of the problems occurring at NASA was water leakage into an astronaut’s helmet. When the problem was investigated, Collin Estes, the Director of Software Engineering and Chief Architect at Mathematical Research Institute Technologies, and his team, who use Node.js, were asked to create an end-to-end system for data on the space full lifecycle of spacesuits. And, of course, the team chose Node.js.
What made NASA choose Node.js?
In the case study released, Estes spoke about several reasons he chose Node.js. The NASA expert told that
- center around a single platform
- have JS experts in the organization or the ones familiar with the language
- keep development time and costs low
- use Node.js’ asynchronous event loop for I/O operations
- have a perfect solution for a cloud-based database system with multiple queries from users requiring an immediate response
- use Node.js package manager with Docker and create a microservices architecture that promotes smooth operating of each API, function, and application
So, mainly, Node.js allows NASA to evolve and conquer new horizons. Among the biggest breakthroughs with the help of Node are:
- bringing big data to the cloud, so astronauts could live and work in space
- npm and Docker keeping the Airlocks shut tight
- 7 steps of hardware data processing instead of 28
These advancements are not the only ones that Node.js influenced. There is yet more waiting ahead as NASA likes everything to work like a “clock” – coherently and clearly.
Node.js is a breakthrough technology that marks the start of a new quality development after companies adopt it. No wonder that such giants as Netflix, Twitter, Uber, PayPal, and NASA shifted to the asynchronous runtime with its event-loop handling many requests. The companies using Node.js report faster development, better code quality, JS code reusability, fewer team members hired, shorter timelines for deployment, and numerous other benefits. Our company is also using Node.js in development. If you have an idea and want to implement it with Node.js – leave us a note, let’s talk!