The Team behind the Tech: Making the GraalVM™ runtime truly one of a kind
Creating something not available anywhere else on the planet - in this instance a 32-bit port GraalVM™ for railways - is no small feat. We caught up with the team to discuss the highlights, and challenges, of working on such an innovative project.
4 minutes
30th of August, 2023
Dr. Christian Kuka: Managing Director and CTO
Dr. Kuka’s first position after studying computer science then gaining his PhD, was working as a software engineer at a large robotics company in Shanghai. But after five months, the call from MicroDoc, now part of Akkodis’ operation in Germany, was too strong to resist.
What was it that attracted him?
“First, their focus on cross-industry software technology and infrastructure and the opportunity to work with international clients on a variety of domains,” he says. “But also the corporate culture was very different to what I knew. Here, they operate a flat hierarchy. This means highly skilled engineers organised in small, innovative, creative groups - free of politics.”
This flat hierarchy helps people focus on their work. Suppose you find something amiss in the CPU and must fix it. “That can be hard,” says Christian. “You have to keep calm, ask yourself: what is the technical problem?’ You might feel something is wrong. But you need to look at it objectively. What’s the real issue?”
Such an objective approach helped Christian and the team deliver on this project: porting the GraalVM™ runtime to a 32-bit system. It enables railway applications to run more smoothly and extend their lifespan. And it was a first: a 32-bit port GraalVM™ had never been done before.
There were, he says, “several highlights”. Winning the client with a convincing technical and commercial proposal. Crafting a plan and mitigating the risks as a team. Then, highlights Christian, "delivering the first release to the customer for evaluation - in time - was clearly a success. We proved that our technical assessment of the project was correct and that we can deliver a first-class product.”
“I see a multitude of projects in the embedded space that can benefit from our GraalVM™ runtime technology,” says Christian. “Our team has created something not available anywhere else on the planet. We are confident that this technology can be helpful in other Akkodis projects and we’re looking forward to supporting them with our specialist know-how.”
Bruno Caballero: Head of Virtual Machine Technologies
Soon after finishing his master's in Computer Science and Telecommunications, Bruno found himself working for five years in consumer electronics. In particular, developing software for embedded devices. He was drawn to his current role because of the opportunity to work in Java virtual machine development.
As Head of Virtual Machine Technologies, his day-to-day working life is spent developing software and reviewing code implemented by his colleagues, organizing team tasks and being available as the technical contact for customers before and during projects.
It was this set of highly tuned skills that made him a perfect fit for this project. “It might look like an easy task,” he says, “but in porting a new technology originally designed for 64-bit platforms to a 32-bit platform there were many technical details that needed to be addressed.”
The GraalVM™ is a novel implementation of the Java virtual machine. They were the first to use such technology on embedded 32-bit platforms, particularly ARM 32-bits.
Surely this came with a special set of challenges?
“One thing we didn’t expect was the size of the executables,” remembers Bruno. “GraalVM™ includes a technology called Native Image. With very big applications, we saw a problem related to the way it performs function calls. We needed to change the way the compiler performs function calls. First, by loading the address of the function into a register. Then, by performing a subroutine call on this register.”
Methodically working like this means the team pulling together. “If you have a group of skilled developers who are motivated, communicate, and work together you can complete complicated projects like this,” says Bruno.
They are now perfectly placed to tackle other projects that can make use of this newly developed technology.
“What we’ve developed allows us to use the Java language on very small devices - making it very easy to develop complex applications. In the future, we can port this technology to all sorts of new operating systems.”
We work on all kinds of projects - from automotive and aerospace to defence and clean energy. To find out more about our first-class opportunities for career development, get in touch today.