27 February, 2021

James Holmgren is CTO of Infinite Red, a studio for React Native development and UX / UI design. We talked with him about the best CLI tools and libraries, his work with Gluegun 2.0, and how he contributes to React Native core.

What technologies are you using? What programming languages, frameworks and tools do you prefer?

I love using all kinds of different programming languages, frameworks, and tools. Right now I’m mostly focused on JavaScript, TypeScript, React, React Native, and Node. I also really enjoy Elixir, Ruby, Elm, and a few others. I like building CLI tools especially. I maintain Gluegun, which is a CLI library, as well as other open source.

What project are you currently working on? What are your responsibilities and tasks?

I lead our engineering teams which are working on about 8 different projects right now. I manage 13 full-time engineers and 6 contractors. I also handle our technical sales, which takes up about half my time.

I generally work on our open source projects. I spend the first hour of the day on open source when I can. I work on Ignite, which is a CLI that quickly spins up React Native apps, as well as React Native core tasks, Gluegun, and other smaller projects.

I recently released a tiny website that I use all the time in my workday called textbox.page. It’s quite useful for taking quick notes and “remembers” your content between visits.

Tell us more about your work w/ Gluegun 2.0: What is it, how much time/ effort did it take? And what were the tech challenges?

It was a pretty big effort! I had to upgrade several key dependencies which had big breaking changes. I also resolved to upgrade the JavaScript to TypeScript, which was both helpful and educational for me. And I also had to help upgrade multiple projects that depended on Gluegun to ensure they were compatible. It was a big effort, but I am very happy with where Gluegun is now.

What does it feel to be part of React Native core team and what are your projects there?  

I really enjoy it! I help maintain the React Native WebView, which is a big challenge. We have to support iOS and Android, and a lot of the code is written in Objective-C and Java. I am also involved in lots of discussions about the direction of React Native. I appreciate the opportunity to do all of that.

You are proud dad to 4 kids, how do you find time to combine family & work and what are your pro tips for multitasking? Do you prefer coding at day or night?

This is a great question. My kids are pretty used to their dad working from home now, so they generally know not to bother me. The tough thing is when they first come home from school and they want to show me their projects, and I’m in a video meeting. People always understand, though!

I work from home which is a great way to support both family and work and seamlessly interweave both. My kids can also see me working and understand what it’s all about.

I like coding both day and night. 🙂 I love coding! Late nights used to be my favorite, but now that I’ve been doing mornings, I like that even better. I get the kids off to school and then sit down with a hot cup of coffee and put some music on and start coding.

What’s your view on the future of React?

I’m very positive about React’s future. I think it’s been demonstrated as an excellent way to build apps across all browsers and mobile operating systems. The momentum is huge right now and React hooks have just continued that trend.

I do think it’s past the “hype” phase. That’s okay! We can settle down and build software now.

Will the future of programming make the developers’ work easier?

I think that’s been demonstrated throughout history and will continue to be the case. However, with easier work comes room for innovation, so we tend to expect more from ourselves. Apps used to take a team of a dozen and many months to complete and now the same work is being done by smaller teams in shorter time. Additionally, there are new paradigms coming (AR, machine learning, blockchain) that introduce new challenges.

What’s your pro tip for Developers to make it through any Technical Interview with a Recruiter?

Be honest and optimistic. Set expectations where you can meet them, but also don’t be too hard on yourself. If you don’t know something, it’s okay to say so, but also ensure they know that you would be interested and capable of figuring it out given some time to research it.

Tags: , , , , , , , , , , , ,