bitHound Blog

Interview with Joe McCann

Welcome to the second instalment or our interview series, where we talk to developers about development, Node and working with teams. In this segment we talk with CEO and Co-Founder of NodeSource Joe McCann.

Joe McCann

What teams really need to gain the most leverage from Node.js is proper tooling!

Tell me a bit about yourself and the great things you’re doing at NodeSource.

I'm Joe McCann and I work at NodeSource... I've been here since day one. I love my job and love my team like they are family. I'm honoured to be a part of it! Also, I DJ raves from time to time. NodeSource is the Enterprise Node.js company offering the only commercial version of Node.js explicitly focused on the needs of Enterprise users of Node.js. We are 100% committed to the expanding the community of Node.js users. The community is primarily made up of folks in the open source community and the enterprise. We diligently focus on both cohorts. From our inception, we have employed people to work full time on the open source project, including the project lead, Rod Vagg, to continue to support the project's health and explosive growth. We also serve the needs of the enterprise with a team focused on our building our flagship product, N|Solid while also serving up best-in-class product Node.js support. We're busy!

I know you are fully focused on enterprise Node.js, what would you say is driving Node.js adoption in the enterprise?

In a word, agility. Every company is now a technology company and every company is looking for a way to increasingly serve their customers with the best experiences possible without sacrificing quality or security. Node.js is a key enabler of agility in the enterprise for all the reasons we love Node -- small core set of APIs, great out-of-the-box user experience and a truly massive and thriving community and ecosystem. When you convert this to business terms the operational expenses (opex) savings are so attractive that economic decision makers inside organizations are shifting their focus to using Node.js to save money, drive innovation and attract and retain talent.

With Node.js still being considered a new platform, what are some of the barriers to adoption in the enterprise in your opinion?

In a lot of cases, it is simply education. JavaScript on the server or more comprehensively, not in a browser, has very different programming implications and nuances. For example, most front-end JavaScript developers don't have to worry about secure memory allocations because the browser is sandboxed. Not so in Node.js land! Or how large teams build Node apps with its asynchronous, event-driven model is unique -- not only to seasoned systems engineers but front-end developers as well. The reality is, education is only the first step in what we at NodeSource call the Node Maturity Curve.

Node Maturity Curve

What teams really need to gain the most leverage from Node.js is proper tooling! If you had one plumber to fix a leaky faucet, you could add more plumbers to collectively fix it but one plumber with the right tools is typically all you need. At NodeSource, we've identified the tools that the enterprise expects and frankly demands for widespread adoption thus helping move them further out in the Node Maturity Curve.

What are some of the biggest challenges Node.js teams have to deal with?

A lot of it is less Node.js specific and more "big enterprise" focused such as teams working in silos, lack of knowledge sharing, minimal code reuse and the normal bureaucracy you see in large scale organizations. That being said we do see a huge set of challenges around the npm ecosystem -- it's size and breadth is a blessing and a curse for large teams. In many cases, we see a desire for curation of modules, their freshness, their security, etc. Moreover, on-premise Node module registries is far from solved, not because our friends at npm Inc. don't have a solution, but because a ton of enterprises already have enterprise package managers for their polyglot environments. This becomes a struggle internally because developers just want the flexibility of npm but have to adhere to what they've been provided.

If there was just one thing you could tell a Node.js team to do, what would it be?

Contribute to the open source project itself. It is undoubtedly the most rewarding thing about being a developer -- giving back to a project that will be consumed by billions of people, worldwide. Commit, as a team, to taking time to update a module, polish up some docs or tackle a hard problem in C++. It has huge value from a learning experience but it also bonds the team in a very unique way that is quite different from working on one's day-to-day tasks.

What developer would you like to see interviewed on bitHound?

Oh man this is a tough one. Rey Bango is a great friend and an even better entertainer so he would be good fun but I think Sarah Novotny would be perfect. I had the pleasure of sitting on a panel with her at a conference in 2015 and I was simply in awe of her technical acumen and more importantly, her crisp articulation of incredibly technical topics for a general audience. Hands down one of the best in the tech industry.

About Joe McCann

With more than 14 years of web, mobile and software development experience, Joe has worked with myriad Fortune 500 companies helping them build real products. From being a techno DJ to working on Wall Street, Joe’s perspective he brings to technology is rather unique. Joe is a frequent speaker on the global conference circuit, actively promoting emerging technologies and relevant business use cases to bring pragmatism to futurism. You can follow Joe on Twitter.

Stay tuned for our next instalment? Want to be part of the series? Let us know!

bitHound identifies risks and priorities in your Node.js projects.