
AeroVironment opracowuje i produkuje systemy bezzałogowe oraz technologie autonomiczne dla klientów z sektora obronnego i administracji publicznej. Założona w 1971 roku firma tworzy rozwiązania obejmujące drony, amunicję krążącą i bezzałogowe pojazdy naziemne, łącząc kompetencje inżynieryjne i produkcyjne, aby wspierać złożone potrzeby operacyjne w terenie.
Młodszy inżynier oprogramowania wbudowanego, AeroVironment — Moorpark, Kalifornia
Tworzenie oprogramowania wbudowanego dla autonomicznych systemów obronnych i robotycznych AeroVironment oraz integracja czujników i procesorów z samolotami i ładunkami użytkowymi. Praca obejmuje rozwój i testowanie — od prototypów po produkcję.
Opis
- Opracowywać bezzałogowe i robotyczne systemy do zastosowań obronnych i komercyjnych.
- Tworzyć oprogramowanie wbudowane dla samolotów, ładunków użytkowych i innych urządzeń.
- Projektować, kodować, testować i debugować oprogramowanie systemowe.
- Poprawiać wydajność, stabilność i skalowalność oprogramowania.
- Rozbudowywać bazy kodu, aby spełniały wymagania programów.
- Integrować i testować czujniki oraz procesory wbudowane w samolotach i systemach robotycznych.
- Wdrażać oprogramowanie prototypowe i produkcyjne za pomocą narzędzi AeroVironment i narzędzi branżowych.
- Utrzymywać kontrolę konfiguracji i zarządzanie oprogramowaniem.
- Pomagać w określaniu wymagań systemowych, planów testów, diagnostyki i walidacji.
- Pomagać w wyborze sprzętu oraz rekomendować wymagania dotyczące mocy obliczeniowej, pamięci i przestrzeni dyskowej.
- Wspierać szybkie prototypowanie i testowanie koncepcji.
- Szacować nakład pracy programistycznej oraz uzgadniać zakres, harmonogramy i budżety z kierownikami programów.
- Współpracować z inżynierami różnych specjalności i zespołami programistycznymi.
- Pomagać we wdrażaniu oprogramowania rozwojowego do produkcji i procesu certyfikacji.
- Tworzyć demonstracje możliwości potwierdzające koncepcję.
- Prowadzić przeglądy projektów i uczestniczyć w nich.
- Przestrzegać procesu tworzenia oprogramowania AeroVironment pod ogólnym nadzorem.
- Rozwiązywać określone problemy techniczne w środowisku ciągłego uczenia się.
- Wykonywać inne powierzone obowiązki.
Wymagania
- Tytuł licencjata w dziedzinie informatyki, inżynierii, elektrotechniki, inżynierii lotniczej, mechanicznej lub pokrewnej albo równoważne wykształcenie, przeszkolenie i doświadczenie.
- 0–2 lata odpowiedniego doświadczenia.
- Doświadczenie w diagnozowaniu i rozwiązywaniu problemów systemowych.
- Biegłość w Pythonie, C, C++11, C++ STL i/lub OpenCL.
- Znajomość Visual Studio, Eclipse lub podobnych środowisk IDE oraz narzędzi do śledzenia błędów.
- Doświadczenie z protokołami RS-485, RS-232, CAN, I2C, SPI i USB.
- Dobre umiejętności matematyczne i analityczne.
- Okresowe podróże w celu obsługi sprzętu testowego w zatwierdzonych lokalizacjach prób w locie.
- Gotowość do pracy w razie potrzeby przez długie lub nieregularne godziny, w weekendy i święta oraz podczas testów terenowych.
- Doświadczenie z procesorami STM32 jest dużym atutem.
- Preferowane doświadczenie z platformami RTOS, takimi jak µC/OS lub FreeRTOS.
- Pożądane doświadczenie z Video4Linux oraz modyfikowaniem i kompilowaniem jąder Ubuntu Linux.
- Pożądane doświadczenie w tworzeniu sterowników Linux/ARM i korzystaniu z Robot Operating System (ROS).
- Preferowana podstawowa wiedza z elektroniki i doświadczenie w pracy ze sprzętem laboratoryjnym.
- Kandydat musi być osobą z USA w rozumieniu ITAR/EAR lub kwalifikować się do uzyskania licencji eksportowej; niektóre stanowiska wymagają aktualnego obywatelstwa USA.
- Umiejętność pracy w biurze i środowisku badawczo-rozwojowym.
- Umiejętność długotrwałego stania i siedzenia oraz obsługi klawiatur komputera i telefonu.
Benefity
- Ubezpieczenie medyczne.
- Ubezpieczenie stomatologiczne.
- Ubezpieczenie wzroku.
- Plan 401(k) z dopłatą pracodawcy.
- Harmonogram pracy 9/80.
- Płatna przerwa świąteczna.