Meet Jürgen Cito, our new Assistant Professor for Software Engineering
After research activities in Switzerland and the United States, we welcome Jürgen back to his alma mater.
Jürgen Cito did his Masters in Computer Science at TU Wien Informatics and received his PhD at the University of Zurich, during which he was a research intern at the IBM Watson Research Center in New York. He then worked at MIT CSAIL as a Postdoc. In spring 2020, he joined TU Wien Informatics as an Assistant Professor for Software Engineering at the research unit Business Informatics and is also a research affiliate at MIT CSAIL, where he continues to work with the program analysis and compilation group (PAC). His current research interests are in investigating interactive programming and software engineering techniques.
What brought him back to Vienna and the TU “was a combination of the excellence of TU Wien and the excellence of the city of Vienna itself. For both my wife and me, it was clear that we wanted to go back to Europe. Eventually, I applied to very few internationally renowned places in cities that also had a certain quality of life and the size where I could see myself living. During the interviews, I had a good experience interacting with the faculty here, and I saw myself being part of it.”
So, what does TU Wien have what MIT does not have? “I think they are very different institutions in the way they are structured and in the way they are funded. MIT is a private university, and TU Wien is a public university. One excellent thing that also contributed to my decision to come to TU Wien, or, in more general terms, to a public university, is that the access is open to everyone. In all these elite institutions, there is a very strict barrier to entry. That contributes to inequality all the way through. If you look at how the admissions work and how disadvantaged groups have a harder path to enter, whereas, at TU Wien, you are having the access open to everybody, at least to some extent.” Jürgen sees “lifting up people from all walks of life with diverse backgrounds” as “a rewarding experience.” To him, access definitely matters: “If I work with students here, I know that they all could enter. Educating the whole population and not some subset of the population that could afford it—and afford the preparation—to get in” is a vital factor for teaching at a public university. “ I think that’s what TU Wien has, that MIT doesn’t have.”
Raised in a home focussing on the possibilities of the vast field of Computer Science, Jürgen Cito came in touch with this world quite early on. “There was certainly a bias from my parents’ side. They wanted to push me into that direction since they knew it was a fruitful path to go into. So they bought me a computer very early on when I was five years old or so. The ones where you could press a physical turbo button. That’s a funny memory I still have,” he remembers. He made contact with programming in the early 2000s, aged eleven or twelve, “when websites became a big thing.” ”I remember there was this application where you can drag and drop websites together, and you could also look at the HTML that was produced by it. I really enjoyed the aspect of reverse engineering: to look at the generated code and see what happened in the background.” He took further interest in programming and was always keen on the aspect of “how can we design the structure of applications from the ground up?” which can now be found in his research and teaching activities.
Can he describe his job in 90 seconds? Yes, he can: “My research area is software engineering, a vast discipline. However, my particular interest is in exploring the underlying structures and activities that are involved in building large scale software. That does not happen overnight—you always start small and build it from the ground up, and it grows and grows.” Cito is especially interested in exploring how the software gets larger, and how software engineers deal with the complexities that come with the growing software. “My job entails understanding these dynamics of evolving software systems, and it also entails building tools and approaches that make it easier for engineers to understand and to build large-scale systems. I want to help engineers make better, informed choices, be more productive, and introduce fewer errors.”
His plans and wishes for the new position at his old and new alma mater are clear: “My current set-up is a great start into a new professorship. I work with very talented PhD students who share the same interests. Particular topics his group is currently tackling is on how engineers “interactively explore and grow software systems, and how they can exert influence on generating machine learning pipelines in AutoML.” The goal for the future “is to secure grants to hire more people to work in these areas.” For him, working with talented people is one of the most rewarding parts of the job. “You are in very close contact with very talented young people that really want to change something about the field, and do so by doing the hard work of research. It is very underestimated that a lot of the hard work of research is done by young PhD students, and I see my job also as supporting them.”
The Art of Informatics
Computer Science fascinates Jürgen Cito, because “you can create something out of nothing very quickly. Designing software and applications out of mere ideas in my head and formalizing those, so that a computer can understand and make something, is very beautiful in itself.” Apart from this “very appealing aspect of Computer Science,” there is more: “While I am writing a program or software, the design of the software and the way I write it is so multifaceted in the ways I can express it, it becomes more art than science sometimes. That is very beautiful, too. Just to know that there is no one answer, but that there are so many different answers with many different tradeoffs to make—I think that is part of the art of Informatics.”
And what about challenges in his research area, did he come across any? In the field of software engineering and programming languages, people tend to think that they can fully automate processes. “If you can automate something and take it away from humans entirely, it is great and a noble goal.” But according to Cito, the challenges lie in “questioning whether the automation brings more harm than good.” “Automation alone will often not yield the correct outcome,” he explains. Touching the field of ethics in CS and inherently comprising a human-computer interaction perspective, the methods his group are developing are also about interpretability of this automation: “How can we interpret what we automated before. And how can we still enable engineers to understand what is going on so that they can make the right decisions both from a technical and an ethics perspective.”
Another, sometimes challenging facet he is looking forward to is teaching new courses. This semester, he focused on Web Engineering. Since he worked in Web Engineering before starting his PhD, the lecture contained practical experience mixed with an academic perspective on the subject. “The challenging thing was the number of students. I never taught so many students before—the maximum used to be 80, and now I had 500 people to teach.” As if that wasn’t enough, the whole situation was exacerbated by the fact that corona came along, which made it an online experience. “But I learned many useful things for the future: to craft good online experiences for teaching. We made the first step into designing the assignments so that people get feedback right away, which is continuous while working on their assignments, and we used different methods for properly conveying the learning material.” As far as he can see it, some online courses, depending on whether they suit the learning content, will stay. “We also got positive feedback from the students, that they liked the asynchronous learning experience so that they can combine it with family or work issues. But of course, that depends on the learning type as well. Many students also need the direct contact and the social exchange, they like to pose questions after the lecture.” For next year, Jürgen plans a master’s course in Software Design and Architecture and wants to concentrate on Probabilistic Programming as another research focus.