Starszy Inżynier Java
- Pełny etat
- Child1: Val2
Opis stanowiska
Poszukujemy starszego inżyniera Java, który cechuje się dbałością o szczegóły i analitycznym sposobem myślenia, do naszego rozwijającego się zespołu inżynierów w Sosnowcu w Polsce. Na tym stanowisku będą Państwo projektować, tworzyć i utrzymywać niezawodne aplikacje Java, wykazując się jednocześnie doskonałością techniczną oraz przyczyniając się do rozwoju architektury oprogramowania naszej organizacji. Jako starszy inżynier będzie Pan/Pani podejmować złożone wyzwania techniczne, pełnić rolę mentora dla młodszych programistów oraz promować najlepsze praktyki w naszych zespołach programistycznych.
- Projektowanie i tworzenie skalowalnych aplikacji Java z wykorzystaniem nowoczesnych frameworków i wzorców architektonicznych
- Pisanie przejrzystego, wydajnego i dobrze udokumentowanego kodu przy zachowaniu ustalonych standardów kodowania oraz najlepszych praktyk
- Analizowanie wymagań systemowych i przekładanie ich na rozwiązania techniczne z uwzględnieniem wydajności, bezpieczeństwa i łatwości utrzymania
- Uczestniczenie w przeglądach kodu, udzielanie konstruktywnych opinii w celu zapewnienia jakości kodu oraz dzielenie się wiedzą
- Mentorowanie i prowadzenie młodszych programistów, wspieranie ich rozwoju technicznego
- Współpraca z zespołami międzyfunkcyjnymi, w tym z menedżerami produktu, architektami i inżynierami ds. kontroli jakości, w celu dostarczania wysokiej jakości rozwiązań
- Diagnozowanie i rozwiązywanie złożonych problemów technicznych, wykazując się silnymi umiejętnościami analitycznymi i zdolnością do rozwiązywania problemów
- Uczestnictwo w projektowaniu i wdrażaniu mikrousług oraz systemów rozproszonych
- Optymalizacja wydajności aplikacji poprzez profilowanie, analizę i strategiczną refaktoryzację
- Śledzenie aktualnych trendów branżowych i nowych technologii oraz proponowanie usprawnień naszego stosu technologicznego
Kwalifikacje
**Wymagane umiejętności i doświadczenie:**
- Co najmniej 5 lat zawodowego doświadczenia w tworzeniu oprogramowania w języku Java
- Zaawansowana znajomość języka Java (wersja Java 8 lub nowsza), w tym nowoczesnych funkcji językowych i najlepszych praktyk
- Dogłębna znajomość frameworku Spring oraz Spring Boot
- Solidne zrozumienie zasad projektowania obiektowego, wzorców projektowych oraz zasad SOLID
- Udokumentowane doświadczenie w projektowaniu i tworzeniu interfejsów API typu RESTful
- Biegłość w zakresie relacyjnych baz danych oraz optymalizacji zapytań SQL
- Doświadczenie w pracy z systemami kontroli wersji, w szczególności z Git
- Znajomość frameworków do testowania jednostkowego oraz praktyk programowania sterowanego testami (TDD)
- Znajomość metodologii rozwoju oprogramowania Agile i Scrum
- Silne umiejętności analityczne i zdolność rozwiązywania problemów przy skrupulatnej dbałości o szczegóły
**Preferowane umiejętności i doświadczenie:**
- Doświadczenie w projektowaniu architektury i tworzeniu aplikacji opartych na mikrousługach
- Znajomość platform chmurowych, takich jak AWS, Azure lub Google Cloud Platform
- Znajomość technologii konteneryzacji, w tym Docker i Kubernetes
- Doświadczenie we wdrażaniu i utrzymywaniu potoków CI/CD
- Udokumentowane doświadczenie w mentorowaniu i rozwoju młodszych inżynierów
- Doświadczenie w pracy z oprogramowaniem pośredniczącym zorientowanym na komunikaty, takim jak RabbitMQ lub Apache Kafka
- Specjalistyczna wiedza w zakresie optymalizacji wydajności aplikacji oraz technik profilowania
- Znajomość baz danych NoSQL oraz odpowiednich przypadków ich zastosowania
Dodatkowe informacje
This is my job and please apply for it :)
Klikając powyższe łącze lub łącze podmiotu zewnętrznego w tym ogłoszeniu opuścisz tę stron i przejdziesz na stronę podmiotu zewnętrznego, na której obowiązują warunki i polityka ochrony prywatności tego podmiotu zewnętrznego.