The position at a glance
- Job code
- SD-ENG-DB-033
- Department
- Engineering, AeroBrain
- Location
- Heraklion, Crete, Greece
- Work mode
- On-site in Heraklion, hybrid or remote
- Applicants
- From Greece and from abroad
- Employment
- Full-time
- Experience
- 8 years or more
- Education
- Master's degree required, PhD preferred
- Languages
- Greek, fluent (required); English, fluent (required)
- Posted
- 3 October 2026
- Applications
- Open until the position is filled
The role
LLiDA (Low Level integrated Database Architecture) captures real-time data, such as the data of an aircraft's avionics, as time series. It works in RAM, on disk and at processor level, and it keeps every connected node synchronised live. You own its architecture: the storage engine, the synchronisation mechanisms and the guarantees they give.
The work sits between database engineering and embedded programming. The same design has to hold on a microcontroller, on an avionics computer and on a server, and it is written to the rules used for safety-critical software.
Read about LLiDAWhat you will do
- Design the storage engine of LLiDA: key-value and time-series structures in RAM and on disk, with timing that is known in advance.
- Build the synchronisation mechanisms that keep nodes consistent, live, over secured and common networks, including recovery after a lost link.
- Bring LLiDA to embedded targets: microcontrollers, RISC-V and ARM processors, and FPGA-based hardware.
- Write C, C++ and Rust to safety-critical coding rules such as MISRA C and MISRA C++, with requirements traced to tests in line with the objectives of DO-178C.
- Define the durability, consistency and timing guarantees of the database, and prove them with tests, fault injection and measurement.
- Handle data at high rates and in large volumes: ingest, compression, retention and query over time series.
- Build the Python tooling for testing, analysis and benchmarking.
- Document the architecture and review the designs of other engineers.
What you bring
- 8 or more years of professional experience in database technologies, including key-value stores.
- Storage engine internals: LSM trees, B-trees, write-ahead logging, in-memory and memory-mapped structures.
- Synchronisation and replication: consistency models, conflict resolution, ordering and clocks.
- Embedded programming in C and C++ on microcontrollers or real-time operating systems.
- Strong C++ and Rust, and working Python.
- Experience with FPGAs: VHDL, Verilog or SystemVerilog, or hardware and software co-design next to an FPGA team.
- Experience with big data: time series or streaming data at high volume.
- Experience in a safety-critical field, such as aviation, defence, space, automotive, rail or medical devices.
- Familiarity with DO-178C and with MISRA C and MISRA C++.
- Master's degree in computer science, electrical or computer engineering, mathematics, physics or a related field.
- Greek, fluent (required).
- English, fluent (required).
Advantages
- A PhD in databases, distributed systems or embedded systems.
- Web technologies (TypeScript, WebAssembly, web APIs) for the tools and consoles that read LLiDA.
- DO-254 for airborne electronic hardware, and DO-330 for tool qualification.
- Avionics data buses: ARINC 429, ARINC 664, MIL-STD-1553 or CAN.
- Formal methods or static analysis, for example model checking of a replication protocol.
- Encryption of data at rest and in transit on constrained hardware.
- Publications, patents or open-source work on storage engines or time-series databases.
Eligibility
- Right to work in the European Union.
- Military obligations completed, or a lawful exemption, where they apply to you.
How to apply
Send your application by email to careers@skydynamics.aero, with the subject "Application SD-ENG-DB-033: Database Architecture Engineer, LLiDA". Include:
- Your CV.
- A short note on a data system you designed: what it had to guarantee, and how you showed that it did.
- Links to publications, code or talks, if you have them.
Applications are assessed on skills and experience, and are read only by the people involved in hiring. We keep an application for up to twelve months after the position closes, and delete it earlier if you ask. The details are in the Privacy Policy (section 2.5).
