Why PayPal migrated from java to Node.js- going back to the time

Why PayPal migrated from java to Node.js- going back to the time

PayPal is an electronic commerce company that facilitates payments between parties through online transfers. PayPal allows customers to establish an account on its platform, which is connected to a user’s credit card or checking account. Once identification and proof of funds are confirmed, users can begin sending or receiving payments to and from other PayPal accounts online or through the company’s app.

How is Node.js related to Paypal? 

PayPal was one of the first companies to shift it’s backend working environment to node.js, taking that risk as Node was not so popular during the time when they first decided to adapt it i.e. in 2012.  

According to Jeff Harrell, Director of Engineering at PayPal, PayPal’s websites had accumulated a good deal of technical debt, and they wanted a “technology stack free of this which would enable greater product agility and innovation.”

Bill Scott, a former head of Netflix e-commerce user interface design,  described how PayPal has used Node.js.

But do you know at the beginning node was only introduced as a prototyping platform where it was used to build sort of front-end assets using stuff like Require Js for dependencies, Dust.js for templating, less for CSS? Basically, in the beginning, it was only used for building high definition prototypes.

Long story short Later on, the team of these full-stack developers did a bake-off between the teams that was developing a feature in java and a smaller team that was developing the same feature in node.js and the result of that is the same product was build with node.js in less time with fewer people. And that’s how the team migrated from java to node.js.

Now let’s dive deeper and understand things in detail.

 

  1. They had two application that works exactly the same way with the same functionality.
  2. The java team builds the application by using the spring framework.
  3. Whereas, another team used kraken.js using express, dust.js and other open-source code to build the same application.
  4. The application contained three routes and each route made between two and five API requests, orchestrated the data, and rendered the page using Dust.
  5. They ran their test suite using production hardware that tested the routes and collected data on throughput and response time.

The result for sure was astonishing let’s understand from the following comparison:

The result for sure was astonishing let’s understand from the following comparison:

From the graph, we can easily analyze how node has 

Doubled the request per second than that of java application.

This is even more interesting because their initial performance results were using a single core for the node.js application compared to five cores in Java. 

And talking about the response time, 

There was a 35% decrease in the average response time for the same page. This resulted in the pages being served 200ms faster — something that is going to make a difference.

Enhanced Productivity: The node.js facilitates developers to write code in comparatively less time with fewer additional files.

Node.js improved developer’s productivity by allowing them to less code for a single module. Therefore, the time atrophied to write lengthy codes has been utilized well. Whereas in Java development, the developer has to include unnecessary files and code to run a single module.

Low cost: Someone well said that more resource is directly proportional to more development cost. As node.js development requires fewer developers, the cost of the whole development cycle will be reduced. PayPal invested the least number of engineers in resettling its application from Java to node.js. Thus, they gained a notable amount of profit.

With this, the team had no option left but to adapt node in their backend working environment.

PayPal still has services written in Java and C++ that the web applications and Node.js applications call on. But PayPal Funding Source, PayPal Account Details, PayPal LogOn, and Wallet now have user experiences set by Node.js, not older technologies.

PayPal has redone 22 of its customer applications, most of them formerly in C++, Java, or Java Server Pages, into the lighter, faster, non-blocking functionality of Node.js. One other Node.js benefit: Because it includes an HTML server in its operations, no separate Apache Web Server is needed.

Summing up everything Node was that one technology that saved PayPal company from losing huge amounts of money and losing millions of its customers.

Running a big company is ​_not a new thing many people do it but coping up with time changes and making sensible decisions is going to decide your survival in the market. That actually decides to weather a company will rise or fall apart. If you are not willing to change your business tactics hoping something magical will just happen then my friend you need to find other jobs.  

Recent Posts

Description of Author

  • Karishma Kunwar is currently pursuing her bachelor's degree in computer science and information technology from St. Xavier's College, Maitighar. She loves to describe herself as someone who likes socializing and social situations but values alone time evenly. Music, yoga, and novels keep her going and add colors to her life. This extremely joyful girl has a keen interest in marketing, interacting with people, communicating, and establishing networks. She is a well-rounded individual who lives with passion, dedication, and grace.

Leave a Reply

Leave a Reply

Your email address will not be published. Required fields are marked *