Programista C (Kernel)
W związku z rozwojem systemu operacyjnego Phoenix-RTOS dla Internetu Rzeczy, spółka Phoenix Systems poszukuje programisty do rozwoju mikrojądra systemu.
Jądro to podstawowy składnik systemu operacyjnego. Zapewnia podstawowe funkcje oraz środowisko wykonawcze dla innych komponentów systemu operacyjnego i aplikacji użytkownika. Jądro wpływa na wydajność i niezawodność całego systemu operacyjnego. Jego rozwój wymaga szerokiej wiedzy na temat architektury systemów komputerowych, doświadczenia inżynierskiego i bardzo dobrych umiejętności algorytmicznych. Programiści jądra i systemu operacyjnego byli, historycznie rzecz biorąc, pierwszymi programistami maszyn cyfrowych. Nadal są traktowani jako najbardziej zaawansowana i elitarna grupa inżynierów.
Stanie się programistą jądra to bardzo długi i trudny proces. Wymaga on specyficznej mieszanki pasji i cierpliwości, która umożliwia spędzanie setek godzin przed ekranem komputera bez spektakularnych rezultatów. Rozwój jądra wymaga także używania „staroświeckiego” edytora tekstu i „staroświeckich” narzędzi wiersza poleceń. Jeżeli nie obawiasz się wyzwań, chcesz podążać ścieżką największych programistów i rozwijać nowe jądro systemu operacyjnego, czekamy właśnie na Ciebie.
Zadania i odpowiedzialność:
Członkowie Zespołu Rozwoju Systemu zaangażowani są w rozwój mikrojądra Phoenix-RTOS i przenoszenie go na różne architektury sprzętowe. Kluczowe wyzwania obejmują konieczność poznania szczegółów związanych z konkretną architekturą sprzętową, tworzenie skalowalnych struktur danych, a przede wszystkim pisanie eleganckiego oraz efektywnego kodu w języku C i asemblerze. Premiowana jest jakość i efektywność, a nie liczba linii i wklejanie kodu znalezionego w Internecie.
Wymagane umiejętności:
· dobra znajomość architektury systemów operacyjnych,
· dobra znajomość języka C,
· dobra znajomość programowania równoległego,
· dobra znajomość algorytmów i struktur danych,
· umiejętność tworzenia i implementacji algorytmów dla środowisk o ograniczonych zasobach,
· dobra znajomość architektury systemów komputerowych,
· dobra znajomość architektury mikroprocesorów i popularnych modeli programowych (ARM, IA32),
· doświadczenie w wykorzystaniu systemów kontroli wersji,
· doświadczenie zawodowe na podobnym stanowisku,
· umiejętność pracy w zespole i pracy samodzielnej przy minimalnym nadzorze,
· konsekwencja w dążeniu do celu i umiejętność kończenia zadań,
· dobra znajomość języka angielskiego,
· dobra organizacja i zdolności komunikacyjne.
Pożądane umiejętności:
· znajomość architektury protokołów komunikacyjnych,
· znajomość protokołów sieciowych (TCP/IP, Ethernet, Wi-Fi, GSM).
Co oferujemy:
· udział w tworzeniu systemu operacyjnego, który ma wyprzedzać światowe standardy informatyki,
· możliwość awansu zawodowego i rozwoju,
· stabilność zatrudnienia,
· elastyczne godziny pracy,
· benefity pracownicze - prywatną opiekę medyczną, kartę multisport i zajęcia językowe,
· przyjazną i twórczą atmosferę pracy,
· atrakcyjne wynagrodzenie.
Dlaczego Systemy Phoenix?
Firma rozwija nowy system operacyjny open-source dla urządzeń Internetu Rzeczy. System oparty jest o napisane od podstaw mikrojądro. Jeżeli nie obawiasz się wyzwań, lubisz zaawansowaną inżynierię i chcesz znaleźć się w centrum rewolucji Internetu Rzeczy, to Phoenix Systems jest właściwym miejscem pracy dla Ciebie. Firma zatrudnia wysoko wykwalifikowanych inżynierów oprogramowania i ze względu na masowe wdrożenia systemu operacyjnego firma poszukuje kolejnych, utalentowanych osób, które chcą dołączyć do zespołu.