Platform Software Engineer (m/f/d)

Standort: 

Cairo, EG

Stellen-ID:  5221

Join the energy revolution with #teamsonnen!

At sonnen, we’re driven by a clear goal: creating a future powered by clean, affordable energy for everyone. That’s why we make our customers independent – not only from fossil fuels, but also from rising electricity costs.

The key to this independence is our intelligent, all-in-one energy system. It combines solar panels, battery storage, energy tariffs, and wallboxes – all developed and manufactured in Germany.

As the first and only provider in Germany, we also connect thousands of home batteries into one shared network: the sonnenVPP, our industry-leading virtual power plant.

In short: every day, we’re working to shape the energy future. And we’d be thrilled to have you join us!

For our location in Cairo, we are looking for an experienced Platform Software Engineer that, with the company headquarters in Wildpoldsried (Germany), you will work in a distributed team from our office in Málaga (Spain).

The “ECU” (Electronic Control Unit) team develops the control unit of each sonnenBatterie.

Overview

We are seeking a highly skilled Platform Software Engineer to join our team. The ideal candidate will have a strong background in software engineering and linux administration in Embedded Systems.

 

Responsibilities

 

  • Develop and maintain software solutions.

  • Write clear and concise documentation for code and system functionality.

  • Adhere to best practices in code style, testing, and version control.

  • Debug and resolve issues in development and production environments.

  • Develop and manage containerized applications using Docker.

  • Monitor system performance and ensure system security.

  • Automate tasks and processes using scripting languages.

  • Administer and manage Linux-based embedded systems.

  • Implement and manage basic CI/CD pipelines using tools like GitLab CI and GitHub Actions.

  • Assess/Integrate third-party and open source software.

  • Work with embedded communication interfaces and network protocols.

  • Create and manage root filesystems for embedded devices.

  • Develop, configure and integrate device drivers and other linux kernel components.

  • Interface with hardware design and development.

  • Collaborate with cross-functional teams to design and implement system architecture.

  • Provide technical support and guidance to team members.

 

Qualifications

 

  • Programming experience in system languages such as C or C++.

  • Experience in scripting languages like shell and Python.

  • Experience with object-oriented programming, design patterns, and software architecture patterns.

  • Strong understanding of code compilation (qmake, cmake), debugging tools (gdb, strace), profiling (perf), and software integration, especially in embedded systems.

  • Familiarity with version control systems, particularly Git.

  • Familiarity with Linux-based operating systems and system administration tools (systemd).

  • Experience in hands-on development and troubleshooting on embedded targets.

  • Knowledge of root filesystem build tools such as chroot, multistrap, Buildroot or Yocto.

  • Experience with kernel development for Linux (drivers, device tree, patches).

  • Familiarity with bootloaders like U-Boot or Barebox.

 

Nice to have qualifications

 

  • Understanding of some of these network protocols: MQTT, SSH, DNS, SSL/TLS.

  • Basic understanding of some of these embedded protocols: UART, I2C, SPI, Modbus, or CAN.

  • Experience with Docker and container management.

  • Knowledge of infrastructure monitoring using tools like the Elastic Stack.

  • Familiarity with microcontroller programming and real-time operating systems like FreeRTOS.

 

You feel we are a match? Apply now and help us to shape the energy transition together. We look forward to welcoming you to #teamsonnen!

 

sonnen - energy is yours!


Stellensegment: Embedded, Testing, Open Source, Linux, Technical Support, Technology