Embedded Linux Engineer (C/C++ & Yocto)
Is this the right opportunity for you?
Explore more jobs, compare advertised salaries and see which skills employers want.
Explore this careerSearch for a different role
More Software Developer jobs →Skills
Description
Wynagrodzenie
B2B: 130 – 150 PLN / godz. netto
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.
Get similar jobs in Poland by email
We'll email you when new jobs similar to this one appear.
Similar jobs
Explore more remote Software Developer jobs in Poland.
Finding similar jobs…