Is the mere fact that NASA uses Node for its space-suits a good reason to consider hiring Node JS developers for your own project???
@BenjaminCoe You heard correctly, and yes we do.
— Collin Estes (@CollinEstes) 3 июня 2016 г.
Okay I have to admit it, whenever I hear that NASA adopts a programming technology, it automatically makes me believe the said technology is super-awesome. Still, there’s a lot more to Node JS than just that.
Over the past seven years since its launch in 2009, Node has grown into mature ecosystem with a massive following. Namely, the Node JS community listed 1,238 contributors as of January 30, 2017.
What’s more, tech giants like Google, Facebook and Microsoft have hired teams of Node developers to push this technology forward. With these names on the list, no wonder that other major tech brands are actively adopting Node as part of their production strategies.
In fact, let’s take a brief look at three companies that have used Node in their products. Understanding what lead these companies to choose Node will help you make an informed decision on whether this technology is a good fit for your next software project.
Uber hired a team of Node JS developers to build a scalable matching platform
With hundreds of startups striving to become “the Uber of” their respective niches, you can tell that Uber is a big deal.
As of 2016, the company has been doubling in size every half a year — and it needed a server-side technology able to keep up with this pace. Actually, this is the exact reason why Uber hired a Node JS development team and put Node into full production.
According to this white paper from Uber, here are the three reasons they’ve chosen Node:
- The asynchronous nature of the technology makes it great for distributed server-side systems that process tens of millions of daily requests.
- With Node JS, developers can inspect and fix errors on the fly which enables constant deployment, facilitates production speed and eliminates bottlenecks.
- The technology is open source, which means companies can hire Node JS developers from a vast community and benefit from global support.
As of 2016, the Node-based components of the Uber platform processed over 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 back end in the near future.
PayPal made its web platform 2x faster thanks to Node JS
Uber’s experience with Node JS effectively demonstrates how this technology can perform in high-load applications. The case with PayPal’s web platform can further illustrate the same point. What’s remarkable, the production team behind the world’s largest online payments system 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 JavaScript-based environment (such as Node JS) helped PayPal bridge the gap between the company’s web UI team and the developers working on the underlying logic of the web platform. As a result, hiring a Node development team effectively doubled PayPal’s production speed with fewer developers on board.
Aside from fixing the production process, the introduction of the new technology also brought palpable benefits in terms of software performance:
- Even on single core, Node-based system could handle 2x more requests per second than the older Java application running on five cores.
- With a 35% decrease of response time, 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-based predecessor.
Netflix hired a Node development team to revamp its UI
For Netflix, adopting Node was a part of global changes aimed to move 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 replacement for the Java-based layer of code that generated a large part of the UI markup. By doing so, the company strived to improve the overall performance of its client-side software and bring better UI customization options to its users. Besides, the use of the same programming language eliminated 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%. Needless to say this change alone had a major positive impact on the user experience.
Bottom Line
The list of tech brands that have successfully adopted Node includes other other big names, like LinkedIn, Groupon, GoDaddy and a dozen 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 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 DedicatedTeams, and we will help you choose the technology that will be optimal for your project. Besides, DedicatedTeams is the place where you can find some of the best Node JS developers for hire.
[…] backend technology for small websites. It took almost five years before big names like PayPal started building large-scale applications with Node.js. And it took even more time for the larger developer community to pick up Node as a mainstream […]