Qt Journey–Creating Great Customer-Facing Software

In this series, we share various career stories from people working with Qt. Today, I am interviewing Øyvind Bakken, a tech lead at reMarkable, based in Oslo, Norway. 


Tell us a bit about yourself. What do you do? 

I am a 39-year-old Norwegian, who has lived in Oslo for the last 20 years. I studied electrical and computer engineering at the University of Oslo and spent one semester in the US at the University of Minnesota. In my spare time, I am quite active. I like to stay in shape by cycling, skiing, and swimming. I also love traveling. 


What originally inspired you to pursue this career?  

I was quite into computers and computer games growing up, and I enjoyed math at school. So, electrical engineering was quite high on my list when trying to figure out what I wanted to pursue at the university level. My dad was also an engineer working in tech. I think the one factor that made me choose the engineering path was a brand-new study program, "Elektronikk og Datateknologi" (Electronics and Computer Technology) at the University of Oslo, which seemed to fit me very well. 


What did you study at school, and how did it prepare you for your career?  

The first year was quite theoretical and had a lot of math and physics. Getting through that, while some others dropped out or changed programs, made me more sure this was something I could do. This was also the time when I encountered programming for the first time through a Java course. I liked how I could create a "living thing" on the screen through logic, and I felt I was pretty decent at it. To me, it had many similarities to math. So, when I had to choose a direction going forward in my studies, I chose the path that was more software than hardware-based. My master’s thesis was about medical ultrasound simulations using MatLab. 


How did you first discover Qt, and what changed as a result?  

My first job was consulting at a company focusing on embedded solutions, which mostly meant lower-level programming towards hardware and microcontrollers. That's where I started learning C++. I then got involved in a project where a customer wanted to modernize a desktop application used for mathematical simulations, and since a colleague had successfully used Qt for a previous project, we chose to remake it almost totally using Qt4 with widgets.  The customer was happy with the outcome, so we stuck around building new features for that application for 5-6 years. Through my growing experience, I got involved with other Qt projects, and I was finally introduced to QML. Through Qt, I got to really like UI development and customer-facing software.  



Can you describe a typical day or week in your job?  

Currently, I am the tech lead for the team responsible for our mobile and desktop apps, so I have a few recurring meetings and am partly responsible for some weekly ceremonies like team stand-ups, backlog grooming, and walkthroughs of reported bugs. We also have projects outside the team that I support. When I get time for actual coding, I usually work on features and bugs in the UI layer, which means QML, some C++, and sometimes native Android and iOS code. Every Wednesday from 9 in the morning until 2 in the afternoon, we have "zen" time, which means no meetings are allowed. This is a good time for focused work.


What do you love most about your job?  

At reMarkable we have a fast-paced environment with big and hairy goals, which can be a bit stressful for some, but I enjoy it when lots of things are happening at once. I really like working with customer-facing software and getting feedback - both positive and negative - on our features and products through different online channels. I enjoy working with our UX and UI designers creating great user interfaces. And I love coming to the office to meet my colleagues. 


Which skills or qualities would you say are of importance in order to succeed in your field? 

I think as long as you have an interest in tech and some education in engineering or IT, the most important thing is just gaining experience and trying out different roles, programming languages, and levels (UI, backend, etc.) to find what you are good at and what you enjoy. There are so many different roles you can take within our field that require totally different skill sets. 

What advice would you give to someone interested in pursuing a similar career?  

Similar to the previous point, gaining experience is the key. For me, it worked very well to start my career as a consultant, as I could try out different roles and tech to gain knowledge across a wide range of subjects, learning as much as possible along the way. And don't be scared to feel out of your depth or intimidated by amazing, more experienced programmers you meet along the way; eventually, you will gain similar ability and respect within the field yourself. 


😎 Qt Journey –From Physics to Programming

👩‍💻 Qt Journey - Mari Heusala's Contribution to HR Excellence

📚  Start learning Qt with Qt Academy

The Qt journey blog series is a continuation of the "Qt as a Career" series.

Blog Topics: