This post is part of a series interviewing veteran developers, asking them questions about their journey to tech mastery and sharing the advice they have for those getting started.
Today we’re talking to Juho Vepsäläinen, a conference director and consultant. Juho is behind the SurviveJS effort, where developers train to optimize their development workflow’s tooling. He has been active in the open-source scene since the early 2000s and has participated in projects like Blender and webpack as a core team member. You can follow Juho on Twitter @bebraw.
Let’s hear what he’s learned on his career in the tech industry and how that coincides with his personal journey of self-discovery.
Basic logistics: Stack? How long have you been doing it?
I recently wanted to find out how long I’ve been using React, and I found out the answer is since 2014. I believe I was one of the early adopters of the technology, and I even wrote my first self-published book about the topic. Since then, I repurposed the React portion of that book as a book of its own.
When working on the back end, I tend to use Node.js, although during the past year I’ve been dabbling with Deno in my personal work, as I see it has a bright future ahead. Ryan Dahl initiated both projects, and I believe Deno is his attempt to fix mistakes he saw in Node.js. Deno provides a modern baseline for projects, and I’ve found it’s on a great path and worth trying at least.
What made you want to go into programming?
I think I wrote my first computer programs around 1993 or so using BASIC, but it was only around 2001 or so when I became more serious about programming, as I was studying electronics and learned to use C.
I came by Blender, an open-source 3D suite, during my university studies by chance in 2005. Since then, my involvement with Blender became more serious as I became involved with the project and even visited Amsterdam a couple of times for Blender Conference. Originally, I went to the local university to study electronics. But the university dropped the option during my studies, so I went with the software engineering track and eventually bumped into Django, jQuery, and web development.
I have been interested in computers since I was a kid, but the interest in programming grew only later with my studies. The university studies, in particular, gave me an appreciation of the field, as they provided perspective on technology that has been useful ever since in my daily work.
What were you most worried about when you made the decision to pursue a programming career?
For me, programming was a natural path that came out of what I was doing. These days, I do more than just programming. Organizing the React Finland conference is a part of my daily work, although it has been difficult since the 2020 pandemic, which threw a spanner in the works and altered my personal plans rather drastically. Part of my work at React Finland includes participating in vodcasts like this one.
What surprised you most at your first programming job?
I believe I had my first programming job at the university. As it has been a while, I don’t remember anything particularly surprising. But at the same time, I already had experience working with software in open-source projects and university courses. So, the transition to working for money was nothing special. Perhaps the surprising thing is that there was nothing surprising, given my background.
What turned out exactly as you expected it to when you got your first job?
I didn’t have any strong expectations for my first job. As a university student, it was a good chance to earn a bit of extra money beyond the basic support provided by the government.
What advice would you offer to people considering a career change to programming?
One of the basic truths of programming is that it’s more about people than technology. Programming itself is a small part of the job, although you may find yourself in a position where most of your work has to do with coding. I think that to be successful in the profession, you should put emphasis on soft skills as well.
Another important thing to remember is that to be an effective programmer, you need domain knowledge. Understanding a specific domain makes you wildly more productive within it, as you’ll know the terms and how processes are expected to work. For someone changing careers, this can be a huge plus, as you might have some applicable experience already.
Did you ever think that you’d made a huge mistake getting into this field?
I remember when I was a kid, the main options I had in mind were art, architecture, or engineering. I believe I could have been successful in any of the paths. In retrospect, going with software wasn’t a bad thing, as software is literally eating the world. Anything that can be made digital eventually will be made digital, and there’s still a lot of work to do in this department.
You could say each business is a software business, even if it doen’t know it yet. Computers and software have become so embedded into the way we work these days that you barely even think about it. Based on that, I think going into software was a good decision.
What mistakes did you make that you think others following in your footsteps could learn from?
I think everyone has to walk their own path, as we come from different backgrounds and conditions. I was lucky enough to be born into a relatively wealthy country that has a strong focus on education. The system supports you regardless of your background and gives you a chance to develop.
You can always say that it would have been better to take some other turn in your life, but you shouldn’t regret these things. They say experience is about making mistakes and you are a true expert when you have made most of them.
A good friend gave me nice advice related to this when I was still starting out with open source. He suggested that I try different companies before I turned 30 to try to understand what suited me.
When I was around 28, I had a small crisis in my life. I understood that I would be 30 soon and I hadn’t achieved that much yet. It was during that period of time that I started to write seriously and published my first book. That led to the creation of my company, traveling Europe, finding a partner, getting new friends, living abroad for years, organizing conferences, and eventually buying an apartment and moving back to my home country.
At least in my case, the point was to get moving instead of floating, and that led to experiences I couldn’t have imagined beforehand. I think the mistake would have been not to start moving.
Who has influenced you the most so far in your programming journey?
In my early programming years, the leader of the Blender project, Ton Roosendaal, made a serious impact on how I think about project leadership.
And back when I was in university, Vesa Lappalainen and Antti-Juhani Kaijanaho influenced the way I approach programming. They also gave me an appreciation for different ways to program.
What programming reference materials can you not live without?
What’s something that no training/bootcamp/degree could have prepared you for?
It’s soft skills that are difficult to pick up when you focus on technology. There’s a lot to learn about different cultures, and I believe living abroad has made me more aware. At the same time, it has given new appreciation for my native culture and country I otherwise might not have. They say travel is a mirror to yourself, as you’ll be forced outside of your comfort zone.
In my case, no amount of education could have prepared me enough for all of the different kinds of work I ended up doing after I graduated from the university. Especially when it came to the conference work, it was learning by doing and sometimes going by intuition. In these difficult times, that’s more true than ever, as it’s hard to anticipate the collapse of an entire industry. It’s something you don’t consider when planning for risks, or if you do, it has an extremely low probability.
I think the basic point of education should be about learning to learn, rather than learning specific things. It’s more about the process of learning and doing things than remembering specific minutiae. During my university studies, it was important for me to extend the amount of things I knew I didn’t know. That way, I would have the terms in mind when I needed them without having to know everything. Knowing what you don’t know is sometimes equally important as what you do know.