Praca
Z kanału partnera
Inżynier oprogramowania wbudowanego - SoM
Cena na życzenie
Szczegóły
- Typ zatrudnienia
- Pełny etat
- Zdalnie
- Tak
- Firma
- Harmattan Ai
Opis
Automatyczne tłumaczenie z języka English. Oryginał jest wiążący. Tłumaczenie maszynowe — trwają prace nad dokładniejszą wersją.
O nas
Harmattan AI to rozwiązanie obronne nowej generacji, które tworzy autonomiczne i skalowalne systemy obronne. Po zamknięciu serii B o wartości 200 milionów dolarów i wycenie firmy na 1,4 miliarda dolarów, poszerzamy nasze zespoły i możliwości, aby dostarczać systemy o znaczeniu krytycznym dla sił sojuszniczych.
W naszej pracy kierujemy się jasnymi wartościami: budowaniem technologii mających wpływ na świat rzeczywisty, dążeniem do doskonałości we wszystkim, co robimy, wyznaczaniem ambitnych celów i podejmowaniem najtrudniejszych wyzwań technicznych. Działamy w wymagającym środowisku, w którym oczekuje się dyscypliny, odpowiedzialności i wykonania.
O ROLI
Jako inżynier oprogramowania wbudowanego w Harmattan AI dołączysz do zespołu badawczo-rozwojowego, aby posiadać stos oprogramowania wbudowanego w modułach obliczeniowych używanych na naszych platformach. Przeniesiesz nowy moduł z czystej płyty na utrzymywaną, bezpiecznie uruchamiającą się platformę Linux, obejmujący łańcuch rozruchowy, jądro, sterowniki i weryfikację wokół nich. Jest to rola o dużym wpływie, która łączy głęboką pracę z Linuksem i jądrem z praktycznym wdrażaniem nowego sprzętu, przejmując zarząd od pierwszego uruchomienia aż do uruchomienia.
OBOWIĄZKI
• BSP i obrazy referencyjne: Twórz i utrzymuj warstwę BSP, drzewa urządzeń i obrazy referencyjne dla każdej płyty, w tym warstwy niestandardowe i generowanie SDK, i przenoś je dalej poprzez aktualizacje jądra i rewizje krzemu.
• Łańcuch rozruchowy i bezpieczny rozruch: Posiadaj łańcuch rozruchowy, w tym przenoszenie programu ładującego, rozruch podpisany, zweryfikowane pliki rootfs i aktualizację systemu A/B.
• Sterowniki i interfejsy niskiego poziomu: opracowywanie i sprawdzanie sterowników urządzeń Linux dla I2C, SPI, UART, GPIO, PCIe i MIPI, w tym interfejsów kamery i czujnika.
• Obsługa płytek na obiektach docelowych MCU: zapewnia obsługę uruchamiania, zegara i urządzeń peryferyjnych na mikrokontrolerach płytek zaprojektowanych przez zespół.
• Przygotowanie płytki i weryfikacja sprzętu: Wiodące oprogramowanie omawia nowy sprzęt, bierze udział w przeglądach projektów i debuguje problemy na poziomie systemu na granicy sprzętu i oprogramowania.
• Weryfikacja i dokumentacja: Zdefiniuj plany testów weryfikacyjnych i kryteria akceptacji, zautomatyzuj testy rozruchu i urządzeń peryferyjnych na rzeczywistych obiektach oraz dokumentuj każdy kamień milowy.
• Współpraca międzyfunkcyjna: Praca z zespołem sprzętowym nad nowymi płytami głównymi oraz z systemami i platformą oprogramowania wbudowanego w zakresie interfejsów i integracji.
• Mentoring: W zależności od stażu pracy mentor młodszych inżynierów systemów wbudowanych.
WYMAGANIA KANDYDATA
• Wykształcenie: magister inżynier (elektronika, informatyka lub pokrewna). Doktorat na plus. Praktyczne osiągnięcia są ważniejsze niż konkretny stopień.
• Doświadczenie: minimum 5 lat w oprogramowaniu wbudowanym, z BSP posiadanymi przez cały cykl życia i zapewniającymi powtarzalność w miarę ewolucji sprzętu.
• Build Systems: Dobra znajomość wbudowanego systemu kompilacji Linux, takiego jak Yocto lub OpenEmbedded, w ramach niestandardowych warstw lub pakietów, integracja BSP, tworzenie obrazów i generowanie SDK. Doświadczenie w pracy z własnymi lub niestandardowymi systemami będzie zaletą.
• Wiedza techniczna: Rozwój sterowników przestrzeni jądra dla celów ARM, zweryfikowany z rzeczywistymi urządzeniami peryferyjnymi poprzez I2C, SPI, UART, GPIO, PCIe i MIPI. Praca drzewa urządzeń na nowych płytach i rewizjach sprzętu. Płyta wyświetla się od pierwszego uruchomienia do obrazu startowego Linuksa.
• Rozruch i aktualizacja: przenoszenie programu ładującego, konfiguracja jądra, podpisane uruchamianie i mechanizmy aktualizacji oprogramowania sprzętowego na sprzęcie produkcyjnym, z zachowaniem świadomości bezpieczeństwa i deterministycznych praktyk inżynierskich.
• Programowanie: mocne C i C++, w tym kodowanie w przestrzeni jądra i dobre umiejętności pisania skryptów w Pythonie, z solidną praktyką kontroli wersji (Git).
• Umiejętność debugowania: Możliwość wyizolowania, czy błąd leży w sterowniku, konfiguracji jądra czy płycie głównej, przy użyciu GDB, JTAG, OpenOCD, śledzenia jądra, ftrace i perf.
• Atrybuty zawodowe: Rygorystyczny, zorganizowany i systematyczny, zdolny do samodzielnej pracy, niewzruszony przez tablicę, która się nie uruchamia. Doskonałe umiejętności komunikacji i dokumentacji, umiejętność prezentowania platformy i wyników testów inżynierom i zainteresowanym stronom wyższego szczebla.
• Dodatkowe umiejętności: oprogramowanie sprzętowe typu bare metal lub RTOS na mikrokontrolerach, doświadczenie w obsłudze akceleratorów sprzętowych na wbudowanych układach SoC, w tym sterowniki VPU i NPU oraz środowiska wykonawcze, znajomość obciążeń percepcji lub kontroli działających w module oraz doświadczenie w zakresie UAS, dronów lub obronności to mocne zalety.
• Zaangażowanie: 100% zaangażowania w misję, wizję i ambitne plany rozwoju Harmattan AI, gotowość do dołożenia wszelkich starań, aby zapewnić doskonałość operacyjną. Dobrze radzi sobie w dynamicznym środowisku, w którym zmieniają się priorytety i żadne zadanie nie jest zbyt małe.
Z niecierpliwością czekamy na to, jak możesz pomóc w kształtowaniu przyszłości autonomicznych systemów obronnych w Harmattan AI.
Znajdź oferty pracy w Szwajcarii na Arbeitnow
Źródło: Arbeitnow (https://www.arbeitnow.ch/jobs/companies/harmattan-ai/embedded-software-engineer-som-zurich-128713)
Harmattan AI to rozwiązanie obronne nowej generacji, które tworzy autonomiczne i skalowalne systemy obronne. Po zamknięciu serii B o wartości 200 milionów dolarów i wycenie firmy na 1,4 miliarda dolarów, poszerzamy nasze zespoły i możliwości, aby dostarczać systemy o znaczeniu krytycznym dla sił sojuszniczych.
W naszej pracy kierujemy się jasnymi wartościami: budowaniem technologii mających wpływ na świat rzeczywisty, dążeniem do doskonałości we wszystkim, co robimy, wyznaczaniem ambitnych celów i podejmowaniem najtrudniejszych wyzwań technicznych. Działamy w wymagającym środowisku, w którym oczekuje się dyscypliny, odpowiedzialności i wykonania.
O ROLI
Jako inżynier oprogramowania wbudowanego w Harmattan AI dołączysz do zespołu badawczo-rozwojowego, aby posiadać stos oprogramowania wbudowanego w modułach obliczeniowych używanych na naszych platformach. Przeniesiesz nowy moduł z czystej płyty na utrzymywaną, bezpiecznie uruchamiającą się platformę Linux, obejmujący łańcuch rozruchowy, jądro, sterowniki i weryfikację wokół nich. Jest to rola o dużym wpływie, która łączy głęboką pracę z Linuksem i jądrem z praktycznym wdrażaniem nowego sprzętu, przejmując zarząd od pierwszego uruchomienia aż do uruchomienia.
OBOWIĄZKI
• BSP i obrazy referencyjne: Twórz i utrzymuj warstwę BSP, drzewa urządzeń i obrazy referencyjne dla każdej płyty, w tym warstwy niestandardowe i generowanie SDK, i przenoś je dalej poprzez aktualizacje jądra i rewizje krzemu.
• Łańcuch rozruchowy i bezpieczny rozruch: Posiadaj łańcuch rozruchowy, w tym przenoszenie programu ładującego, rozruch podpisany, zweryfikowane pliki rootfs i aktualizację systemu A/B.
• Sterowniki i interfejsy niskiego poziomu: opracowywanie i sprawdzanie sterowników urządzeń Linux dla I2C, SPI, UART, GPIO, PCIe i MIPI, w tym interfejsów kamery i czujnika.
• Obsługa płytek na obiektach docelowych MCU: zapewnia obsługę uruchamiania, zegara i urządzeń peryferyjnych na mikrokontrolerach płytek zaprojektowanych przez zespół.
• Przygotowanie płytki i weryfikacja sprzętu: Wiodące oprogramowanie omawia nowy sprzęt, bierze udział w przeglądach projektów i debuguje problemy na poziomie systemu na granicy sprzętu i oprogramowania.
• Weryfikacja i dokumentacja: Zdefiniuj plany testów weryfikacyjnych i kryteria akceptacji, zautomatyzuj testy rozruchu i urządzeń peryferyjnych na rzeczywistych obiektach oraz dokumentuj każdy kamień milowy.
• Współpraca międzyfunkcyjna: Praca z zespołem sprzętowym nad nowymi płytami głównymi oraz z systemami i platformą oprogramowania wbudowanego w zakresie interfejsów i integracji.
• Mentoring: W zależności od stażu pracy mentor młodszych inżynierów systemów wbudowanych.
WYMAGANIA KANDYDATA
• Wykształcenie: magister inżynier (elektronika, informatyka lub pokrewna). Doktorat na plus. Praktyczne osiągnięcia są ważniejsze niż konkretny stopień.
• Doświadczenie: minimum 5 lat w oprogramowaniu wbudowanym, z BSP posiadanymi przez cały cykl życia i zapewniającymi powtarzalność w miarę ewolucji sprzętu.
• Build Systems: Dobra znajomość wbudowanego systemu kompilacji Linux, takiego jak Yocto lub OpenEmbedded, w ramach niestandardowych warstw lub pakietów, integracja BSP, tworzenie obrazów i generowanie SDK. Doświadczenie w pracy z własnymi lub niestandardowymi systemami będzie zaletą.
• Wiedza techniczna: Rozwój sterowników przestrzeni jądra dla celów ARM, zweryfikowany z rzeczywistymi urządzeniami peryferyjnymi poprzez I2C, SPI, UART, GPIO, PCIe i MIPI. Praca drzewa urządzeń na nowych płytach i rewizjach sprzętu. Płyta wyświetla się od pierwszego uruchomienia do obrazu startowego Linuksa.
• Rozruch i aktualizacja: przenoszenie programu ładującego, konfiguracja jądra, podpisane uruchamianie i mechanizmy aktualizacji oprogramowania sprzętowego na sprzęcie produkcyjnym, z zachowaniem świadomości bezpieczeństwa i deterministycznych praktyk inżynierskich.
• Programowanie: mocne C i C++, w tym kodowanie w przestrzeni jądra i dobre umiejętności pisania skryptów w Pythonie, z solidną praktyką kontroli wersji (Git).
• Umiejętność debugowania: Możliwość wyizolowania, czy błąd leży w sterowniku, konfiguracji jądra czy płycie głównej, przy użyciu GDB, JTAG, OpenOCD, śledzenia jądra, ftrace i perf.
• Atrybuty zawodowe: Rygorystyczny, zorganizowany i systematyczny, zdolny do samodzielnej pracy, niewzruszony przez tablicę, która się nie uruchamia. Doskonałe umiejętności komunikacji i dokumentacji, umiejętność prezentowania platformy i wyników testów inżynierom i zainteresowanym stronom wyższego szczebla.
• Dodatkowe umiejętności: oprogramowanie sprzętowe typu bare metal lub RTOS na mikrokontrolerach, doświadczenie w obsłudze akceleratorów sprzętowych na wbudowanych układach SoC, w tym sterowniki VPU i NPU oraz środowiska wykonawcze, znajomość obciążeń percepcji lub kontroli działających w module oraz doświadczenie w zakresie UAS, dronów lub obronności to mocne zalety.
• Zaangażowanie: 100% zaangażowania w misję, wizję i ambitne plany rozwoju Harmattan AI, gotowość do dołożenia wszelkich starań, aby zapewnić doskonałość operacyjną. Dobrze radzi sobie w dynamicznym środowisku, w którym zmieniają się priorytety i żadne zadanie nie jest zbyt małe.
Z niecierpliwością czekamy na to, jak możesz pomóc w kształtowaniu przyszłości autonomicznych systemów obronnych w Harmattan AI.
Znajdź oferty pracy w Szwajcarii na Arbeitnow
Źródło: Arbeitnow (https://www.arbeitnow.ch/jobs/companies/harmattan-ai/embedded-software-engineer-som-zurich-128713)
To ogłoszenie pochodzi z feedu partnera. Aplikuj na stronie źródłowej.
Źródło: Harmattan Ai
Ogłoszenie pochodzi od Harmattan Ai.