AdaCore: Helping Developers Build Software that Matters
Everything we do at AdaCore is centered around helping developers build safe, secure and reliable software.
For 30 years, we've partnered with global leaders in aerospace & defense, air traffic management, space, railway and financial services. We've developed tools and services simplifying high-integrity software development through a subscription-based model. As demand for secure applications grows in industries like automotive, medical, energy, and IoT, we're adapting our proven technologies to assist a new generation of developers.
Our +190 global experts based in the US, France, Germany, the UK, and Estonia, collectively develop cutting-edge technologies to address the challenges of high-grade software development.
Joining AdaCore is about joining a culture of innovation, openness, collaboration and dependability, which defines how we work together, with our customers and partners.
Context
GNATpolyglot is a high-level, multi-language bindings generator. The bindings are generated in a two-step process that first generates a C ABI compatible layer along with an generic intermediate representation (IR) that describes the interfaces of the input library. The IR can then be used to generate bindings for any supported languages.
GNATpolyglot currently supports generating bindings from Ada to either C++, Java, or Rust.
Goals
The aim of this internship would be to introduce a new backend to generate Python bindings and bring it to feature parity with other backends.
From the IR, the Python backend should include support for, but is not limited to:
Required Skills
Nice to have
Timeframe & Location
During 2027 - 6 months - Paris office
Beyond the job
We're a global organization driven by diverse backgrounds, fostering innovation through an open exchange of ideas. We welcome applicants of all backgrounds, celebrating diversity in ethnicity, nationality, gender, age, religion, abilities, sexual orientation, veteran or marital status.
Our commitment is to help our teammates, wherever they are based, feel comfortable and satisfied, by encouraging flexibility to ensure them a healthy work-life balance. Additionally, we prioritize individual development by offering continuous training from day one with a personalized onboarding plan.
For more information about our recruitment process, visit our FAQ.