Senior Forward Deployment Engineer in Warsaw

Senior Forward Deployment Engineer in Warsaw

Warsaw Pełny etat 118800 - 145200 zł / rok (szac.) Hybrydowo
L

W skrócie

  • Zadania: Popraw bezpieczeństwo i niezawodność aplikacji bankowych, prowadząc techniczne zaangażowania z zespołami deweloperskimi.
  • Firma: Wiodąca firma technologiczna w branży finansowej z innowacyjnym podejściem.
  • Benefity: Atrakcyjne wynagrodzenie, elastyczne godziny pracy oraz możliwości rozwoju zawodowego.
  • Pozostałe informacje: Dynamiczne środowisko z doskonałymi możliwościami rozwoju kariery.
  • Dlaczego ta praca: Zyskaj doświadczenie w nowoczesnych technologiach i wpływaj na krytyczne systemy bankowe.
  • Kwalifikacje: Doświadczenie w programowaniu, znajomość Java i umiejętności współpracy w zespole.

Przewidywane wynagrodzenie mieści się w przedziale 118800 - 145200 zł za rok.

Projekt koncentruje się na poprawie bezpieczeństwa, niezawodności wydania, utrzymania i odporności operacyjnej krytycznych aplikacji bankowych. Inżynierowie wdrożeniowi będą prowadzić ukierunkowane, praktyczne działania z zespołami deweloperskimi, które borykają się z wyzwaniami związanymi z usuwaniem luk w zabezpieczeniach, automatycznym testowaniem, technologią dziedziczną, stabilnością produkcji lub osiągnięciem bezpiecznego i szybkiego cyklu wydania. Rola łączy w sobie senior software engineering, DevOps, SRE, automatyzację testów, bezpieczeństwo aplikacji oraz modernizację technologii dziedzicznych. Około 70% pracy polega na praktycznym kodowaniu i konfiguracji.

Zakres techniczny obejmuje budowanie skutecznych zestawów testów automatycznych, usuwanie luk w zabezpieczeniach, przeprowadzanie analizy zależności i dostępności, aktualizację środowisk Java i NPM, modernizację aplikacji Spring i technologii dziedzicznych, poprawę pipeline'ów CI/CD, konteneryzację aplikacji, automatyzację wdrożeń oraz wprowadzenie standardowych wzorców obserwowalności i odporności.

Oczekuje się, że Ekspert FDE będzie prowadził złożone działania, współpracował bezpośrednio z interesariuszami deweloperskimi i klientami, definiował podejście do usuwania problemów technicznych, osobiście wdrażał kluczowe zmiany oraz umożliwiał zespołom klientów utrzymanie poprawionych praktyk inżynieryjnych.

Obowiązki:

  • Prowadzenie ukierunkowanych działań technicznych dotyczących bezpieczeństwa, testowania, wydania, odporności i technologii dziedzicznych z zespołami deweloperskimi.
  • Ocena kodu aplikacji, zależności, środowiska uruchomieniowego, pokrycia testami, architektury wdrożenia, pipeline'ów CI/CD, obserwowalności i ryzyk operacyjnych.
  • Pisanie, debugowanie, przeglądanie i ulepszanie kodu i konfiguracji o jakości produkcyjnej w trakcie działań.
  • Definiowanie i wdrażanie praktycznych planów modernizacji i usuwania problemów z wyraźnymi priorytetami, zależnościami, ryzykiem i mierzalnymi wynikami.
  • Rozwój lub poprawa testów jednostkowych, integracyjnych, komponentowych, kontraktowych i testów dymnych wdrożeniowych przy użyciu praktyk Test-Driven Development.
  • Wybór odpowiednich podejść do testowania automatycznego dla aplikacji i kierowanie ich wdrożeniem, w tym wykorzystanie asystentów kodowania AI.
  • Przeprowadzanie triage'u luk w zabezpieczeniach, analiz przyczyn źródłowych i dostępności zależności, priorytetyzacja usuwania problemów, zmiany w kodzie zabezpieczającym i testy regresyjne.
  • Aktualizacja Java, JVM, NPM, Spring, bibliotek open-source, zależności wewnętrznych, zainstalowanego oprogramowania, obrazów bazowych i systemów operacyjnych do wspieranych wersji.
  • Ustanowienie zrównoważonych procesów zarządzania zależnościami z ciągłymi aktualizacjami bibliotek przy użyciu Renovate lub równoważnych narzędzi.
  • Modernizacja aplikacji dziedzicznych i stosów middleware, w tym tych wdrożonych na WebSphere lub WebLogic.
  • Konteneryzacja aplikacji przy użyciu Dockera i wsparcie wdrożenia do OpenShift.
  • Poprawa kontroli źródła, zarządzania gałęziami, pull-requestów i praktyk przeglądu kodu.
  • Projektowanie, wdrażanie i optymalizacja pipeline'ów CI/CD w celu zapewnienia bezpiecznych, powtarzalnych, zautomatyzowanych i łatwych wydań.
  • Automatyzacja zmian w zainstalowanym oprogramowaniu i środowisku przy użyciu Ansible lub równoważnych narzędzi do zarządzania konfiguracją.
  • Wdrażanie wzorców bezpiecznego kodowania, zarządzania sekretami, uwierzytelniania, autoryzacji i kontroli minimalnych uprawnień.
  • Wprowadzenie standardowych wzorców obserwowalności, w tym strukturalnego logowania, metryk aplikacji, śledzenia, pulpitów, alertów i wykonalnych kontroli zdrowia.
  • Udoskonalenie obsługi wyjątków, diagnostyki operacyjnej, procedur wycofywania i kontroli walidacji produkcji.
  • Projektowanie lub poprawa odpornych architektur wdrożeniowych, w tym wdrożeń hot-hot cross-datacenter, gdzie to konieczne.
  • Prowadzenie warsztatów technicznych i skuteczne komunikowanie decyzji technicznych, ryzyk, przeszkód, kompromisów i postępów inżynieryjnych, bezpieczeństwa, architektury, operacji, zarządzania projektami i interesariuszami.
  • Zapewnienie przywództwa technicznego poprzez przeglądy kodu, coaching, standardy wielokrotnego użytku, dokumentację i transfer wiedzy do zespołów deweloperskich.
  • Przyjmowanie odpowiedzialności od początkowej oceny przez wdrożenie, wdrożenie produkcyjne, stabilizację i przekazanie.

Wymagania:

  • Rola wymaga obszernego doświadczenia w programowaniu, z naciskiem na rozwijanie i utrzymywanie aplikacji produkcyjnych. Kandydaci muszą aktywnie pisać i konfigurować kod, a nie tylko nadzorować architekturę lub zadania zarządzające.
  • Ekspertyza w rozwoju Java i JVM jest niezbędna, podczas gdy silne umiejętności TypeScript są cenione w projektach opartych na Node.js.
  • Biegłość w ekosystemie Spring i modernizacji aplikacji przedsiębiorstw Java jest wymagana.
  • Kandydat powinien wykazać się niedawnym osobistym zaangażowaniem w kodowanie, debugowanie i przeglądanie kodu produkcyjnego.
  • Umiejętności twarde obejmują praktyczne doświadczenie w Test-Driven Development w różnych frameworkach testowych, z solidnym zrozumieniem różnych typów testów, takich jak testy jednostkowe, integracyjne i regresyjne.
  • Rola obejmuje tworzenie zautomatyzowanych zestawów testów zintegrowanych w pipeline'ach CI/CD, wraz z projektowaniem automatyzacji wydania i bram jakości.
  • Silna wiedza na temat praktyk bezpiecznego kodowania, usuwania luk w zabezpieczeniach i zarządzania ryzykiem zależności jest niezbędna, w tym umiejętność analizy wpływu aplikacji przed zastosowaniem poprawek bezpieczeństwa.
  • Doświadczenie w aktualizacji środowisk, frameworków, bibliotek, platform kontenerowych, takich jak Docker lub OpenShift, oraz zarządzaniu środowiskami Linux - najlepiej Red Hat Enterprise Linux - jest również ważne.
  • Znajomość narzędzi do budowy, takich jak Maven, Gradle lub npm, zaawansowane przepływy pracy Git oraz kompleksowe techniki debugowania produkcji są oczekiwane.
  • Kandydaci powinni rozumieć obserwowalność aplikacji, obsługę wyjątków i gotowość produkcyjną, a także podstawowe zasady inżynierii systemów rozproszonych i krytycznych.

Umiejętności miękkie:

  • Skupienie na wykazanej odpowiedzialności za złożoną pracę techniczną na wszystkich etapach, od projektowania po przekazanie produkcji.
  • Silna komunikacja z klientem jest niezbędna, w tym prowadzenie dyskusji technicznych, konstruktywne kwestionowanie niebezpiecznych praktyk i wyjaśnianie kompromisów różnym interesariuszom.
  • Umiejętność coachingu inżynierów i wdrażania zrównoważonych standardów inżynieryjnych bez nadmiernej personalizacji jest kluczowa.
  • Odpowiedzialne i aktywne korzystanie z narzędzi AI do kodowania w celu poprawy wyników inżynieryjnych, testowych i dostarczających jest również oczekiwane.

Miłe widzieć:

  • Doświadczenie w modernizacji lub migracji aplikacji hostowanych na IBM WebSphere lub Oracle WebLogic, wykazujące znajomość tych platform.
  • Doświadczenie w aktualizacjach głównych wersji i migracji z starszych wersji Spring lub Spring Boot, wskazujące na biegłość w przejściach frameworków.
  • Doświadczenie w konfigurowaniu narzędzi do ciągłych aktualizacji zależności, takich jak Renovate lub Dependabot, pokazujące zdolność do automatyzacji zarządzania zależnościami.
  • Doświadczenie w analizie dostępności zależności, analizie składu oprogramowania, ocenie CVE i usuwaniu transytywnych zależności, odzwierciedlające wiedzę o bezpieczeństwie oprogramowania i zgodności.
  • Doświadczenie w automatyzacji zmian w bazach danych przy użyciu Liquibase lub Flyway, wskazujące na umiejętności w automatyzacji migracji baz danych.
  • Doświadczenie w korzystaniu z Ansible lub równoważnych narzędzi do zarządzania konfiguracją i automatyzacji wdrożeń, demonstrujące biegłość w automatyzacji infrastruktury.
  • Silne doświadczenie w TypeScript, Node.js i ekosystemie npm, podkreślające ekspertyzę w tych technologiach.
  • Doświadczenie z Kubernetes oprócz OpenShift, pokazujące zrozumienie platform orkiestracji kontenerów.
  • Doświadczenie w projektowaniu architektur wdrożeniowych hot-hot, active-active, multi-region lub cross-datacenter, denotujące wiedzę o systemach wysokiej dostępności.
  • Doświadczenie w testowaniu odporności, odzyskiwaniu po awarii, kontrolowanym przełączaniu awaryjnym i ćwiczeniach odzyskiwania produkcji, podkreślające umiejętności w zakresie niezawodności systemów i planowania ciągłości.
  • Doświadczenie z narzędziami do obserwowalności przedsiębiorstw, takimi jak Splunk, ELK, Grafana, Prometheus, OpenTelemetry, AppDynamics lub Dynatrace, odzwierciedlające biegłość w monitorowaniu i diagnostyce.
  • Doświadczenie w modernizacji monolitycznych lub dziedzicznych aplikacji przedsiębiorstw w celu ich utrzymania.

Senior Forward Deployment Engineer in Warsaw – pracodawca: Luxoft Poland

Nasza firma to doskonały pracodawca, który oferuje stabilne zatrudnienie oraz bogaty pakiet benefitów, w tym prywatną opiekę medyczną i programy rozwoju zawodowego. Pracując jako DevOps/Cloud Engineer w dynamicznym środowisku, będziesz miał możliwość pracy z nowoczesnymi technologiami, takimi jak Azure i Kubernetes, a także korzystania z programów wewnętrznych, które wspierają rozwój kariery i mobilność między projektami. Nasza kultura pracy sprzyja innowacyjności i współpracy, co czyni nas idealnym miejscem dla osób poszukujących satysfakcjonującej i znaczącej kariery.

L

Dane kontaktowe:

Zespół rekrutacyjny Luxoft Poland

Naszym zdaniem te umiejętności pozwolą ci błyszczeć jako Senior Forward Deployment Engineer in Warsaw

Java
JVM
TypeScript
Spring
Test-Driven Development
Automated Testing
CI/CD