The rapid adoption of Node.js by large enterprises in recent years provides many interesting case studies and highlights the key reasons Node.js is being chosen as a tool for modernizing enterprise software development.
* SOA for the cloud era. After a decade chasing the dream of Service Oriented Architecture, companies with large, monolithic code bases are seeking to break these apps up into smaller, decoupled and more nimble services. This “unbundling of everything” better exploits the cloud architecture deployed in most modern data centers. Node.js has proven its utility in this area, not only as a technology choice, but for the development methodologies it encourages.
* Performance. Node.js represents an attractive compromise between performance concerns and platform approachability for developers. While there are other platforms that match or exceed the performance of Node.js, none are as approachable for such a large portion of developers. Additionally, the asynchronous programming model of Node.js encourages performant development practices that are either difficult or risky in other languages and platforms. Performance was cited as the top reason for using Node.js in a recent developer survey.
* Attract and Retain Developers. Enterprises seek to follow the example set by MasterCard, GoPro, Condé Nast and even NASA in connecting with the vibrant open source community and positioning themselves as attractive employers for top talent.
* Collaboration. Large enterprises tend to have internal organizational or technological silos that can represent an unnecessary business risk. These barriers need to be removed so engineering knowledge and personnel can cross between and within internal business units. The module-driven approach of Node.js encourages small teams of developers to solve atomic problems of functionality that interact with those of other teams. This encourages greater interaction and cooperation between developers.
Short-term focus on the following areas can increase the likelihood of successful Node.js adoption.
- Embracing code modularization, sharing and collaboration
- Building an infrastructure for a true SOA environment
- Communication and organizational barriers
- Elevating Node.js to a high-priority platform
Enterprises use Node.js for simple but profoundly effective reasons: ease and speed of development, the ability of Node.js to be highly distributed and scalable for both small and large implementations, and the ability to use new methodologies within an enterprise environment that allow for growth and success on a large scale with remarkably small overhead.
Node.js is past the point of proven effectiveness - Groupon, Capital One, Google, Macy's, Uber, ADP, Microsoft, Intel, and countless other enterprise companies have adopted Node.js as a tool of choice for a highly diverse set of applications, tools and interfaces. These enterprises have done so with great success, continuing to create and enhance their Node.js infrastructures to drive digital transformation and have the agility to constantly innovate.
Shaw is CTO and co-founder of NodeSource, where he is dedicated to helping improve and expand the Node Community. He is a veteran of numerous Node.js startups, including Voxer, Spreecast and Storify.
Sign up for CIO Asia eNewsletters.