W skrócie
- Zadania: Twórz i optymalizuj komponenty Windows, które zbierają telemetryczne dane CPU.
- Firma: Globalna firma IT, lider w dostarczaniu nowoczesnych rozwiązań technologicznych.
- Benefity: Atrakcyjne wynagrodzenie, możliwość pracy zdalnej oraz rozwój zawodowy.
- Pozostałe informacje: Dynamiczne środowisko z możliwościami szybkiego rozwoju kariery.
- Dlaczego ta praca: Pracuj z najnowszymi technologiami i wpływaj na bezpieczeństwo systemów.
- Kwalifikacje: 4+ lata doświadczenia w programowaniu systemowym w C/C++.
Przewidywane wynagrodzenie mieści się w przedziale 49500 - 60500 zł za rok.
DXC Luxoft jest globalną firmą świadczącą usługi IT i konsultingowe, będącą częścią DXC Technology, dostarczającą nowoczesne rozwiązania cyfrowe i programowe na całym świecie. Współpracujemy z wiodącymi instytucjami finansowymi i globalnymi przedsiębiorstwami, pomagając im w transformacji i skalowaniu dzięki nowoczesnej technologii. Dołącz do globalnej społeczności inżynierów i bądź częścią budowania wpływowych, nowoczesnych rozwiązań technologicznych!
Opis projektu: AMD rozwija platformę zabezpieczeń wspomaganą sprzętowo, która wykorzystuje liczniki monitorowania wydajności (PMC) na poziomie krzemu oraz uczenie maszynowe do wykrywania zaawansowanych zagrożeń końcowych, w tym ransomware, złośliwego oprogramowania bezplikowego i cryptojacking. Platforma zbiera telemetrykę behawioralną CPU, przetwarza ją przez silnik wnioskowania ML i udostępnia sygnały zagrożeń partnerom oprogramowania zabezpieczającego za pośrednictwem ustandaryzowanego API. Projekt obejmuje zbieranie telemetryki CPU, integrację ML, przetwarzanie w czasie rzeczywistym, walidację sprzętu i integrację z partnerami.
Poszukujemy Senior Windows Systems Engineer (Kernel & Telemetry), który będzie odpowiedzialny za rozwój i optymalizację komponentów runtime Windows odpowiedzialnych za transfer telemetryki CPU z przestrzeni jądra do przestrzeni użytkownika oraz integrację z pipeline'em wnioskowania ML. Będziesz ściśle współpracować z inżynierami specjalizującymi się w sprzęcie, uczeniu maszynowym, walidacji i integracji z partnerami. Jest to rola skoncentrowana na systemie Windows, wymagająca regularnej współpracy na miejscu w Gdańsku.
Obowiązki:
- Projektowanie, rozwijanie i utrzymywanie komponentów Windows wrażliwych na wydajność przy użyciu C/C++.
- Implementacja efektywnej komunikacji między komponentami w trybie jądra Windows a usługami w przestrzeni użytkownika.
- Rozwój i optymalizacja pipeline'ów o niskim opóźnieniu do zbierania, transferu i przetwarzania telemetryki CPU.
- Integracja pipeline'u telemetrycznego z runtime'em wnioskowania ML, w tym przygotowanie danych, wykonanie wnioskowania i obsługa wyników.
- Implementacja niezawodnych mechanizmów współbieżności, synchronizacji, buforowania i odzyskiwania błędów.
- Wsparcie dokładnej atrybucji telemetryki i wyników wnioskowania do procesów i wątków.
- Badanie wąskich gardeł wydajności i optymalizacja opóźnienia, przepustowości, wykorzystania CPU i zużycia pamięci.
- Rozwój automatycznych testów i diagnostyki dla komponentów runtime i ich interfejsów.
- Współpraca z inżynierami ML, Lab i SDK/API w zakresie integracji end-to-end, rozwiązywania problemów i walidacji.
- Dokumentowanie architektury komponentów, interfejsów, decyzji implementacyjnych i charakterystyk wydajności.
Wymagane umiejętności:
- 4+ lata doświadczenia zawodowego w programowaniu systemowym przy użyciu C lub C++.
- Praktyczne doświadczenie w rozwoju w trybie jądra Windows i komunikacji między jądrem a przestrzenią użytkownika, w tym technologie takie jak WDK, KMDF, UMDF, IOCTLs, WinDbg lub ETW/ETL.
- Silna wiedza na temat współbieżności, wielowątkowości, synchronizacji i zarządzania pamięcią.
- Doświadczenie w rozwijaniu oprogramowania wrażliwego na wydajność, o niskim opóźnieniu lub wysokiej przepustowości.
- Znajomość mechanizmów takich jak pamięć dzielona, bufory pierścieniowe, asynchroniczne I/O lub równoważne techniki komunikacyjne.
- Silne umiejętności debugowania, profilowania i rozwiązywania problemów.
- Doświadczenie w rozwijaniu i testowaniu niezawodnych systemów oprogramowania produkcyjnego.
- Umiejętność rozumienia specyfikacji technicznych i dokumentowania architektury oprogramowania oraz interfejsów.
- Wykształcenie wyższe w dziedzinie informatyki, inżynierii elektrycznej, inżynierii komputerowej lub pokrewnej dziedziny.
Umiejętności mile widziane:
- Znajomość monitorowania wydajności CPU x86-64, PMC, PMU lub telemetryki procesora.
- Doświadczenie w integracji runtime'ów wnioskowania ML, takich jak ONNX Runtime, OpenVINO lub DirectML.
- Doświadczenie w rozwoju SDK/API, wersjonowaniu interfejsów lub integracji zewnętrznego oprogramowania.
- Znajomość zabezpieczeń końcowych, EDR, oprogramowania antywirusowego lub rozwiązań monitorowania systemu.
- Doświadczenie w testowaniu sprzętu w pętli lub walidacji w różnych konfiguracjach sprzętowych.
- Znajomość akceleracji GPU/NPU lub technologii sprzętowych AMD.
- Znajomość procesów podpisywania i certyfikacji sterowników Windows.
Co czyni tę rolę interesującą:
- Praca blisko sprzętu na nowoczesnych platformach procesorowych AMD.
- Rozwój oprogramowania Windows na niskim poziomie, gdzie opóźnienie, przepustowość i niezawodność mają znaczenie.
- Łączenie telemetryki na poziomie CPU z wnioskowaniem uczenia maszynowego.
- Wkład w nowatorskie podejście do zabezpieczeń końcowych opartych na wykrywaniu zagrożeń wspomaganym sprzętowo.
- Współpraca ze specjalistami w dziedzinie programowania systemowego, telemetryki krzemu, ML i walidacji sprzętu.
Senior Windows System Software Engineer in Gdańsk – pracodawca: Luxoft
Nasza firma to doskonały pracodawca, który oferuje dynamiczne środowisko pracy w sercu innowacji technologicznych. Wspieramy rozwój zawodowy naszych pracowników poprzez mentoring oraz dostęp do najnowszych technologii, a także promujemy kulturę współpracy i otwartości. Pracując z nami, będziesz miał okazję uczestniczyć w projektach, które mają realny wpływ na branżę, a lokalizacja w centrum miasta zapewnia wygodny dostęp do licznych udogodnień.