All offersWarszawaCProgramista systemowy
Programista systemowy
C
Phoenix Systems

Programista systemowy

Phoenix Systems
Warszawa
Type of work
Undetermined
Experience
Senior
Employment Type
Permanent
Operating mode
Office

Tech stack

    C / C++
    regular

Job description

Opis stanowiska:
Rolą osoby zatrudnionej na tym stanowisku będzie rozwój nowej wersji systemu operacyjnego czasu rzeczywistego Phoenix-RTOS. Phoenix-RTOS jest stworzonym od podstaw systemem operacyjnym opartym o autorskie jądro. System został opracowany w celu ułatwienia tworzenia urządzeń dla Internetu Rzeczy. Obecnie trwają prace nad wersją 3 systemu, przeznaczoną dla nowoczesnych mikrokontrolerów oraz procesorów (w tym wielordzeniowych) i implementującą wszystkie popularne mechanizmy systemów operacyjnych przy zachowaniu minimalnego rozmiaru kodu wynikowego.
Do potencjalnych zadań na oferowanym stanowisku należeć będą:
  • rozwój i optymalizacja mikrojądra jądra systemu operacyjnego,
  • rozwój biblioteki standardowej,
  • rozwój bibliotek pomiarowych dla pomiaru parametrów energii elektrycznej, gazu itp.,
  • rozwój stosów komunikacyjnych przeznaczonych dla Internet Rzeczy (PLC PRIME, G3-PLC, 802.15.4, 802.15.4g, ZigBee, Wi-SUN, DLMS/COSEM),
  • implementacja sterowników systemów plików w tym rozwój autorskiego systemu plików dla pamięci Flash,
  • tworzenie sterowników urządzeń,
  • rozwój narzędzi testujących oraz narzędzi do analizy wiarygodności oprogramowania,
  • rozwój wersji systemu przeznaczonej dla systemów lotniczych (zgodnej z ARINC 653) ,
  • rozwój narzędzi programistycznych i uruchomieniowych z wykorzystaniem GNU CC, binutils, GDB,
  • wsparcie wdrożeń realizowanych z wykorzystaniem systemu operacyjnego.

Wymagania:
  • umiejętność programowania w C/C++ ze szczególnym uwzględnieniem systemów wbudowanych oraz programowania równoległego,
  • znajomość budowy systemów operacyjnych,
  • znajomość architektury mikroprocesorów oraz systemów komputerowych,
  • znajomość zagadnień związanych z projektowaniem systemów mikroprocesorowych,
  • kilkuletnie doświadczenie na podobnym stanowisku,
  • znajomość języka angielskiego w stopniu co najmniej dobrym, pozwalającym na czytanie i pisanie dokumentacji technicznej,
  • umiejętność pracy w zespole, umiejętność rozwiązywania trudnych problemów technicznych oraz zaangażowane.