Embedded Linux Engineer C/C++ & Yocto

Upvanta Remote 2026-10-09
  • 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.

Stawka: 130 - 150 PLN/h netto + VAT (B2B)
Start: styczeń 2027
Długość projektu: 12+ miesięcy
Tryb pracy: 100% zdalnie
O projekcie
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.

,[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.] Requirements: Linux, C, C++, CMake, Python, MQTT, IoT, JSON, Yocto Project, SMD, Git, CI/CD, GitLab CI, Jenkins, Docker, ARM