Going to build a Node backend for your next project? Here’s the single best reason to call Node an amazing technology.
NASA (the NASA!??) engineers are using it as part of their software that helps them control spacesuits. I say if Node JS is reliable enough for sending people into outer space, it’s great for pretty much anything.
In case you have 19 minutes of spare time, here’s a video explaining Node and how it found its way into and spacesuits: https://vimeo.com/168064722
Okay I have to admit it, hearing that NASA adopts some specific technology automatically makes me a tad overly excited about the said technology. But there are quite a few, ehm, down-to-Earth applications of Node that I find awesome.
You probably know that tech giants like Google, Facebook and Microsoft actively invest into the growth of the Node ecosystem. Given this, it is no wonder that other big brands hire teams of Node developers to build distributed backend systems and deliver more streamlined user experiences across their web and mobile properties.
Let’s take a brief look at three companies that have used Node in their products. Understanding what led these brands to choose Node will help you make an informed decision on whether this technology is a good fit for your own software project.
Uber hired a team of Node JS developers to build a scalable matching platform
With hundreds of startups striving to become “Ubers” in their own niche, you can tell that Uber is a big deal.
In 2015-2016, the company has been entering new markets, effectively doubling its customer base every half a year. This growth rate required a robust, scalable backend platform that could keep up with the tempo. And that’s exactly why Uber shifted it’s focus from older technologies and hired a Node JS development team.
According to Uber’s own report, the following strengths of Node convinced them to incorporate the technology into their backend systems:
- Node JS is asynchronous, which makes it well-suited for distributed server-side systems that handles tens of millions of daily requests from across the globe.
- Node JS fuels constant deployment by enabling developers to fix errors on the fly.
- The open-source nature of the technology, which means companies can hire Node JS developers from a vast community and benefit from global support.
As of 2016, the Uber’s Node-based backend processed more than 2 million remote procedure calls at peak load. To further expand the capacity of their platform, Uber is planning to hire another 1000 developers to work on its Node-based system in the near future.
PayPal made its web platform 2x faster thanks to Node JS
Uber’s experience with Node JS demonstrates how this technology performs in high-load applications. The case with PayPal’s web platform further illustrates the same point. It’s also worth noting that the PayPal used Node as a substitute for Java.
According to PayPal’s Jeff Harell, the effort of hiring a team of Node JS developers initially pursued a goal of streamlining the overall production process:
Historically, our engineering teams have been segmented into those who code for the browser (using HTML, CSS and JavaScript) and those who code for the application layer (using Java). Imagine an HTML developer who has to ask a Java developer to link together page “A” and “B”. That’s where we were.
Moving to a JS-based environment helped PayPal streamline the communication between the company’s UI team and the developers working on the underlying logic of the web client. Besides, hiring a Node development team doubled PayPal’s production efficiency with fewer developers on board.
Aside from fixing the production process, the introduction of the new technology also helped PayPal increase its software performance:
- Node-based system could handle 2x more requests per second than the older Java application.
- With a 35%faster response, it took the new applications 200 ms less time to load a web page, which is a noticeable improvement of the UX.
In addition to the overall performance increase, the Node-based application had 33%fewer lines of code and 40%fewer files as compared to its Java predecessor.
Netflix hired a Node development team to revamp its UI
For Netflix, adopting Node was a part of global process of moving from a monolithic Java-based application to a modular, service-based backend structure. In 2015, the company started migrating from a centralized local datacenter to a cloud architecture. Its next step was hiring a team of Node developers to revamp its UI logic.
Just like PayPal, the company tasked its Node crew with building a substitute for the Java-based layer of logic responsible for generating UI markup. By doing so, they improved the overall performance of its client-side software and brought better UI customization options to its users. The use of the same programming language for frontend and backend also helped the company eliminate unnecessary friction in the production process.
According to Kim Trott (the director of UI engineering at Netflix) the company’s UI team was having troubles writing “a lot of Java code to produce the website” and making it work with the JavaScript-based front end. With Node, both the UI and its underlying logic would be written in JavaScript.
With Node, Netflix managed to decrease the time required for its app to start up by 70{000bbb331541ee98a585d09d1dec22651bc5a2cf5f250bb8bab56b6c2a3a5953}. Needless to say this change alone had a major positive impact in terms of UX.
Bottom Line
The list of tech brands that have successfully adopted Node includes other other big names, like GoDaddy, LinkedIn, Groupon and more. In a nutshell, this proves that Node has found its place in large-scale web applications — the niche where Java used to rule supreme. And, as the cases above prove us, companies choose Node due to its three strengths:
- Node shines when rapid deployment is a must.
- Node is based on JavaScript, which makes it great for web UI projects.
- When implemented correctly, Node can can compete with Java-based UI logic in terms of performance.
But does this automatically makes Node a good choice for your project? Should you hire a team of Node developers, or would a tried-and-true technology like Java make more sense? Actually, the choice depends on quite a few factors.
In particular, many people would argue that Java is better for complex systems because it’s compiled. Node, however, is well-suited for the web tier of large applications and for teams that are very comfortable with JavaScript. Also, hiring Node developers is definitely a good idea if you want to keep both the UI and the backend on the same language stack.
So, basically, the best way to make an informed decision is to consult a professional?. Contact AppDevShop, and we will help you choose the technology that will be optimal for your project. Besides, AppDevShop is the place where you can find some of the best Node JS developers for hire.
Thanks, great article.