About this role
<p><span style="font-size:12.0pt">For our location in Cairo, we are looking for an experienced <strong>Platform Software Engineer </strong>that, with the company headquarters in Wildpoldsried (Germany), you will work in a distributed team from our office in Málaga (Spain).</span></p> <p><span style="font-size:12.0pt">The “ECU” (Electronic Control Unit) team develops the control unit of each sonnenBatterie.</span></p> <p><span style="font-size:12.0pt">Overview</span></p> <p><span style="font-size:12.0pt">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.</span></p> <p> </p> <p><span style="font-size:12.0pt">Responsibilities</span></p> <p> </p> <ul> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Develop and maintain software solutions.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Write clear and concise documentation for code and system functionality.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Adhere to best practices in code style, testing, and version control.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Debug and resolve issues in development and production environments.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Develop and manage containerized applications using Docker.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Monitor system performance and ensure system security.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Automate tasks and processes using scripting languages.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Administer and manage Linux-based embedded systems.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Implement and manage basic CI/CD pipelines using tools like GitLab CI and GitHub Actions.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Assess/Integrate third-party and open source software.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Work with embedded communication interfaces and network protocols.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Create and manage root filesystems for embedded devices.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Develop, configure and integrate device drivers and other linux kernel components.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Interface with hardware design and development.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Collaborate with cross-functional teams to design and implement system architecture.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Provide technical support and guidance to team members.</span></p> </li> </ul> <p> </p> <p><span style="font-size:12.0pt">Qualifications</span></p> <p> </p> <ul> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Programming experience in system languages such as C or C++.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Experience in scripting languages like shell and Python.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Experience with object-oriented programming, design patterns, and software architecture patterns.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Strong understanding of code compilation (qmake, cmake), debugging tools (gdb, strace), profiling (perf), and software integration, especially in embedded systems.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Familiarity with version control systems, particularly Git.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Familiarity with Linux-based operating systems and system administration tools (systemd).</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Experience in hands-on development and troubleshooting on embedded targets.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Knowledge of root filesystem build tools such as chroot, multistrap, Buildroot or Yocto.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Experience with kernel development for Linux (drivers, device tree, patches).</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Familiarity with bootloaders like U-Boot or Barebox.</span></p> </li> </ul> <p> </p> <p><span style="font-size:12.0pt">Nice to have qualifications</span></p> <p> </p> <ul> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Understanding of some of these network protocols: MQTT, SSH, DNS, SSL/TLS.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Basic understanding of some of these embedded protocols: UART, I2C, SPI, Modbus, or CAN.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Experience with Docker and container management.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Knowledge of infrastructure monitoring using tools like the Elastic Stack.</span></p> </li> <li style="font-size:12.0pt"> <p><span style="font-size:12.0pt">Familiarity with microcontroller programming and real-time operating systems like FreeRTOS.</span></p> </li> </ul> <p> </p> <p><span style="font-size:12.0pt">You feel we are a match? Apply now and help us to shape the energy transition together. We look forward to welcoming you to <strong>#teamsonnen</strong>!</span></p> <p> </p> <p><span style="font-size:12.0pt"><strong>sonnen - energy is yours!</strong></span></p>