Celem stanowiska jest tworzenie architektury dla systemów rozproszonych przeznaczonych do wspomagania procesów rozpoznania, planowania działań oraz kierowania walką.
Systemy te dostarczają narzędzi do pracy grupowej w oparciu o mapę taktyczną i posiadają szereg dedykowanych funkcjonalności specjalistycznych (np. ostrzeganie o zagrożeniach, planowanie trasy, wyznaczanie pokryć, agregacja informacji, rekomendowanie, itp.). Istotnym elementem tworzonego oprogramowania jest zbieranie, filtrowanie, agregacja i prezentacja przetwarzanych informacji na mapach cyfrowych (2D, 3D). Oprogramowanie musi również zapewniać wysoką dostępność informacji (czas, zakres), spójność informacji (wiarygodne informacje o kluczowym znaczeniu) oraz odporność na uszkodzenia w dynamice walki (np. zniszczenie elementów infrastruktury).
Oprogramowanie tworzone jest w architekturze zorientowanej na usługi, gdzie poszczególne jego podsystemy i komponenty mogą powstawać z użyciem rożnych stosów technologicznych (JAVA, C++, .NET), każdorazowo biorąc pod uwagę potrzeby i istotne uwarunkowania w projekcie. Kluczowe funkcjonalności biznesowe systemów są udostępniane dla użytkowników jako aplikacje typu desktop. Narzędzia wspomagające, monitorujące i zarządzające często przyjmują postać aplikacji Web i są dostępne przez przeglądarkę internetową.
Twój zakres obowiązków:
- analiza wymagań i dekompozycja funkcjonalna systemu,
- specyfikacja wymagań na system i jego komponenty,
- ocena wykonalności i akceptacja wymagań technicznych
- zaproponowanie rozwiązań na podstawie znajomości trendów rozwoju oprogramowania i najnowszych technologii oraz dokumentów normatywnych
- oszacowanie pracochłonności realizacji oprogramowania,
- nadzór merytoryczny nad procesem wytwarzania oprogramowania oraz testami integracyjnymi,
- prowadzenie dokumentacji do projektowanej architektury,
- koordynacja prac implementacyjnych i integracyjnych zespołu wewnętrznego oraz poddostawców,
- współpraca z analitykami systemowymi oraz Użytkownikiem,
- wsparcie w testach wewnętrznych oraz akceptacyjnych (UAT).
Nasze wymagania:
- wykształcenie wyższe, preferowany kierunek: informatyka, elektronika i telekomunikacja lub pokrewne,
- umiejętność definiowania i dokumentowania architektury oprogramowania w notacji UML,
- minimum 3-letnie doświadczenie w programowaniu w co najmniej jednym z języków: JAVA, C++ lub C#,
- praktyczna znajomość wzorców projektowych i architektonicznych,
- wiedza w zakresie bezpieczeństwa teleinformatycznego,
- chęć budowania wiedzy dziedzinowej,
- znajomość technik oraz narzędzi wsparcia procesu wytwarzania oprogramowania (szczególnie CI)
- znajomość UML w zakresie kluczowych konceptów i notacji,
- doświadczenie w programowaniu i projektowaniu rozwiązań z wykorzystaniem GIS oraz warstwy middleware, szczególnie w obszarze systemów reaktywnych
- wiedza w zakresie funkcjonowania i budowy systemów informatycznych (systemy operacyjne, protokoły i urządzenia sieciowe) oraz systemów łączności,
- znajomość języka angielskiego w stopniu umożliwiającym swobodną komunikację i czytanie dokumentacji technicznej,
- umiejętność współpracy w interdyscyplinarnym zespole.
Mile widziane:
- doświadczenie w tworzeniu oprogramowania wieloplatformowego (Linux/Windows),
- praktyczna znajomość zagadnień informatyki - struktur danych, algorytmiki, złożoności obliczeniowej, przetwarzania współbieżnego i równoległego, asymchroniczności, itp.,
- znajomość paradygmatu OOP, SOLID, GRASP, CQRS, kluczowych wzorców projektowych, Event-driven programming,
- znajomość brokerów wiadomości RabbitMQ i/lub Kafka i/lub inne,
- znajomość koncepcji integracji usług w oparciu o szynę usług (on-premises),
- znajomość Git, GitLab, JIRA, Jenkins, Confluence, Artifactory,
- znajomość stack JAVA 11, Swing, Spring boot, Hibernate, JUnit, OSGi,
- i/lub stack C++ 11; STL, Qt, Boost, integracja z JAVA przez JNI,
- i/lub stack .NET C#; .NET4.8+, WinForms, WPF, WCF, nHibernate/EF, NUnit/MSTest.
Oferujemy:
- ciekawą, odpowiedzialną, ambitną oraz stabilną pracę,
- stały rozwój kompetencji oraz specjalistycznej wiedzy dzięki działaniu w zespole profesjonalistów oraz rozbudowanemu systemowi szkoleń,
- zatrudnienie w oparciu o umowę o pracę lub umowę B2B,
- pakiet benefitów firmowych (prywatna opieka medyczna, ubezpieczenie, dofinansowanie do karty Multisport, Medicover Sport, dostęp do internetowej poradni psychologicznej, atrakcyjny pakiet świadczeń socjalnych),
- dostęp do najnowocześniejszej technologii,
- dofinansowanie kształcenia na studiach wyższych, podyplomowych i doktoranckich,
- możliwość realizacji prac doktorskich z zakresu tematyki badawczej firmy,
- pracę w dynamicznie rozwijającej się czołowej firmie badawczo-rozwojowej branży zbrojeniowej w Polsce.