5 Types and 9 Examples of Applications You Can Build with Node.js
Table of Contents
Node.js is the best choice for FinTech, e-commerce, streaming, networking, and IoT apps considering its benefits.
The number one requirement for any FinTech app is reliability. The user should be confident that, once they provide some personal or financial information to the platform, there is no way it can be compromised, misused, lost, or stolen. Fortunately, reliability and data safety is what Node.js has to offer. Node.js is open-source, which means that once there are any errors or loopholes that may affect user data integrity, the developer community will fix them at once.
Among the most popular FinTech Node.js applications examples there is PayPal.
The number of active users: 325 million
The year of launch: 1998
The country of launch: USA (Palo Alto, California)
As far as performance is concerned, the PayPal team illustrates it with the following chart:
The average response time in Node.js is about 35% lower than in Java, and Node handles two times more requests per second.
According to The PayPal Engineering Blog,
So, Node.js has become a lifesaving vest for the PayPal team as it granted them development efficiency, speed, convenience, and improved performance.
E-commerce apps have to be stable — they must withstand heavy data load associated with multiple users searching through their catalogs, making orders, or processing payments. Node.js is perfect for large applications with numerous simultaneous requests due to its event-based, non-blocking input/output model. Among the best-known eCommerce Node JS app examples, there are eBay and Groupon.
The number of active users: 182 million
The year of launch: 1995
The country of launch: USA (San Jose, California)
Initially, eBay was built on a Java-based tech stack, with the entire workflow around Java and JVM. This tech stack seemed to be an obvious choice because of the heavy data load that the system had to handle. After all, the best decision would be to go with a tried and trusted technology to achieve stability and reliability. Yet, as the business grew more popular, eBay had to scale its platform, and scalability is not a strong point of Java. It was when the company started exploring Node.js. They chose Node.js for three fundamental reasons: developer agility, system scalability, and app performance.
According to Senthil Padmanabhan, a Vice President, Fellow at eBay,
We had two primary requirements for the project. The first was to make the application as real-time as possible–i.e., maintain live connections with the server. The second was to orchestrate a huge number of eBay-specific services that display information on the page–i.e., handle I/O-bound operations… With the success of the Node.js backend stack, eBay’s platform team is now developing a full-fledged frontend stack running on Node.js.
eBay seems to have never stopped growing, and Node.js helps eBay on its endless uphill journey. Few apps enjoy Node.js scalability as much as Node.js does.
The number of active users: 43.6 million
The year of launch: 2008
The country of launch: USA (Chicago, Illinois)
In October 2013, the Groupon engineering team reported that they have moved all their web traffic from a legacy Ruby on Rails app to a brand-new Node JS web app. Once the team decided to rewrite their web application and transition to a service-oriented architecture, they have been choosing between Python, PHP, and Node.js. After some profound research, they decided that Node.js must be the optimal solution due to its vibrant community, easy scaling, powerful performance, and NPM (Node.js package manager).
According to Sean McCullough at Groupon Engineering,
Groupon will be one of the largest production deploys of Node.js worldwide. We’re currently serving ~50,000rpm and our overall response times have dropped dramatically.
Apparently, for the Groupon team, Node.js became a chance to revive their application, significantly improve its performance, and join a vivid community of Node.js developers and supportive members.
Streaming is rapidly turning into one of the most profitable branches of the entertainment industry. Similar to eCommerce apps, these platforms have to be able to cope with heavy data flow and multiple requests occurring simultaneously. Fortunately, Node.js is here to save the day.
Netflix is the most popular and heavily used streaming platform built with Node.js.
The number of active users: 182 million
The year of launch: 1997
The country of launch: USA (Scotts Valley, California)
According to The Netflix Technology Blog,
With Node.js and React.js, we can render from the server and subsequently render changes entirely on the client after the initial markup and React.js components have been transmitted to the browser. This flexibility allows for the application to render the exact same output independent of the location of the rendering. The hard separation is no longer present and it’s far less likely for the server and client to be different than one another.
Today, Netflix is the largest streaming service used by over 182 million people worldwide. The transition to Universal JS and Node.js, in particular, allowed the company to withstand heavy data load and provide a practical user experience. It also allowed the developers to introduce any necessary changes quickly and easily.
Social networking apps have to be reliable and scalable. On the one hand, they feature many personal information — phone numbers and email addresses in the best-case scenario and financial information in the worst-case scenario. On the other hand, the system should expand as the network grows larger. Node.js offers a perfect opportunity for scalability, both horizontal and vertical. To scale horizontally, you can add new nodes to the existing system. To scale vertically, you can add additional resources to the existing nodes.
Examples of the best-known networking Node.js apps are LinkedIn, Twitter Lite, Medium, and Trello.
The number of active users: 675 million
The year of launch: 2002
The country of launch: USA (Mountain View, California)
LinkedIn was originally built as a Ruby on Rails process-based system. As the company expanded and the platform grew more popular, the urgent need for app scalability appeared. Yet, Ruby on Rails is not the most scalable language, and extending the project would require a lot of time and costs. Ruby on Rails could not provide the performance that LinkedIn needed, it wasn’t optimized for JSON translation, and it complicated the development of the mobile LinkedIn app. The engineering team was looking to replace RoR with some evented language or framework, such as EventMachine in Ruby or Twisted in Python. Eventually, they chose Node.js.
Kiran Prasad also admitted that Node.js won his affection because it facilitated and sped up the coding process. He claims that it takes only 20–100 milliseconds for Node to run the app and at least 15–30 seconds for the Rails console only to come up. Besides that, Node.js is lighter, thinner, and faster overall.
Going with Node.js was a significant technical vector change for the LinkedIn team. Yet, this change proved to be a good one. The outstanding performance and reliability of the LinkedIn platform prove that the LinkedIn team made an excellent choice.
The number of active Twitter users: 321 million
The year of launch: 2006
The country of launch: USA (San Francisco, California)
Every month, tens and hundreds of millions of users visit the mobile version of Twitter, and yet, Twitter Lite remains fast and reliable. It is network resilient, interactive in under five seconds over 3G, and resource-efficient — it uses 40% less data than before. Also, Twitter Lite has become more development-friendly: app changes are easier and faster to code and deploy.
According to Nicolas Gallagher, an engineer at Twitter,
The simplicity of this basic architecture has helped us deliver exceptional service reliability and efficiency at scale – Twitter Lite an order of magnitude less expensive to run than our server-rendered desktop website.
Node.js helped Twitter to take its mobile app to a new level. Its powerful and seamless performance greatly improves the user experience. Meanwhile, the convenience of Node.js tools greatly facilitates development.
The number of active users: 25 million
The year of launch: 2011
The country of launch: USA (New York City, New York)
The back end of Trello is built in Node.js. The company aimed for an event-driven server from the very beginning because Trello needs to display updates instantly, so many connections have to be kept open simultaneously. They used Node.js even at the prototyping stage — the Node.js server was a mere library of functions invoked over a WebSocket. Prototyping with Node.js granted the team great flexibility and development speed, which were essential for the prototypes to be regularly updated according to the market research findings.
Sure, Node.js development of Trello has been intertwined with issues and difficulties, for instance, a considerable amount of continuation passing. Yet, the Trello team solved these challenges, mainly using the async library to keep the code under control.
According to brett at Trello Blog,
Node is great, and getting better all of the time as its active developer community churns out new and useful libraries.
Today, Trello is one of the most popular and often used task management platforms. As their business is expected to grow, the platform itself will be scaled up as well — fortunately, Node.js grants a vast room for the opportunity to do that.
The number of active users: 60 million
The year of launch: 2012
The country of launch: USA (San Francisco, California)
The Medium platform is based on a service-oriented architecture. The main app servers are written in Node.js, which gives an important opportunity for code sharing between the server and the client. The choice of Node.js for Medium back end is associated with some performance drawbacks because, in some cases, the event loop is blocked. Yet, this issue is solved with multiple instances per machine and route expensive endpoints to specific instances. Moreover, the V8 engine of Node.js offers a huge benefit — the ability to see which ticks are taking longer to execute than others.
According to Dan Pupius at Medium Engineering,
Our main app servers are still written in Node, which allows us to share code between server and client, something we use quite heavily with the editor and post transformations.
In any case, Node.js is the best available choice for the back end, and it does work its magic for Medium. Despite any development difficulties, Medium has grown into one of the most powerful, popular, and user-friendly blog platforms worldwide.
The subject of IoT and Node.js is so vast and vital that it is worth its article. We have written one! Feel free to read it if you want a deep dive into the Node.js in IoT. But keeping it short, Node.js benefits IoT development because of the following:
- It is fast and performant,
- It is easily integrated with IoT protocols,
- It facilitates IoT development with the help of IoT modules,
- It is resource-efficient and scalable.
To Wrap Up