W skrócie
- Zadania: Twórz nowoczesne oprogramowanie backendowe, które wspiera krytyczną infrastrukturę przemysłową.
- Firma: Emerson - globalny lider w technologii automatyzacji.
- Benefity: Atrakcyjne wynagrodzenie, rozwój zawodowy i możliwość pracy zdalnej.
- Pozostałe informacje: Dynamiczne środowisko z możliwościami rozwoju kariery.
- Dlaczego ta praca: Pracuj nad innowacyjnymi projektami i wpływaj na bezpieczeństwo globalnych systemów.
- Kwalifikacje: Doświadczenie w programowaniu backendowym oraz umiejętności współpracy w zespole.
Przewidywane wynagrodzenie mieści się w przedziale 49500 - 60500 zł za rok.
Dołącz do zespołu Rozwiązań Niezawodności Emerson w Warszawie i pomóż rozwijać oprogramowanie nowej generacji, które zapewnia bezpieczne i niezawodne działanie krytycznej infrastruktury przemysłowej na całym świecie. Jako Starszy Programista Oprogramowania będziesz projektować, wdrażać, testować, wydawać i utrzymywać bezpieczne, skalowalne usługi backendowe, API, rozwiązania danych i integracje, głównie przy użyciu technologii C# i .NET.
W tej roli Twoje obowiązki będą obejmować:
- Analizowanie wymagań klientów, produktów i systemów oraz przekształcanie ich w bezpieczne, niezawodne, skalowalne i łatwe w utrzymaniu rozwiązania backendowe.
- Projektowanie, rozwijanie, dokumentowanie i utrzymywanie usług backendowych, REST API, logiki biznesowej i integracji systemowych przy użyciu C#, .NET i ASP.NET Core.
- Współpraca z architektami i inżynierami w celu podejmowania właściwych decyzji technicznych.
- Budowanie wielokrotnego użytku bibliotek backendowych, wspólnych usług i frameworków rozwojowych zgodnych z normami inżynieryjnymi i najlepszymi praktykami.
- Projektowanie i wdrażanie rozwiązań dostępu do danych dla relacyjnych i dokumentowych baz danych, zapewniając integralność danych, wydajność, spójność i łatwość w utrzymaniu.
- Rozwój i integracja rozwiązań opartych na mikroserwisach i zdarzeniach, w tym asynchroniczna komunikacja i odporne przetwarzanie wiadomości.
- Implementacja kontroli bezpieczeństwa, w tym uwierzytelniania, autoryzacji, walidacji, audytowalności i obsługi błędów.
- Tworzenie i utrzymywanie zautomatyzowanych frameworków testowych obejmujących testy jednostkowe, integracyjne, kontraktowe, komponentowe i wydajnościowe.
- Poprawa wydajności usług, odporności, obserwowalności, dostępności i efektywności operacyjnej.
- Wsparcie dla CI/CD, konteneryzowanych środowisk deweloperskich, wydań, diagnostyki produkcji, badań incydentów i analizy przyczyn źródłowych.
- Udział w przeglądach kodu i przeglądach projektów, dzieląc się wiedzą techniczną i wspierając doskonałość inżynieryjną.
- Identyfikowanie ryzyk technicznych, zależności, rozważania dotyczące pojemności i wyzwań integracyjnych, proponując praktyczne rozwiązania i plany wdrożenia.
- Aktywne uczestnictwo w doskonaleniu backlogu, szacowaniu, planowaniu sprintów i definiowaniu kryteriów akceptacji.
- Ścisła współpraca z zarządzaniem produktem, programistami frontendowymi, inżynierami jakości, inżynierami DevOps, specjalistami ds. cyberbezpieczeństwa, architektami i innymi interesariuszami.
- Wkład w dokumentację techniczną, specyfikacje API, standardy inżynieryjne, narzędzia dla deweloperów, poprawę procesów i rozwój własności intelektualnej.
- Zapewnienie wsparcia technicznego i koordynacja złożonych inicjatyw technicznych.
- Oferowanie konstruktywnej informacji zwrotnej w celu wspierania wzrostu i rozwoju członków zespołu.
- Współpraca z kierownictwem technologicznym w celu wspierania inicjatyw rozwoju zespołu.
- Wykonywanie innych obowiązków związanych z zakresem i celem roli.
Kto jesteś:
Budujesz silne partnerstwa i współpracujesz z innymi, aby osiągnąć wspólne cele. Zawsze dostarczasz wyniki, nawet w trudnych sytuacjach, równoważąc krótkoterminowe priorytety z długoterminowymi celami. Łatwo dostosowujesz swoje podejście w odpowiedzi na zmieniające się okoliczności i nowe informacje. Tworzysz środowisko, w którym różnorodne perspektywy są cenione, pomagając zespołom rozwiązywać złożone problemy poprzez otwartą komunikację, dzielenie się wiedzą i ciągłe doskonalenie.
Dla tej roli będziesz potrzebować:
- Dyplomu licencjata w dziedzinie informatyki, inżynierii lub pokrewnej, lub równoważnego doświadczenia praktycznego.
- Minimum 5-letniego doświadczenia zawodowego w rozwoju oprogramowania backendowego, w tym odpowiedzialności technicznych na poziomie seniora.
- Zaawansowanej wiedzy w zakresie C#, .NET i ASP.NET Core, z praktycznym doświadczeniem w budowaniu usług backendowych klasy produkcyjnej.
- Silnego zrozumienia programowania obiektowego, programowania asynchronicznego, współbieżności, wstrzykiwania zależności, middleware, konfiguracji, walidacji, obsługi błędów i zarządzania zasobami.
- Doświadczenia w projektowaniu wersjonowanych API i umów serwisowych.
- Doświadczenia z Entity Framework Core lub porównywalnymi technologiami dostępu do danych.
- Doświadczenia w projektowaniu i optymalizacji modeli danych dla relacyjnych i dokumentowych baz danych.
- Doświadczenia w pracy z PostgreSQL, MongoDB lub podobnymi technologiami baz danych.
- Doświadczenia w projektowaniu i wdrażaniu architektur opartych na mikroserwisach i zdarzeniach, w tym platform komunikacyjnych takich jak RabbitMQ.
- Zrozumienia wyzwań systemów rozproszonych, w tym odporności, spójności, ponownych prób, limitów czasowych i odzyskiwania po awarii.
- Doświadczenia w implementacji uwierzytelniania i autoryzacji przy użyciu OAuth 2.0, OpenID Connect, JWT lub porównywalnych technologii.
- Silnej wiedzy na temat praktyk bezpiecznego kodowania, bezpieczeństwa API, zarządzania sekretami i zasad bezpieczeństwa aplikacji.
- Doświadczenia w opracowywaniu strategii testowania automatycznego dla usług backendowych.
- Doświadczenia z platformami chmurowymi i technologiami orkiestracji kontenerów, takimi jak Azure, AWS lub Kubernetes.
- Doświadczenia z praktykami obserwowalności, w tym logowaniem, metrykami, śledzeniem, monitorowaniem i diagnostyką produkcji.
- Doświadczenia w korzystaniu z Git, Docker, CI/CD i nowoczesnych praktyk dostarczania oprogramowania.
- Silnego zrozumienia architektury oprogramowania, wzorców projektowych, modelowania domenowego, łatwości w utrzymaniu i optymalizacji wydajności.
- Doświadczenia w pracy w środowiskach rozwoju Agile, takich jak Scrum lub SAFe.
- Biegłej znajomości języka angielskiego i polskiego na poziomie B2 lub wyższym oraz silnych umiejętności komunikacyjnych i współpracy.
Preferowane kwalifikacje, które wyróżniają Cię:
- Doświadczenie w Pythonie, Bash lub PowerShell.
- Doświadczenie w budowaniu wspólnych bibliotek backendowych, wewnętrznych platform lub wielokrotnego użytku frameworków inżynieryjnych.
- Znajomość projektowania zorientowanego na domenę (DDD), Czystej Architektury, CQRS, źródłowania zdarzeń lub podobnych podejść.
- Doświadczenie z SignalR, WebSockets lub innymi technologiami komunikacji w czasie rzeczywistym.
- Doświadczenie w projektowaniu i obsłudze mikroserwisów na dużą skalę.
- Znajomość OpenTelemetry i platform obserwowalności.
- Doświadczenie w wspieraniu systemów o wysokiej dostępności, dużej przepustowości lub odpornych na awarie.
- Doświadczenie w rozwijaniu oprogramowania przemysłowego, rozwiązań edge computing, systemów urządzeń połączonych lub oprogramowania wspierającego krytyczną infrastrukturę.
- Doświadczenie z praktykami rozwoju natywnego w chmurze.
- Znajomość praktyk cyklu życia bezpiecznego rozwoju, modelowania zagrożeń, zarządzania podatnościami i bezpieczeństwa łańcucha dostaw oprogramowania.
- Doświadczenie z bramkami API, ograniczaniem przepustowości i zaawansowanymi wzorcami mikroserwisów.
- Doświadczenie w korzystaniu z narzędzi wspomagających rozwój AI w sposób odpowiedzialny, zachowując jakość kodu, poufność, bezpieczeństwo i ochronę własności intelektualnej.
Nasza kultura i zobowiązanie wobec Ciebie:
W Emerson wierzymy, że różnorodne doświadczenia, perspektywy i tła wzmacniają nasze zespoły i napędzają innowacje. Jesteśmy zobowiązani do tworzenia inkluzywnego środowiska, w którym każdy pracownik czuje się szanowany, doceniany i ma możliwość wniesienia wkładu. Będziesz pracować obok utalentowanych kolegów nad technologiami, które pomagają klientom bezpiecznie i niezawodnie obsługiwać krytyczną infrastrukturę na całym świecie.
Wspieramy ciągłe uczenie się, rozwój kariery i mobilność wewnętrzną poprzez możliwości wzrostu technicznego, architektonicznego i przywódczego. Nasza współpraca, kultura bez winy zachęca do eksperymentowania, dzielenia się wiedzą i ciągłego doskonalenia, jednocześnie priorytetując dobrostan, rozwój zawodowy i znaczącą pracę.
Senior Backend Software Developer in Warsaw – pracodawca: Emerson Electric Co
Emerson Poland w Warszawie to doskonały pracodawca, który stawia na rozwój swoich pracowników i budowanie silnych relacji z klientami. Oferujemy dynamiczne środowisko pracy, w którym możesz rozwijać swoje umiejętności techniczne i handlowe, a także korzystać z licznych możliwości awansu. Nasza kultura pracy opiera się na współpracy i innowacyjności, co sprawia, że każdy dzień przynosi nowe wyzwania i satysfakcję z osiąganych wyników.