inhire.ioBlogPraca w ITPraca w Guidewire oczami Engineering Directora i Sofware Engineera

Praca w Guidewire oczami Engineering Directora i Sofware Engineera

Praca w IT
03/09/2021


W wywiadzie dla inhire Krzysztof Jamróz – Engineering Director oraz Beata Baran Software Engineeer w Guidewire opowiedzieli nam, dlaczego zdecydowali się dołączyć do Guidewire oraz o najważniejszych aspektach budowania zespołów, pracy w firmie i pracy nad produktem.

W czym specjalizuje się Guidewire?

Krzysztof Jamróz: Guidewire rozwija oprogramowanie dedykowane dla branży ubezpieczeniowej, a dokładniej dla sektora P&C (Property And Casualty Insurance).

Z naszych produktów korzysta kilkaset klientów z całego świata włączając w to duże firmy ubezpieczeniowe w Polsce. Od niedawna rozpoczęliśmy oferowanie naszych produktów jako usługa w chmurze i dziś znaczna część naszych wysiłków skupiona jest właśnie na tym obszarze.

“Jutro” to ukłon w stronę autorów, których duża część pracuje w Krakowie, a jednocześnie dobrze oddaje charakter rozwiązania mocno związanego z przyszłością Guidewire

Czym zajmuje się krakowski oddział firmy?

KJ: Guidewire ma pracowników w wielu lokalizacjach, ale prace nad rozwojem produktów skupiają się głównie w USA, Irlandii i Polsce. Staramy się organizować je tak, aby poszczególne biura odpowiadały za określone produkty.

Praca w tym samym biurze (lub w tej samej strefie czasowej w przypadku pracy zdalnej) ułatwia nam współpracę i umożliwia szybsze podejmowanie decyzji. Guidewire to również praca w międzynarodowym środowisku i skoordynowanie naszych działań wymaga bycia w kontakcie z pozostałymi lokalizacjami.

Biuro w Krakowie ma obecnie około 100 pracowników. Koncentrujemy się w nim głównie na dwóch produktach: „Guidewire Cloud Platform” (GWCP) oraz „Jutro Framework”.

Guidewire obecnie jest w trakcie dużej transformacji, której celem jest zmiana sposobu dostarczania naszych produktów. Przechodzimy ze starego modelu on-premises na oferowanie naszych rozwiązań w chmurze. 

GWCP jest kluczowym elementem tej transformacji. Platforma umożliwia konfigurowanie, uruchamianie i zarządzanie naszymi produktami w chmurze. Technologicznie, korzystamy z dobrodziejstw najnowszych rozwiązań. 

Całość działa na infrastrukturze od AWS. Do uruchamiania naszych serwisów, ale i hostowanych produktów używamy Kubernetes’a. Całość zarządzana jest z poziomu Guidewire Cloud Console, opartej o micro serwisy Java oraz interfejs użytkownika budowany w ReactJS przy użyciu micro-frontend’ów.

„Jutro” to nasz framework do tworzenia frontend’ów. Oparty jest o ReactJS, ale dostarcza dodatkowo zestaw komponentów i narzędzi, które w znacznym stopniu przyspieszają pracę na interfejsem użytkownika w naszej domenie. 

Obecnie „Jutro” używane jest głównie wewnętrznie do budowania naszych produktów (między innymi GWCP). Trwają jednak prace nad udostępnieniem tego produktu również na zewnątrz. Dałoby to naszym klientom możliwość dużo łatwiejszego budowania swoich własnych rozwiązań webowych opartych o serwisy oferowane w chmurze Guidewire. 

Ciekawa historia łączy się z pochodzeniem nazwy frameworka „Jutro”. Polskie słowo to ukłon w stronę autorów, których duża część pracuje w Krakowie, a jednocześnie dobrze oddaje charakter rozwiązania mocno związanego z przyszłością Guidewire.

Wspomniałeś o transformacji przez jaką przechodzi Guidewire. Co oznacza to dla pracowników firmy?

KJ: Jest to niewątpliwie bardzo ciekawy okres, w którym można się dużo nauczyć. Był to też jeden z głównych powodów, dla których sam zdecydowałem się dołączyć do Guidewire. 

W Krakowie tworzymy nowe produkty, oparte o najnowsze technologie, co samo w sobie jest już świetną okazją do zbierania cennego doświadczenia. Czas po jakim dostarczamy nowe funkcjonalności do klientów jest krótki. Daje nam to szybką informację zwrotną i pozwala sprawnie weryfikować założenia. 

Tak dynamiczne środowisko niesamowicie przyspiesza proces uczenia się. Nie tylko pomysły produktowe, ale i te dotyczące technologii, architektury czy samej organizacji są szybko zderzane z rzeczywistością, a błędne założenia mogą być sprawnie korygowane.

Dobrym przykładem takiego podejścia jest rozwój Guidewire Cloud Platform. Pierwsza wersja platformy powstała w zaledwie w trzy miesiące. Zestaw funkcjonalności był co prawda minimalny, ale i tak pozwoliło to na pozyskanie pierwszego klienta i dało bezcenne doświadczenie na start.

Od tego czasu, regularnie co dwa tygodnie dostarczamy nowe funkcjonalności dla klientów, kształtując w ten sposób produkt, jego architekturę oraz sposób w jaki organizujemy naszą pracę. Dziś, po dwóch latach mamy kilkudziesięciu klientów rozsianych po całym globie, a nasz świat wygląda zupełnie inaczej – mierzymy się już z innymi wyzwaniami.

Jaki jest Twój pomysł na skalowanie zespołu oraz organizacji?

KJ: Osobiście jestem fanem cross-funkcjonalnych, zespołów, zorganizowanych wokół produktu, mogących niezależnie dostarczać wartość. Gdy organizacja rośnie, dużym wyzwaniem staje się właśnie to “niezależne dostarczanie”. 

Staram się organizować zespoły tak, aby odpowiadały za konkretny obszar funkcjonalny produktu i miały możliwie niewiele zależności na innych. Jednocześnie dążę do modelu, gdzie architektura wspiera ten podział i nie generuje niepotrzebnych zależności na poziomie technicznym. 

Z pomocą przychodzą tu wzorce architektoniczne takie jak micro services, czy micro frontends dające nam dobrą izolację pracy. Dzięki takiemu modelowi wiele decyzji może zapadać na poziomie samego zespołu. To w połączeniu ze stosunkowo płaską strukturą jaką ma Guidewire, pozwala na szybkie podejmowanie decyzji na każdym szczeblu organizacji.

Sama organizacja pracy to nie wszystko i wzrost nie byłby możliwy bez utalentowanych inżynierów budujących nasze zespoły. Bardzo cenię sobie pracę z ludźmi, którzy mimo tego, że są specjalistami w jakiejś dziedzinie inżynierii oprogramowania, jednocześnie się do niej nie ograniczają i są gotowi  do podjęcia wszystkich wyzwań koniecznych do stworzenia udanego produktu.

Posłuchaj naszego Praktycznego podcastu.

Beato, w Guidewire jesteś Software Enigneerem. Z jakimi technologiami pracujesz na co dzień?

Beata Baran: Na co dzień głównie zajmuję się rozwijaniem serwisu napisanego w Javie i React. Deployment naszych serwisów odbywa się przy pomocy Kubernetesa na AWSie. Persystencją danych zajmuje się  NoSQL-owa baza DynamoDB. Nierzadko zdarza mi się też napisać jakiś skrypt w Pythonie.

Czy osoby techniczne komunikują się z biznesem? Jak to u Ciebie wygląda?

BB: W moim przypadku taka komunikacja odbywała się zawsze przez pośredników. W Guidewire pomaga nam w tym nasz Product Manager, z którym jesteśmy w stałym kontakcie, co najmniej raz w tygodniu spotykamy się by omówić dalszą pracę. Drugim punktem kontaktu jest UX Designer, który również przekazuje nam informacje i spostrzeżenia klientów.

Chyba nie ma szybszej metody nauki niż stanąć przed problemem, który musisz rozwiązać.

Co doradziłabyś juniorowi na początku drogi zawodowej?

BB: Odważnie wykorzystuj każdą szansę na rozwój! Czasem nie jest łatwo skoczyć na głęboką wodę, ale zawsze warto. Ja osobiście nie jestem osobą, której przychodzi to łatwo, więc cały czas jeszcze nad tym pracuję, ale widzę, że za każdym razem się to opłaca.

Na koniec jestem zadowolona, że skorzystałam z szansy, że zaangażowałam się w coś, o czym wcześniej nie miałam pojęcia. Chyba nie ma szybszej metody nauki niż stanąć przed problemem, który musisz rozwiązać.

👉Sprawdź oferty pracy w Guidewire