Embedded Linux Engineer (C/C++ & Yocto)
In short
Embedded Linux Engineer (C/C++, Yocto) needed for IoT device development in Kraków. Responsibilities include C/C++ app development, system configuration, and hardware integration. Requires Embedded Linux, C/C++, CMake, Python, MQTT, JSON, systemd, SQLite3, Yocto, BSP, Linux Kernel, U-Boot, and Device Tree knowledge.
Keywords
AI-written summary based on the listing content.
Dla naszego klienta poszukujemy Embedded Linux Engineera do projektu związanego z rozwojem urządzeń IoT. Rola łączy tworzenie aplikacji działających na Embedded Linux z pracą nad systemem operacyjnym i jego integracją z platformą sprzętową. Około 70–80% czasu poświęcisz na development aplikacji w C/C++, a pozostałe 20–30% na Yocto, konfigurację systemu i integrację sprzętu. Szukamy osoby, która swobodnie porusza się zarówno w user-space Linux, jak i w obszarze systemowym – od budowania obrazu systemu po uruchamianie i debugowanie urządzenia.
Zakres obowiązków
- Rozwój aplikacji dla urządzeń Embedded Linux w językach C i C++.
- Tworzenie aplikacji wielowątkowych, asynchronicznych i zdarzeniowych.
- Implementacja mechanizmów synchronizacji oraz komunikacji między komponentami.
- Rozwój komunikacji IoT z wykorzystaniem protokołu MQTT i formatu JSON.
- Konfiguracja usług systemowych, w tym systemd.
- Przygotowywanie skryptów, narzędzi wspomagających oraz testów w Pythonie.
- Konfiguracja i rozwój procesu budowania aplikacji z wykorzystaniem CMake.
- Rozwój środowiska Yocto Project: modyfikacja recipes, konfiguracja MACHINE/DISTRO oraz integracja aplikacji i pakietów.
- Praca z BSP, Linux Kernel, U-Boot oraz Device Tree (DTS/DTSI).
- Uruchamianie i integracja nowego sprzętu na platformie Embedded Linux.
- Diagnostyka problemów software’owych i sprzętowych z wykorzystaniem narzędzi pomiarowych.
Wymagania
- Praktyczne doświadczenie z systemami Embedded Linux.
- Dobra znajomość C i C++ w kontekście aplikacji działających w środowisku Linux.
- Doświadczenie w programowaniu wielowątkowym oraz znajomość mutexów, semaforów i condition variables.
- Znajomość programowania asynchronicznego i zdarzeniowego.
- Praktyczna znajomość CMake i konfiguracji procesu budowania.
- Znajomość Pythona w zakresie skryptów, testów i narzędzi wspomagających.
- Znajomość MQTT, komunikacji IoT i formatu JSON.
- Dobra znajomość systemd oraz usług systemowych Linux.
- Doświadczenie z relacyjnymi bazami danych, w szczególności SQLite3.
- Praktyczna znajomość Yocto Project, w tym recipes, MACHINE/DISTRO i integracji pakietów.
- Doświadczenie w przygotowywaniu lub utrzymaniu BSP.
- Znajomość konfiguracji Linux Kernel i U-Boot.
- Umiejętność tworzenia i analizy Device Tree (DTS/DTSI).
- Doświadczenie w uruchamianiu i integracji sprzętu.
- Umiejętność korzystania z oscyloskopu, analizatora logicznego i multimetru.
- Podstawowe umiejętności lutowania elementów SMD i przygotowywania stanowiska do debugowania.
Mile widziane
- Git i praca z Code Review.
- CI/CD, w szczególności GitLab CI lub Jenkins.
- Docker.
- Doświadczenie z architekturą ARM Cortex-A.
| Published | 2026-10-27 |
| Source |
|
Hexjobs App
Tools tailored to this listing.
Hexjobs App
Tools tailored to this listing.