This year at Node Summit when I asked people what left an impression on them, every single person said, “Wow, lots of big companies are using Node.” The panels and talks were full of companies whose names you’ve heard of running large sites using Node. The list of companies using Node.js in production who spoke at Node Summit inluded: Splunk, Walmart, Voxer, Paypal, GoDaddy, Groupon, LinkedIn, PayPal, eBay, Yahoo, Oracle, Microsoft, HBO, NPR, DirecTV, Pearson, Conde Nast, MasterCard, Creative Artists Agency, Adobe, Mozilla and more! That’s an impressive list and we’ve captured most of these in an infographic.
Of course, running Node in production is not without it’s own technical challenges. When pressed for details, many folks talked about tracking down memory issues. At StrongLoop, we’ve heard this for a while as well, which is why we developed and just released memory profiling for Node.js in our monitoring dashboard, StrongOps.
Performance and Scalability
The conference kicked off with a panel featuring eBay, Groupon, LinkedIn and PayPal. Later a panel included MasterCard and Creative Artists Agency. All of them are using Node in production and at scale. Both Groupon & LinkedIn moved from Ruby on Rails to Node.js for performance and productivity reasons. Sri Viswanath from Groupon said they’re using half the number of machines to run their Node.js tier than when they had it on Ruby on Rails. He had a great quote saying that Ruby is like a minivan, with all the features, and Node is like a Ferrari – crazy efficient and fast.
Another great quote was from Bill Scott at PayPal who said that going from object-oriented to functional programming is a transition for developers. Bill’s team focuses on training to help developers get there.
PayPal said it unlocked the developer’s productivity to let developers work in Node.js. Although, it isn’t always easy to achieve. Going from object-oriented to functional programming is a transition for developers and Bill’s team focuses on training to help developers get there.
Jigar Desai from eBay said to start gradually. Start with one or two apps. For example, they started with two pages that only get a few million hits a day. Seeing success on this helped them build confidence.
LinkedIn deploys their mobile front end 2 to 3 times per day due to the speed of deploying Node, a nod toward the productivity angle. At Groupon, they went from having a build team of 6 people to each developer being able to deploy. Glenn Scott from Creative Artists Agency reflected on how quickly his developers could get started by saying, “I had to orient a lot of brand-new developers to Node.js. The ‘walk-up latency’ is really low. I can get a new person started in 4 hours. It’s really easy to attract talented people to work on Node.js.”
Giles Tamplin from DirecTV pointed out what productivity means in a corporate environment, “There is so much domain knowledge with our corporate systems you need to know to be productive. It takes a new person six months just to learn that, we don’t want them getting hung up on programming languages and heavy frameworks.”
A final note on the productivity power of Node is that PayPal built Node and Java apps in parallel that did the same thing. Java had a two month head start and two more developers. The Node team caught up and met all goals finishing before the Java team!
On top of this, the PayPal Node application in production was twice as fast on requests/second, with 33% less code, and 35% faster response time.
The MasterCard team ran some proof of concepts and reported, “The performance of Node just blew us away.”
Chris from DirecTV had some terrific points on what it takes to do sustained enterprise development with Node. BTW, they’re hiring in Southern California. He points out that to produce maintainable applications that multiple generations of developers can work on you need to:
- make sure APIs are well documented.
- implement some kind of types.
Otherwise, it’s too hard for new developers to learn and keep track of what is going on in the code.
Chris also mentioned that the Node world hasn’t established a standard for private npm repositories. We hope this will get resolved with a standard in the community but meanwhile StrongLoop does offer a private npm registry.
Finally, it was a point of discussion that most of the world use databases and that mature languages have standard libraries for database interaction, but Node has been lacking here. StrongLoop has embraced, is supporting, and has substantially beefed up drivers for many enterprises databases via our support for JugglingDB and its integration with LoopBack. For example, the Node.js driver for Oracle Databases.
Overall, Node Summit was a great show to learn about how big companies are using Node to power their business. The key drivers for them were that Node delivers on performance, scalability and productivity. The PayPal team summed it up pretty well when they said, “No more of PayPal’s web apps will be built in Java. From this day on, we’ll only build in Node.”
- Interested in LoopBack? The documentation and get started guide is here.
- If it’s StrongOps you are interested in, follow the same steps to get the StrongOps agent installed on your own application. The documentation and get started guide is here.
- If you’d like to learn more about pricing or support options, view the subscription plans page.
- Questions? Ask your question in our Google Group or ping us at [email protected].