Node.js Brings A Shared Skill-Set to the Capital One Developer
You can follow our YouTube channel playlist to keep up with future episodes. And, if you think you have a good topic on this, send us a message via Twitter and we’ll see if it’s a fit.
Mikeal Rogers: Hi everybody! Welcome to Node.js Foundation Enterprise Conversations’ first episode. I’m here with Azat Mardan from Capital One. He is an accomplished author on Node.js, has amazing blogs, etc. Hey Azat!
Azat Mardan: Hello everyone!
Mikeal Rogers: Let’s just jump right into it. Why don’t you tell us a bit about yourself, your role, your team, and what you’re doing over there at Capital One with Node.js?
What I’m doing at Capital One… That’s a great question, actually. A few of my friends, they were joking like, “Hey, you joined a bank right?” because most people, they think of Capital One as a bank and not as a technology company, which it is. At Capital One, and especially this Technology Fellowship program, we bring innovation so we have really interesting people on my team: Jim Jagielski and Mitch Pirtle. One founded Apache Software Foundation and the other, Joomla!, so I’m just honored to be on this team.
My goal is to bring Node.js to Capital One and to teach Node.js courses internally at Capital One. I also write for the Capital One blog, and provide architectural advice as well.
Mikeal Rogers: Could you just tell me a little bit about how long you’ve been using Node.js and what you’ve been using Node.js for over at Capital One, and how it all started?
Azat Mardan: That’s a question I’m still trying to find out [in kind of a survey] because it’s a big company, right? We have over 5,000 engineers and different teams who started using Node.js at different times. Right now, I think a few of our most popular use cases and examples would be Hygieia, which is an open-source dashboard for DevOps. It started in 2013 and we announced it last year at OSCON. As of yesterday, it has about 900 GitHub stars; I was surprised to see that, so that’s doing pretty well. We’re using Node.js for the frontend and for the build too, for that project.
Other use cases for Capital One, mostly we use Node.js for the orchestration layer. We actually have three versions of Enterprise API and most of it builds on Java, so that’s how it was initially done back in the day, but it’s not convenient to use them on front end. We are an Angular shop mostly, we have a little bit of React, so for our front-facing single page applications we need something to massage the data, something to format it, basically to make multiple codes to the different APIs, so that would be the orchestration layer and Node.js is really great at that. It’s a brilliant technology for that piece of stack, because it allows us (first of all) to use the same knowledge from the front end, to reuse some of the modules, to use the same developers… I think that’s the most widespread use case at Capital One, in terms of Node.js.
Mikeal Rogers: You talked a little bit about how it allows much more transferable skill-sets between the front end and some of the back end team, and it allows them to be a little bit more integrated. Could you talk about what the effect that has had on the company and on the application, being able to have people touching more stuff with the same shared skill-set?
From the business perspective, as is mentioned, we can reuse some of the modules, like templates for example, and some of the libraries. I think that’s great from both perspectives, from the developers and from the managerial perspective.
Mikeal Rogers: Talk a little bit more about the managerial perspective. I mean, is it just that you have less people doing stuff or is it actually that there’s more cross-collaboration going on than there used to be?
Big companies like Capital One will definitely need pure back end engineers for some of the projects, but now I see these teams where you have those ninjas; they can do front end, back end, they can do a little bit of DevOps, and the teams become smaller. Instead of seven people, let’s say or even two teams, one is a pure back end and one is a pure front end, you have maybe a team of five and they’re doing the back end and front end. That removes a lot of overhead in communication because now you have fewer people, so you need fewer meetings and you actually can focus more on the work, instead of just wasting your time.
Mikeal Rogers: That’s great, that’s really great. When you look at where Node is going and the future of Node, what makes you the most excited? What are you interested in for future Node stuff?
Azat Mardan: I’m really excited about this year, actually. I think this year is when Node.js has gone mainstream.
After I went to Node.js Interactive in December, a great conference by the way, basically it’s like seeing all those major companies supporting Node.js. IBM said that Node.js and Java are the two languages for API they would be focusing on, so I see this adoption in the mainstream coming, unlike what we’ve seen in Ruby. Ruby, I think, is still more for startups and PHP is more for startup websites as well. None of the big companies would use PHP for APIs.
Mikeal Rogers: That’s great, yeah, and what I’m really excited about as well. I think that’s all the topics that we had. I’d like to have little short conversation here. This was really informative though, I learned a lot about what you’re doing over there, so thank you, Azat.
Azat Mardan: Thank you.