AdaCore: Helping Developers Build Software that Matters
Everything we do at AdaCore is centered around helping developers build safe, secure and reliable software.
For over 25 years, we've worked with global leaders across the military and civil avionics, defense systems, air traffic management/control, space, railway, and financial services industries, building tools and providing services that ease the complex and difficult process of developing high-integrity software. As the need for truly secure and reliable applications expands into industries such as automotive, medical, energy, and IOT, we’re advancing our time-tested technologies to bring expertise and services to help a whole new generation of developers. Through our subscription-based business model and dedicated services arm, we have worked with hundreds of customers over the year on thousands of projects.
Our 120 experts worldwide in the US (New York, Lexington), France (Paris, Toulouse, Grenoble and Vannes), the UK, and Estonia, all play a role in developing state-of-the-art technologies to meet the challenges of building the highest grade of software.
Joining AdaCore is about joining a culture of innovation, openness, collaboration and dependability, which defines how we work together, with our customers and partners.
Simulating and debugging embedded code may need to execute at least a part of the code on the final embedded device. When the code comes from a Simulink/Stateflow model, it is very convenient to execute a part or all the model within the final hardware.
We would like to enhance the PIL capabilities of QGen (automatic code generator from Simulink/Stateflow) to facilitate execution on the hardware (or simulators) of the code generated using the debugger (gdb) to communicate the Simulink simulation environment with the target hardware.
The goal of this internship is to extend the existing capabilities to simplify customer’s workflow when integrating or debugging Simulink/Stateflow models that are intended to execute on embedded hardware.
Understand the ways to interact with the Simulink simulation environment
Define and discuss the design and the workflow
Implement and test the chosen solution, and integrate it within the product
Skills required or Nice to have:
Familiarity with one high-level object-oriented programming language (Ada, C++, Java)
Familiarity with embedded systems
Familiarity with gdb debugger
As a bonus, familiarity with Simulink/Stateflow
Ability to learn quickly about new development practices
Timeframe and location:
Time scale flexible, ideally in 2022
Duration somewhat flexible, ideally 6 months
Location: Paris (France), Tallinn (Estonia)