Auf einen Blick
- Aufgaben: Entwickle Software für unsere Prozessor-Software und arbeite an innovativen Projekten.
- Unternehmen: Ubitium, ein innovatives Unternehmen mit einer kollaborativen Kultur.
- Vorteile: Wettbewerbsfähiges Gehalt, Aktienoptionen, 30+ Tage Urlaub und Unterstützung bei der Umsiedlung.
- Weitere Informationen: Dynamisches Umfeld mit Raum für persönliches Wachstum und Entwicklung.
- Warum dieser Job: Arbeite an realen Implementierungen von KI und Signalverarbeitung und mache einen echten Unterschied.
- Qualifikationen: Starke Kenntnisse in C, C++ und Python sowie Erfahrung in Hardware-Software-Architektur.
Das prognostizierte Gehalt liegt zwischen 49500 - 60500 € pro Jahr.
At Ubitium, we believe the best engineering happens when people with different perspectives tackle hard problems together.
We welcome applicants from all backgrounds and experiences.
What matters most is curiosity, skill, and the drive to build technology that improves the world.
If that resonates with you, we’d love to hear from you.
Our team members come from some of the best universities in the world and left some of the largest tech companies to build something truly remarkable.
Tasks
We are looking for a Senior Software Engineer who is at home across our processor software from ported libraries and the compiler down to bare-metal and operating systems.
Your team will: develop our software stack, including compiler, mapping tools, low-level tooling, simulation and debug infrastructure; write bare-metal, firmware and OS-level software for our RISC-V So C; implement and optimise signal-processing and inference kernels under real-time constraints; bring up, test and port software on pre-silicon platforms and on silicon, including low-level hardware tests; and work in a close feedback loop with our hardware designers.
Requirements
- Strong C, modern C++ (C++17/20, STL, Boost) and Python.
- A solid foundation in algorithms and in hardware/software system architecture.
- Experience working close to the hardware, with a good understanding of system-on-a-chip design, processor architecture and microarchitecture, and some familiarity with RTL and hardware design.
- Experience with agentic programming.
- You know your way around all of these fields, and go deep in at least one: i ) compiler development and code generation; ii) low-level tooling, simulation and performance analysis; iii) low-level embedded or systems software, operating systems and real-time; iv) signal processing, numerical computation and ML inference
- Master's degree (or equivalent experience) and 10+ years of relevant experience.
- Relocation required. Currently 4 days on-site, 1 day remote. Policy may change.
- Nice to have
- Parallel and data-flow execution models: SIMT, predicated execution, branch divergence.
- Mapping and optimisation algorithms: graph algorithms, place-and-route / EDA, CGRA or FPGA mapping, ILP solvers.
- Kernel-level optimisation: vectorisation, data layout, memory hierarchy, fixed-point and quantised arithmetic.
- Post-silicon validation and hardware bring-up, including directed and random test generation.
- Porting code to new platforms.
- Exposure to: RISC-V, LLVM, CUDA, Open CL, Verilog, Verilator, QEMU, GDB, JTAG and on-chip debug, Open SBI, bootloaders, HAL, Linux kernel and device drivers, device tree, Zephyr, Yocto/Open Embedded, BLAS/LAPACK/Open BLAS.
Benefits
- Competitive salary plus stock options
- 30+ days of paid vacation
- Relocation support
- Full German social security and universal healthcare
- A modern office
- Free snacks, coffee, and drinks
- Work with people who actually know their stuff – computer architects, hardware nerds, and engineers who love tough problems.
- A culture where new ideas matter, but so does respect and collaboration.
- Space to grow: pick up new skills, dig into areas that interest you, and shape your own path.
- Get hands-on with real implementations of AI and signal processing – not just slides or buzzwords.
- An inclusive team where different perspectives are valued and everyone contributes.
We are constantly looking for talent.
We recruit through multiple channels – friends & colleagues, universities and professors we know, recruiters, conventions, e-mails and Linked In.
Join us today.
Senior Software Engineer (Processor Software Stack) in Karlsruhe Arbeitgeber: Ubitium
Ubitium ist ein hervorragender Arbeitgeber, der Ihnen die Möglichkeit bietet, an der Spitze der Computertechnologie zu arbeiten und die Zukunft des Rechnens mitzugestalten. Mit einem wettbewerbsfähigen Gehalt, einem Employee Stock Option Program (ESOP) und einem innovativen, respektvollen Arbeitsumfeld fördern wir Ihre persönliche und berufliche Entwicklung. Bei uns finden Sie eine inklusive Kultur, die Vielfalt schätzt und Ihnen die Chance gibt, an bahnbrechenden Projekten im Bereich KI mitzuwirken.
StudySmarter Expertenrat🤫
Wir sind der Meinung, dass du so Senior Software Engineer (Processor Software Stack) in Karlsruhe erhalten könntest
✨Engagier dich in Entwickler-Communities!
Lass uns mal ehrlich sein: In der Software-Entwicklung sind Netzwerke Gold wert! Tummel dich in GitHub-Projekten, nehme an lokalen Meetups oder Hackathons teil und vernetze dich mit anderen Entwicklern. So steigerst du nicht nur deine Sichtbarkeit, sondern lernst auch die neuesten Trends und Technologien kennen.
✨Zeig deine Fähigkeiten!
Erstelle ein Portfolio, das deine besten Projekte und Code-Examples zeigt. Nichts überzeugt mehr als ein praktischer Beweis deiner Skills. Das kann auch helfen, bei Ubitium anzuklopfen, wenn du dich auf die Stelle als Senior Software Engineer (Processor Software Stack) bewirbst – so wissen sie gleich, was sie von dir erwarten können!
✨Nutze Jobplattformen speziell für Tech-Jobs!
Plattformen wie Stack Overflow Jobs oder AngelsList sind perfekte Orte, um Vollzeitstellen in der Software-Entwicklung zu finden. Hier sind viele tolle Unternehmen auf der Suche nach Talenten wie uns, also schau regelmäßig vorbei und bewirb dich direkt über die Website.
✨Such dir Mentoren und Feedback!
Hol dir Feedback von erfahrenen Entwicklern, die dir Tipps geben können, was Recruiter wirklich suchen. Ob über LinkedIn oder persönliche Kontakte: Menschen, die sich in der Branche auskennen, können enorm wertvoll sein, um dir zu helfen, dich optimal auf deine Bewerbung bei Ubitium vorzubereiten!
Wir glauben, dass du diese Fähigkeiten brauchst, um Senior Software Engineer (Processor Software Stack) in Karlsruhe mit Bravour zu bestehen
Einige Tipps für deine Bewerbung 🫡
Highlights deiner Coding-Skills:In der Software-Entwicklung kommt es auf konkrete Fähigkeiten an. Vergiss nicht, relevante Programmiersprachen und Frameworks in deinen Lebenslauf aufzunehmen. Zeig uns, was du kannst – vielleicht mit einem Link zu deinem GitHub-Profil oder einer Übersicht deiner Side Projects, die deine Programmierkenntnisse illustrieren.
Dokumentation deiner Erfolge:Gerade bei einer Vollzeitstelle in der Software-Entwicklung sind konkrete Ergebnisse Gold wert. Nenn uns Zahlen und Ergebnisse aus deinen vorherigen Projekten. Hast du den Code optimiert oder Systemfehler behoben? Solche Erfolge zeigen, dass du die Sprache der Entwickler sprichst und einen echten Mehrwert bringst.
Attraktive Projektbeschreibungen:Wenn du an Projekten gearbeitet hast, die hervorstechen, beschreibe sie ausführlich in deinem Lebenslauf. Was war das Problem, das du gelöst hast? Welche Technologien hast du eingesetzt? Das gibt uns einen klaren Einblick in deine Herangehensweise und Problemlösungsfähigkeiten.
Motivation zeigen:In deinem Anschreiben solltest du deine Motivation für die Stelle im Bereich Software-Entwicklung bei Ubitium klar herausstellen. Warum sprichst gerade du die Anforderungen für diese Vollzeitrolle an? Mach deutlich, was dich an der Arbeit bei uns reizt und wie du über das rein Technische hinaus wachsen möchtest.
Wie man sich auf ein Vorstellungsgespräch bei Ubitium vorbereitet
✨Technische Vorbereitung auf die Coding-Challenges
In der Software-Entwicklung sind technische Fragen oft ein zentraler Teil des Interviews. Macht euch mit Plattformen wie LeetCode oder HackerRank vertraut, um eure Problemlösungsfähigkeiten zu trainieren. Zeigt im Interview viel Selbstbewusstsein beim Erklären eurer Ansätze!
✨Das eigene Portfolio im besten Licht präsentieren
Stellt sicher, dass ihr ein aussagekräftiges Portfolio habt, das einige eurer besten Projekte zeigt. Seid bereit, darüber zu sprechen, was eure Rolle war, welche Technologien ihr verwendet habt und welche Herausforderungen es gab. Das gibt den Interviewern einen Einblick in eure praktische Erfahrung.
✨Teamfähigkeit und Kommunikation betonen
In einer Vollzeit-Position wird Kommunikation im Team sehr wichtig sein. Seid bereit, Beispiele aus der Vergangenheit zu teilen, in denen ihr effektiv im Team gearbeitet habt. Dies zeigt, dass ihr nicht nur technische Fähigkeiten habt, sondern auch gut ins Team passt.
✨Vorbereitung auf Fragen zur Software-Architektur
Bereitet euch darauf vor, Fragen zur Software-Architektur zu beantworten. Themen wie RESTful APIs, Microservices und Cloud-Architekturen können Teil eures Interviews sein. Zeigt euer Verständnis durch Diskussionen und Beispiele aus eurer bisherigen Arbeit oder Projekte.