#workinginquantum. Interview with ParityQC’s Roeland ter Hoeven.
Our #workinginquantum interview series puts the spotlight on the people that are part of the flourishing quantum computing industry. Our first interview is with Roeland ter Hoeven, one of our Quantum Software Engineers, who played an important role in writing ParityQC’s compiler. Expect a lot of behind-the-scenes, tips and insights about the quantum computing industry!
What’s your role at ParityQC?
I am a Quantum Software Engineer working on ParityOS, developing the Parity compiler. This compiler will make it possible to encode hard optimization problems on quantum computers.
How was your path into quantum computing?
During my master studies I did some courses on quantum information, which also included quantum computing. When I first learned about quantum mechanics, I liked that seemingly simple mathematical formulation were able to describe something that is intuitively so hard to understand. I ended up doing my master thesis on quantum networks, which is about sending quantum data over large distances. Quantum computing became my main focus when I started at ParityQC.
What did you feel was different between the academic and the corporate world? How did you experience this transition?
It’s interesting because I actually feel like I’m still somewhere in the middle between the academic and the corporate world. At ParityQC, we’re engaged in a lot of research and academic efforts. Personally I’m also pursuing a PhD through the work I’m doing at ParityQC, and regularly attending classes. There is a bit of both the corporate and academic world in the work we’re doing with clients. Obviously they’re important corporate realities making commercial devices but they build on concepts from the academic world too, there is a lot of experimentation. It’s interesting to have both an academic and a corporate element in your work life because you can carry out research with a clear goal in mind.
It is quite a jump going from academia into the quantum computing industry. What skills should one learn in order to make this transition into the corporate world?
An important one would be to write code in a more collaborative way, viable for commercial use. As we started developing the first version of our software, ParityOS, the goal was simply to make it work and release the beta version. But the more we developed it and the further we progressed, the more we had to create stable, well-tested, industrial-level code. For a lot of us with a background in physics rather than computer science, this was quite a challenge. The collaborative aspect is really important: working with other people means that you have to document your progress more, discuss more, and use different tools to develop code together.
What are the tools of the trade, that someone looking to enter this sector should learn? Programmes as well as written resources that were helpful to you.
Python is the most important tool, the standard, as it’s the program on which packages such as Cirq (from Google) and Qiskit are making simulations of quantum computers or quantum computing tools. C and C++ are present too, but only in more specific tasks. For those looking to have a basic understanding of quantum computing, there are many online resources where to learn. It goes from Qiskit to the courses from TUDelft that are on EdX.
What are you finding interesting in how the quantum computing industry is evolving? What new technologies are there, and why do you think the industry suddenly grew so much in the past years?
Quantum devices are getting better and better, and the closer we get to solving real-world problems that normal computers can’t solve, the more interested people will be in the technology. In this way, we in the industry collectively benefit from the improvement of quantum technologies. As long as the progress we are seeing now continues steadily into the near future, it will keep growing faster and faster. In this phase, every step closer to quantum advantage is something huge in the industry. And these steps forward, such as Google’s claim of quantum supremacy, are what fuelled the huge interest in this industry we’re seeing now. There are a lot of different quantum technologies that are improving quickly, the question is which one will eventually reach quantum advantage faster and potentially become the standard in the industry. Currently, the enormous interest from governments and large companies makes a huge difference in the development of quantum technologies. It makes it exciting to work in this industry, which will only grow more in the next years.
Your work involves a lot of trial and error and a lot of great discoveries too. What’s the best “a-ha!” moment you had since you joined the company?
While writing a compiler, it is all about improving performance and finding new ways to compile larger and more complicated problems. Every time I find out that one of my ideas results in a better compiler is a small a-ha moment. The best moment was when I wrote a completely new compiler, which solved many previously unsolved problems. Watching those new solutions pop up was definitely one of the most rewarding moments so far.
What kind of intuitions were behind this moment?
Sometimes you have in mind one way in which you think you’re supposed to solve a problem and you end up getting stuck there, trying to make it work in so many different ways. In these cases, it helps to take a step back and completely look at the problem as if it was the first time, to see if there is a completely different solution which you didn’t even consider before. You may find there is an unexpected and simpler solution, something that works better, which could solve your problem.
What is so unique about the compiler that you and the ParityQC team have created?
A lot of the compilers from other companies are based on looking at the circuit and trying to simplify it in small, local ways. But what we are doing is taking the optimization problem as input, and turning it into a completely new optimization problem by working on its structure. We work on the problem as a whole, not on single details. It means you are not improving small parts but rather transforming the whole problem into something else. This is certainly more difficult, but it leads to really good results.
I once read about the concept of “craftsman mentality”, which refers to the importance of perfecting your work in order to create something rare and valuable that you’re proud of, no matter what field you’re in. How do you “perfect your craft” in quantum computing? Is it through sheer practice or something more?
In quantum computing as well as in many different fields, you come across some problems and research what other people have done in a similar situation to find a solution that fits your framework. The more problems you try to solve, the easier it is to find a solution, because previous situations might give you a cue. Practice, in the end, is the most important part, because it allows you to have moments of intuition. First comes education, then practice, and you can learn a lot from other people too. Within the company, I’m learning a lot from my colleagues, because each one has more experience in a specific field, and every time I see how one of them solved a problem, I learn something new.
What inspires you to come to the ParityQC office (or log in) every day?
The work at ParityQC is connected to industry as well as research. This gives us concrete goals and problems to solve, as well as the space to think of new ideas. Combined with the good team we have, this provides an interesting and rewarding work environment.
Do you have any final advice for someone just starting out in this sector?
This is a quickly growing industry in in which the rules are still unwritten. A lot of the work in this sector is either research or in start-up companies. This allows for a lot of creative work, but can also be challenging, which is something you have to be prepared for. It is worth putting a lot of effort when the rewards are high, and quantum computing is exactly like this.