Should a (dev) manager learn ReactJS?

As you might now, I work as a Development Manager. The role is wide but I am basically the manager of a group of developers, testers, etc. It also means I am responsible for hiring and growing my team.

I have a rather long career behind me as a developer and I can move around in almost all “old” languages, ranging from COBOL (well, it might need some refresh before I actually write something useful) and C/C++ to Java and Python (and a bunch of other languages). That is helping me a lot when I work with my teams because they know that I understand their job, and probably understand the challenges they have (most of the time). At the same time, having the feeling of knowing what they do makes it extra important for me (and them) to not interfere but let them do their work (they are probably better than I am at it) except when I happen to know something which can push them in the right direction.

Because I pretty much stopped coding as a primary job back in 2012, my coding has mostly been on my hobby projects to keep my skills alive (and because it is fun), I also do have a tendency of using code as the mean to get data out of APIs when I need to put reports together and cannot think of a better way to get the data I want :-). To not be a developer by trade anymore means that I haven’t really kept up with the last years’ trends when it comes to things like SPAs (Single Page Applications) where the entire app can live in a browser and be written in Javascript.

Do I really need to keep up? I am a manager, not a developer.

Yes I do! Partly because half my team is living in that world which makes it important for me to understand their challenges and need to find ways forward (quite often by just reflecting over the problem with someone who can listen and understand). But I have also found another reason which turns out to be equally important (for me).

I realized a year ago that when I interview developers, my gut feeling means much more than I had realized before. When interviewing a java developer, I pretty quickly get a gut feeling for if the person on the other end of the table is just talking or if he or she can also walk. Simply put, it is hard to fool me because of my dev background. I am of course not alone, I usually have one or two of my senior developers helping me interviewing and I trust them blindly, but even when we all agree, it feels safe when my gut feeling approves as well. It also happens that I need to do a first interview without one of the devs because they are super busy doing actual work and, when that happens, knowing that you can trust you gut feeling is good.

As I said, I could trust my gut feeling when it comes to interviewing java devs, but when I interviewed front-end developers (javascript) my knowledge in the area was way to outdated. Sure, I had done some html, javascript and even Angular (1.5) but that had been mostly a framework for separating model and view and do data driven web pages. Quite often the end result was pretty messy and unmaintainable and the fact that I couldn’t establish that gut feeling was even more worrying to me than not being sure the candidates are good. To fix that, I decided to learn React, Redux, ES6 etc. well enough to be able to talk about it with candidates to ask questions and know that they would have to respond to what they consider being someone who knows what he is talking about and not simplify it to a manager level.

There were just one way to get there, it was time to take on the developer hat, put myself in front of YouTube and find some really good tutorials. To learn, you also need to do. So I decided to take one of my really old and horrible hobby projects (written with Google Web Toolkit, “write in java, get javascript”) and rewrite it into a modern Single Page Application with ReactJS (and later Redux, which is a must when you’re doing something bigger).

The trip has been super fun! I will probably never work full time as a developer again (never say never) but I have learnt a lot and by now I can, with a good conscience, not just interview front-end developers and trust my gut feeling but also follow and contribute to discussions we have when we do backlog refinement or discuss solutions in general. Besides, I have always loved coding so it has been a bit of an improvement to life in general!

Here are a few suggestions for where to start:

The first video will help you becoming a modern javascript developer, almost guaranteed if you already have a developer background.

Redux, I would suggest that you wait with for a while. When you have written your first application in React, you will notice that you are sending parameters up and down the component hierarchy as attributes in a way that makes you wonder if you are doing things right. With Redux, you get a “store” serving as a single point of truth for all state in the application. That will be a minor revolution for your development but it is good to have seen the issues it solves in reality as well.

Have fun!

ps.
The answer to the question in the headline is, of course, “No, the manger doesn’t need to learn it but do it anyway!”