Why use Node.js? Scalability, performance and other benefits of Node.js based on famous apps

8 min

read

Node.js is easily one of the biggest sweethearts of backend development. Its popularity around the world is constantly growing, especially in the USA with its start-up kingdom, Silicon Valley. It’s no wonder that over 175,398 websites (some of them being THE biggest players on the market) already put Node.js on their backend. In this article, I’ll check out the benefits of Node.js, present massive corporations and well-known companies that use this framework in their web and answer a burning question – why use Node.js in your software project? Hey, ho, let’s go!

What is Node.js?

The Node.js platform is a server-side runtime environment based on JavaScript.

It simply means that you can use JavaScript for backend development.

Which is good news because now developers are able to use the same solution for both frontend and backend of web applications they work on. We’ll talk more about what is Node.js used for later.  

Node.js was created in 2009 by Ryan Dahl. By the end of the year, it premiered at European JSConf. Node.js combined Google’s V8 JavaScript engine, an event loop, and a low-level I/O API. In the beginning, it was only available on Linux and Mac OS, however, the Windows version was introduced three years later. 

What started small, is now an open-source with MIT licence, supported by a massive community and hundreds of add-ons. According to Stack Overflow 2019 survey, Node.js is now the most popular tool in “Frameworks, Libraries, and Tools” category with 50% of answers! 

why use node js node js benefits stackoverflow survey chart
via Stack Overflow 2019 survey

Node.js services are getting more and more popular, hence why they get a brand new release at least twice a year. The current Long Term Support Node.js 14 version will be available until April 2023. We’ve already described the new Node.js 14 features on our blog, so if you’re interested, make sure to give this article a read. 

What is Node.js used for?

Okay, you’ve got the basic. Now let’s get into details. What makes Node.js so appealing for developers and software companies around the world?

  • API

Nowadays, it’s the most popular type of application. Nearly all web apps need some kind of backend to communicate with databases or other external services. Thanks to the big community, you can easily find a library to create e.g. REST or GraphQL API. In the past, Node.js was recommended only for applications with a low number of CPU-intensive operations. Since release version 10.5.0 you can use worker threads to do it.

💡 Read more: A simple guide to JavaScript concurrency in Node.js

  • Streaming applications

Every day we use streaming services for listening to music or watching videos. Without downloading the content, we can binge your favourite TV series just on the internet. Is Node.js a good choice to stream data? Of course! It has built-in streams module allowing you to transmit a huge amount of data in chunks, sequentially. Thanks to this, you don’t have to temporarily store or cache data in your application memory at all.  Also, you can work on chunks while streaming, so e.g. encoding a video won’t be a problem anymore.

  • Real-time applications

Because Node.js is very good at handling lots of I/O operations, you can use it to build a real-time application, for example, a chat room where people can talk to each other in real-time. Or maybe a collaboration tool, where co-workers will work on the same document at the same time. Done! Building a video conference app also won’t be a problem. It is possible thanks to Node’s Events API and WebSockets.

💡 Read more:  Socket.io tutorial: Real-time communication in web development

  • Microservices

Recently, this approach in application development has become very popular. Because of the lightweight nature of Node.js, it is easy to make your solution scalable. Node.js is our technology of choice for building and deploying microservices. And it’s not only The Software House – a lot of companies migrate to Node.js when they want to move to the microservices. You can see it for yourself in our State of Microservices 2020 report.

  • Command Line Tools

With a huge number of available packages in NPM, you can easily create simple and also more advanced command-line tools suited for your requirements.

💡 Read more:  Step-by-step guide: creating an npm package for Node.js

Why Node.js is used in business? Scalability!

You already know why technical folks fall in love with Node.js. Now it’s time to explain, why Node.js is so appealing for business. 

Node.js is a super-fast, high-performance and lightweight framework, ideal for asynchronous programming. With Node.js you are able to execute multiple actions at the same time. What’s more, you can advantage from serverless and have your pick from various cloud computing models and providers like Amazon Web Service or Google Cloud Platform. 

If you want to see how Node.js and serverless work in practice, check out:

Node.js allows you for better scalability, improved performance and optimised costs. Your team will save loads of time by using reusable, ready-to-run components of node modules. As far as the team is concerned, you can scale it as well depending on what resources you need at the moment – just like your company starts small and then grows.  

It may not be THE most popular framework (yet) but Node.js has definitely dominated other frameworks in the traffic aspect. According to the Web Technology Surveys, Node.js used by websites with extremely high traffic (as you’ll later see in the examples). You can see it in the graph below.

why use node js advantages web technology surveys node js market position
Via Web Technology Surveys 2020

💡 Read more: Honey, I shrunk the node_modules! …and improved app’s performance in the process

Benefits of Node.js

I can talk about the Node js advantages for ages. We don’t have that much time, you want to develop your project after all. I’ll talk about the most important benefits of Node.js that, from my experience as Node.js developer, are true blessings for both business and software development. 

  • Open-source NPM repository – with over 60 thousand available modules you can easily find a ready to use solution for your problem, instead of reinventing the wheel. 
  • Scalable systems – thanks to the lightweight nature of Node.js it’s really easy to scale application horizontally by deploying many instances of your project to the different servers. You can also scale your system vertically, by using cluster built-in module that will fork the application process to all the CPU cores you have.
  • Good for microservices – we’ve talked about this before but it’s still worth mentioning that a lot of companies migrate to Node.js when they want to move to the microservices. Just sayin’.
  • Single programming language – nowadays, the language of choice on a frontend is JavaScript. Because you can also use it on backed, it improves the app’s maintainability. You no longer have to hire two people for separate backend and frontend positions. It’s a huge advantage to save your time and money.
  • Non-blocking I/O paradigm – the main problem with I/O operations is waiting for a response. Because Node.js is one-threaded, waiting for database query will block the entire application. That’s why you should use a non-blocking API. After calling it, the thread can continue working on another task. When the I/O operation will be completed, you will be notified about it by a callback. The main advantage and result of this approach is improved efficiency by handling a lot of simultaneous connections.
  • Reusable code – because the main language is JavaScript, you can easily share parts of code between different components in your system. What is more, you can use the same parts of code both on the frontend and backend. 
  • Time to market – very often a business has a great idea for an application but needs to verify it on a market. With Node.js you can deliver an MVP very fast which reduces the amount of money and effort needed to achieve it. 
  • Tested on production – since Node.js was created in 2009 a lot of companies have had an opportunity to check how Node.js works on production. Well, it worked quite well because a lot of big players decided to move to the Node.js. 

Just so you know, I’m absolutely not making this up. The research “Node.js User Survey Report” speaks for itself. Node.js advantages business in many ways. As you can see below, Node.js benefits have a positive impact not only on the products but also on costs, team culture, morale, customer satisfaction and so on.

why use node js advantages how node js has impacted your business 2018
via 2018 Node.js User Survey Report

I think it’s high time you meet those big market players who adopted Node.js in their products.

Which companies decided on using Node.js in their applications?

📺 Netflix

One of the biggest and most popular streaming service in the world with nearly 183 million subscribers in 2020. It’s no joke when you have to find a scalable solution to handle 1 billion hours of weekly video data streaming, not to mention other requests. Netflix was getting more popular and startup time (and the app in general) was getting slower. Netflix chose Node.js because their developers have already been working in JavaScript so they didn’t need to learn anything new (two birds with one stone) and they loved what Node modules had to offer.

I hope you’re sitting because here come the numbers. By introducing Node.js, Netflix managed to lower their startup time from 40 minutes to under 1 minute

💸 PayPal

Worldwide PayPal has over 325 million active accounts. The first quarter of 2020 marked PayPal’s net payment volume – 190.57 billion USD with 3.26 billion online transactions. You have to admit, those numbers are overwhelming.

PayPal decided on Node.js to build those parts of the web app that are seen by the end-users. Another Node.js advantage they benefit from is the unified team of developers working in JavaScript since both the browser and server applications are written in JavaScript. By using Node.js, PayPal’s development team slimmed down and speeded up the app adding modularity to it.

Effect? Introducing Node.js doubled the number of requests PayPal could handle per second, and page response time is 200ms faster.

👩‍💼 LinkedIn

In 2016 Microsoft acquired LinkedIn for the mind-blowing price – 26 billion USD and by 2020, LinkedIn had over 675 million users on board.

As far as the mobile server is concerned, Node.js is entirely Node-based. The LinkedIn team decided that two particular Node.js benefits were crucial for their project – easy scaling and communication with other services (the mobile LinkedIn app talks to the platform’s API and databases).

🚕 Uber

Available in 65 countries and 600+ cities, Uber completes over 14 million trips daily. Overall, nearly 4 million Uber drivers have already driven passengers to their destinations over 10 billion times worldwide. I guess we don’t think about the scale when we order an Uber home after a night out…

In order to handle millions of notifications, passengers-drivers matches and requests daily, Uber needed a really fast and scalable solution. They decided on Node.js because it processes a lot of information quickly and it’s possible to inspect and change a program and fix the necessary error without restarting the app. Now, the Uber development team can write and deploy new code and fixes when needed. 

🔎 Groupon

In 2020, deal site Groupon had over 200 million mobile app downloads and 41.8 million unique customers who had bought at least one deal in a year.

After switching from Ruby on Rails, the Groupon development team noticed a lot of Node.js benefits – 50% faster loading time, using less hardware for the same amount of traffic, developing and implementing features much faster without depending on other engineering teams. 

🛒 eBay

182 million users in 190 countries with the US being the dominant market (35% of all US mobile users use eBay mobile app!). 

That insane amount of traffic required scalable, fast and stable solution. By transferring to Node.js, eBay wanted to reach two goals: make their app as real-time as possible, and connect and configure eBay services that display any information for end-users. Needless to say, goals were achieved.

🚀 NASA

Last but not least, Node.js may not be rocket science but it definitely helped rocket scientists. NASA is probably one of the most important organisations in the entire world ever (The Milky Way galaxy? Universe?) and surely recognises a useful technology when it sees one. It so happens, that Node.js actually saves human life in outer space. 

During a spacewalk in 2013, astronaut Luca Parmitano almost died when water started leaking into his helmet.covering his eyes, ears and nose. Luckily, his colleague Chris Cassidy was there to escort him to safety. After that, NASA halted all spacewalks and investigated what happened. 

The NASA team was already writing JavaScript, so choosing Node.js was basically centring around a single platform. This lowered the time and cost of development. Other Node.js benefits that NASA praised were asynchronous event loop for I/O operations for cloud-based databases and npm that pairs with Docker to create a microservices architecture where each API, function and application operates smoothly and independently. 

Now, according to “Node.js Helps NASA Keep Astronauts Safe and Data Accessible” case study, “The system […] uses a microservices architecture with separate APIs and applications built in Node.js to move data related to the EVA spacesuits from three separate legacy databases to a cloud database. Now users can query that one database for everything, reducing the time to access a comprehensive set of data by about 300%.” Safety first! 

💡 Read more: What can web developers learn from the expensive mistakes of the space industry?

Of course, the list is not complete. Other notable companies using Node.js include Twitter, Medium, Wall Street Journal, Aliexpress, Tumblr, Github, BBC, Home Depot, IBM, Coursera, Mastercard, Trello, Pinterest, Sony, Siemens, BMW, Target, Airbnb, Walmart, Mozilla, Wikipedia, The New Yorker, Change.org.

Why use Node.js in your next software project?

Like I’ve mentioned at the very beginning of this article, Node.js is The Software House’s sweetheart. We’ve hired and/or trained over 20 Node.js developers and 10 full-stack programmers which makes it one of the biggest Node.js teams in Poland. And it’s still growing in numbers!

Our Node.js specialists not only conduct lots of successful Node.js software projects. Check out the sample in our portfolio – the powerful and intuitive ticket sales CMS for content editors – Reservix. They also conduct training, present on IT conferences, organise online webinars and write insightful articles about Node.js on our blog.

So if you’re looking for a reason why use Node.js in your software project, look no further. We’re here to assist and advise you – just give us a shout!

Estimate your project





or contact us directly at [email protected]

This site is protected by reCAPTCHA and the Google
Privacy Policy and Terms of Service apply.

Thanks

Thank you!

Your message has been sent. We’ll get back to you in 24 hours.

Back to page
24h

We’ll get back to you in 24 hours

to address your needs as quick as possible.

Estimation

We’ll prepare an estimation of the project

describing the team compostition, timeline and costs.

Code review

We’ll perform a free code review

if you already have an existing system or a part of it.

Our work was featured in:

Tech Crunch
Forbes
Business Insider

Aplikujesz do

The Software House

CopiedTekst skopiowany!

Nie zapomnij dodać klauzuli:

Kopiuj do schowka

Jakie będą kolejne kroki?

Phone

Rozmowa telefoniczna

Krótka rozmowa o twoim doświadczeniu,
umiejętnościach i oczekiwaniach.

Test task

Zadanie testowe

Praktyczne zadanie sprawdzające dokładnie
poziom twoich umiejętności.

Meeting

Spotkanie w biurze

Rozmowa w biurze The Software House,
pozwalająca nam się lepiej poznać.

Response 200

Response 200

Ostateczna odpowiedź i propozycja
finansowa (w ciągu kilku dni od spotkania).

spinner

Introducing: State of Frontend 2020 report based on a survey of 4500 developers

Get your copy