AdaCore Blog

Building the Future: My Path from Software Research to Leadership

Building the Future: My Path from Software Research to Leadership

by Charis Fisher , Cléa Mendelewski

To celebrate Global Engineering Day, we’re looking at what it’s like to work as a truly global engineer, collaborating with international colleagues from all over the world to advance software development.

Read on to learn about the career paths of Claire Dross, Head of Static Analysis at AdaCore, based in our Toulouse office in France, and Tõnu Näks, Deputy Head of Toolchain and Managing Director of AdaCore’s Estonia branch in Tallinn.

What's your educational background?

Claire: I studied Computer Science at the Ecole Polytechnique, a French Engineering School. The degree there is equivalent to a Master's elsewhere.

In my last year of Engineering School, we each chose a specialization. I was studying part-time at a university in Paris for a technology research degree called MPRI - Master Parisien de Recherche en Informatique. Someone from AdaCore had posted an internship proposal on a board at the university and I found it unique because this university is a research university, so usually you wouldn’t see internships posted there. I interviewed both for this internship which included the opportunity to do a PhD, and for another opportunity with Dassault Systèmes. AdaCore sounded like the most interesting one with complex, challenging research to work on with very smart people.

During my first three years at AdaCore, I completed my PhD on Generic Decision Procedures for Axiomatic First-Order Theories, which was a subject that was relevant to my work here. After finishing my PhD in April 2014, I continued at AdaCore as a software engineer.

Tonu: I studied at the Tallinn University of Technology, graduating with an MSc in Systems and Software Engineering in 1998.

My research topic was modeling time constraints using UML/SysML models. I was fascinated by the idea of mixing the models of real-world objects with system requirements and then doing some magic to get a computer program out of it. This got me involved in model-based development.

I worked alongside my studies, starting out as a C/C++ programmer in an industrial automation startup in 1990, and later becoming a project manager at the university. While working on my master’s thesis in 1997, I was assigned a research project to create a UML tool for describing system behavior with time constraints and doing formal analysis on the consistency of those constraints. This led to me and two of my colleagues founding a startup called IB Krates to commercialize this tool.

How has your career progressed at AdaCore?

Claire: When I was doing my PhD, I was naturally very focused on its subject, which was really technical. Gradually over time, I began to look at SPARK as not just a technology but as a product, and my work shifted to involve much more development than research.

As the years passed, I was given more responsibility, working on projects like the SPARK roadmap. Thanks to this experience, I was offered the role of Team Lead for SPARK. This was my first experience with management.

I had also been building my skills in this area and had attended AdaCore’s internal management training course, so all this contributed to me becoming the right person to lead the team. I really enjoy being a manager, it’s fantastic. I never get bored with helping people prioritize their workload, listening to their ideas, and generally just being present to support them when projects become challenging.

In July 2024, I was promoted to Head of the Static Analysis Unit. By this time, I had been working in SPARK for over 10 years. It felt like a good time to broaden my understanding of our technologies to learn more about our activities in other Static Analysis sub-teams. I’m enjoying learning more about our work with Dynamic Analysis and have just started a project in the Dynamic Analysis Unit. I’m always able to find a new intellectual challenge here.

Tonu: I started working with AdaCore as a partner in 2009 when AdaCore joined the GeneAuto research project. GeneAuto was a consortium led by Continental and driven by requirements from Airbus, Thales, and Barco. The initial GeneAuto project ended up with a prototype of a Simulink → C translator written in Java. Our first joint project with AdaCore was the development of an Ada printer for this prototype as a proof of concept. This was also my first real encounter with the Ada language.

Following a series of joint projects, the software tools group from IB Krates joined AdaCore in 2018. I became the head of the company’s Estonian branch and a member of our joint tool’s Lead Team, responsible for coordinating its development and defining its architecture.

Joining AdaCore felt like a natural transition. We had good synergy practically working as one team years before the merger. When we formally joined the company, the reception was warm and people were extremely welcoming.

Following this project, I moved to the Toolchain unit and became Deputy Head of Toolchain. Looking to apply my extensive experience in project management and keep my engineering skills fresh, I took the position of Front-end Team Lead at the beginning of 2024 and became Rust Team Lead later that year.

Can you tell us about your work with SPARK at AdaCore and how your work with the language has evolved over time?

Claire: When I first joined AdaCore, SPARK was still a really novel technology and certainly more research-focused than development-focused. Over the years, this has changed a lot - the technology is now much more efficient and user-friendly. As customer demand has increased, it has grown into one of our core products. When we talk about Ada technology, we talk about SPARK too.

Can you tell us about the Static Analysis Unit, your current projects and its plans for the future?

Claire: The Static Analysis Unit is made up of several subteams - the Libadalang team, the GNAT Static Analysis team, and the SPARK team:

  • The Libadalang team is creating a frontend to analyse source code in Ada which is used by our internal IDE and GNATcheck teams to check conformance and compliance, for instance. Our Libadalang engineers are working on a way to reformat Ada code automatically and add “quick fixes” to tool messages to correct elements in the code.

  • The GNAT Static Analysis team is working to improve static analysis with a focus on security, for example detecting CWEs (Common Weakness Enumerations). They are also working on integrating static analysis tools developed at AdaCore in a single analysis suite. This year, they are integrating gnatmetric, which is a tool for computing various program metrics.

  • We are always working to improve SPARK's usability. This includes increasing the subset of language features it supports and adding brand-new features. We integrate support for our customers’ features within SPARK. Finally, we create new materials and resources to help programmers learn SPARK on learn.adacore.com and to make it easier for them to annotate their code.

Can you tell us about the Toolchain Unit, your current projects and its plans for the future?

Tonu: The toolchain unit provides Adacore's core technologies: compilers, debuggers, various helper tools and libraries. The unit consists of 9 teams and over 45 teammates.

  • Our bread and butter is the Ada compiler and its ports for specific processors.

  • We’re always working on new developments for the Ada language, defining its scope and future roadmap.

  • We also provide dedicated ports for other languages – C/C++, Rust and tools for interfacing those languages with Ada.

  • Rust has been a new addition to our product offering within the last few years. It’s exciting to see how this new product is evolving and taking off.

Personally, what motivates me at work is ensuring team members work on tasks they know best and keep processes effective. I find it really fulfilling to work on new developments in our technology and deliver the final product to our customers.

How do you collaborate with teams based in different locations at AdaCore?

Claire: Across the Static Analysis Unit, we have representatives in many different locations. Several can be found in our offices in Paris, Grenoble, or Toulouse where I am based. But others are very dispersed including members based across vastly different timezones such as Korea and the USA.

Though we try to remain connected to Slack throughout our working days to make it easier to chat and come up with technical solutions together when we need to, we also find it important to prioritize having a few regular meetings for the team. We have a weekly standup for regular updates on what everyone is working on, a monthly call for general alignment on technical goals and around 2 - 4 other meetings to share knowledge on specific topics or insights gathered from research conferences. These updates are really important to help the team work well together.

Tonu: In the Toolchain Unit, we have team members from all over the world across multiple time zones, including Estonia, France, the UK, and both the West coast and East coast of the US.

We organize meetings so that everyone can attend as close as possible to their normal working hours. The ten-hour time difference between the farthest time zones makes finding a reasonable time difficult, so we stick to one full team meeting per week. Most of the time we rely on Google Meetings in smaller groups, email, Gitlab messages, and Slack to collaborate. It’s not easy to organize face-to-face meetings, but we aim to get the whole team together at least once a year.

What would you say to someone interested in joining AdaCore?

Claire: We are doing interesting work in technology and research at AdaCore. There are always technical challenges to solve to improve our products, and there is the opportunity to interact with really smart people. Collaboration is really important here — everyone wants to see the team succeed, and we all get on well together. I would say that the team and the technology we work on are the two main attractions for me of working at AdaCore.

Tonu: Even if we are not a big company, we have expertise in many different fields. We have a mix of top language experts - some of whom come from the original teams who developed the Ada language - as well as experts in compiler technology, formal analysis, and processor architectures.

Here, people are always willing to share their knowledge and you can speak to anyone directly, regardless of seniority. It is rewarding to hear what people are doing and, from a cultural viewpoint, I enjoy working with people from different countries.

What do you value most about working at AdaCore?

Claire: My colleagues' expertise and the quality of work here are really high. This is important to me, and it motivates many people to work at AdaCore.

Another thing worth mentioning is that while working at AdaCore, I have never felt singled out for being a woman - it has never been a topic of conversation.

Career development and the freedom to create your own path are valued more here than at other companies. You never feel replaceable like you might at another company, and that’s a good thing. Each person is valued for what they can achieve, and not everybody is the same.

Tonu: The first thing that struck me when I started working with AdaCore was the openness. I enjoyed seeing how the mindset of sharing knowledge simplifies working processes. Being able to book the President’s office as a meeting room in Paris shows how little emphasis there is on hierarchy here.

I came from a very small company before, where it often happened that only one person had knowledge on a problem at hand. Since joining AdaCore, I have never had another occasion where I was stuck on such a specific problem and there was no one to ask for help. Here, you can always depend on somebody to ask who can give you some pointers.

About Charis Fisher

Charis Fisher

Charis Fisher is Marketing Engagement Executive at AdaCore. With a Master's in Translation and Editing, Charis has now been specialising in marketing for software, AI and technology businesses for over 7 years.

About Cléa Mendelewski

Cléa Mendelewski

Cléa Mendelewski holds a Master Degree in HR and Strategic & Change Management. She joined AdaCore as an HR Generalist in September 2021 following 7+ years' experience in HR and Talent Acquisition in the construction industry. She is now HR Manager at AdaCore.