Qt Journey– From Physics to Programming
In this series, we share various career stories from people working with Qt. Today, I am interviewing Allan Jensen, a senior R&D manager at Qt, based in Berlin, Germany.
Tell us a bit about yourself. What do you do?
I am a 45-year-old Dane living in Berlin with my Mexican girlfriend and our Sheltie dog, Goldy. I work for the Qt Company as the manager of the Qt WebEngine team. Qt WebEngine is the "browser" part of Qt. It is a fork of Chromium with an additional 300 patches. It is the largest Qt module, with more lines of code than the rest of Qt Framework combined.
What did you study at school, and how did it prepare you for your career?
I studied Physics and Math at university and took some Computer Science classes on the side during the first year. It turned out that Computer Science was more fun than I had imagined. While physics got increasingly arbitrary and unsatisfying the deeper I looked, Computer Science was a fun way to apply logic, mathematics, and creativity to get great solutions.
When I failed my second-year Physics exam, I used the opportunity to fit the second-year Computer Science classes into my schedule whilst retaking second-year physics. When I passed the second year with low grades in Physics and top grades in Computer Science, I knew I had to make a change. The next year, I was a Computer Science major and already a teaching assistant (Instructor) in the Computer Science second-year classes.
How did you first discover Qt, and what changed as a result?
Around 2002, I finally switched my personal computer from Windows to Linux. I had given it a few tries before, but it never stuck. When using Linux and KDE, I started improving KDE in various parts, particularly the multimedia parts. This included getting rid of clicking sounds in the sound daemon at the time (aRtsd) and writing my multithreaded audio framework aKode to help achieve that.
Later, I got inspired by articles about KHTML and started looking into it. Within a year, I was one of the main coders on KHTML and, around 2005, a co-maintainer. Around the same time, I was involved in creating the Qt WebKit. So, I have been involved in the Qt Web components since the beginning.
I was studying way less than part-time with a full-time job and an apartment in Copenhagen to pay for, so my studies dragged on for many years. When I finally returned to my studies and finished them in 2011, I wanted to leave Denmark and try living abroad. So, I accepted an offer from Nokia to move to Berlin and work on QtWebKit. Berlin and Qt ended up charming me and making me stick around.
Can you describe a typical day or week in your job?
Currently, much of my time goes into interviewing applicants and managing that process. But for development, few days are typical. I find an important bug or feature request and work on it. Or go through tens of bugs, getting team feedback and assigning them to the team according to skill and capabilities.
What do you love most about your job?
Being able to solve tricky problems and contribute solutions that make our users happy. It is a pleasure working with my team and the many other great talents in our company. The Qt Company provides great flexibility in what we can work on, making it a dream job for anybody who loves tinkering with code.
Which skills or qualities would you say are of importance in order to succeed in your field?
Logical creativity. Particularly in my module, it requires bravery and stoicism to climb Chromium’s mountain of code to figure out where it is doing something wrong.
What advice would you give to someone interested in pursuing a similar career?
Get involved in open-source coding. If this career is for you, you will find it fun and fulfilling, and it looks great in your CV as you can present things you have already done. This works particularly well when studying; it is much harder to find the energy for a coding hobby once your full-time job is coding.
The Qt journey blog series is a continuation of the "Qt as a Career" series.
Subscribe to our newsletter
Try Qt 6.6 Now!
Download the latest release here: www.qt.io/download.
Qt 6.6. is a feature release with focus on improving UX capabilities including responsive UI technology and the Qt Graph module.
Check out all our open positions here and follow us on Instagram to see what it's like to be #QtPeople.