Praca w IT

Czy studia kierunkowe są niezbędne do bycia dobrym specjalistą?

Infermedica

Infermedica pracuje nad transformacją rynku healthcare. Czym dokładnie zajmuje się ta firma i jak wyglądają u niej procesy rekrutacyjne? Czy sztuczna inteligencja zmieni nasze zdrowie? Na te i inne pytania odpowiedział Tomasz Gabrysiak, Patryk Barczak i Patryk Kurzeja.

Sztuczna inteligencja ma coraz więcej zastosowań, również w medycynie. Opowiedz czym zajmuje się Infermedica i nad czym teraz pracujecie w zespole Delivery?

Tomasz Gabrysiak:

Infermedica, łącząc wiedzę medyczną i techniczną, tworzy platformę opieki zdrowotnej opartą na sztucznej inteligencji, która pomaga lekarzom zapewniać skuteczną, bezpieczną i niezawodną opiekę swoim pacjentom. Nasze rozwiązania pozwalają między innymi wstępnie ocenić stan zdrowia pacjenta czy zebrać niezbędne informacje przed wizytą u lekarza, przez co ma on więcej czasu na interakcję z pacjentem. 

W zespole Delivery w głównej mierze zajmujemy się obsługą naszych klientów (są nimi firmy oferujące opiekę zdrowotną, konsultacje telemedyczne oraz firmy ubezpieczeniowe) i dostarczaniem rozwiązań, które idealnie wpasują się w ich biznes, ale jesteśmy też zaangażowani w wiele projektów wewnętrznych, mogę tutaj wyróżnić naszą stronę infermedica.com.

Współpracujemy ściśle z zespołem Customer Success & Implementation w trakcie wdrażania produktu oraz jego dalszego utrzymywania według wymagań klienta. Produkty dla klientów oparte są o wspólną podstawę, którą w Delivery rozwijamy, aby dostosować instancję pod wymagania. Oprócz tego, wspieramy klientów korzystających z naszego API i przeglądamy ich rozwiązania oparte na nim, by również ich jakość była jak najwyższa. Nieustannie pracujemy nad ulepszaniem i automatyzacją procesu dostarczania naszych produktów. Zachęcamy do zapoznania się ze szczegółowym opisem procesu kilku wdrożeń u naszych klientów. 

Jak wygląda Wasz zespół i z ilu osób się składa?

Tomasz Gabrysiak:

Nasz zespół składa się obecnie z dziewięciu developerów oraz 4 testerów. Ze względu na fakt, że angażujemy się w różne inicjatywy, wewnętrznie, nasze kompetencje podzielone są na dostarczanie produktów oraz działania związane z marketingiem. Każda z podgrup posiada swojego Lead Developera.

Z jakich technologii korzystacie i dlaczego?

Tomasz Gabrysiak:

W całej organizacji wykorzystujemy wiele technologii stawiając głównie na pythona w części silnikowej, czyli sercu naszych produktów oraz na Vue.js w naszych aplikacjach frontendowych. Z Pythonem mamy już bardzo długą przygodę. Był to język, który zyskiwał dużą popularność na początku tworzenia naszych produktów i który całkiem nieźle znaliśmy. Pozwolił nam w szybki sposób prototypować i budować nowe systemy. W swojej prostocie dawał ogromne możliwości.

Naszą stronę firmową, za której rozwój odpowiada zespół Patryka, stworzyliśmy przy pomocy Nuxt, który jest oparty na Vue. Do zarządzania treścią wykorzystujemy Storyblok CMS – narzędzie dające dużo możliwości zarówno developerom, jak i content edytorom. Dzięki temu możemy zminimalizować ilość pracy developerów i dostarczać nowe strony o wiele szybciej, korzystając z gotowej bazy komponentów.

Jak wygląda rekrutacja do Waszego zespołu?

Tomasz Gabrysiak:

Rekrutacja u nas składa się z kilku etapów, które mogą się delikatnie różnić w zależności od zespołu, do którego aplikujemy. Zwykle jednak wygląda to tak, iż w pierwszym kroku zaczynam od zapoznania się i analizy wszystkich otrzymanych CV, które wstępnie selekcjonuję. Największe znaczenie na tym etapie ma dla mnie określenie, czy profil kandydata odpowiada naszej ofercie.

Z wybranymi kandydatami umawiamy się na rozmowę zazwyczaj w formie videocall, podczas której rekruter może zapytać Cię o dotychczasowe doświadczenie, projekty, przy których pracowałeś. Rozmawiamy również o Twojej motywacji i powodach zmiany firmy, bądź rozpoczęciu Twojej przygody w Infermedica. Najważniejsze jest jednak dla nas przedstawienie naszych wartości i zderzenie naszych możliwości z oczekiwaniami kandydatów. 

Oczywiście nie zabraknie kilku pytań w języku angielskim, ponieważ jest to nasz główny język komunikacji w firmie.  Na koniec spotkania zawsze znajdziemy przestrzeń na Twoje pytania oraz streszczenie naszej listy benefitów.

Po pierwszej rozmowie, wybranym kandydatom wysyłamy zadanie programistyczne do rozwiązania. Ma ono formę małego projektu i pozwala nam poznać umiejętności techniczne kandydata, jego znajomość technologii oraz dokładność czy umiejętność wykonania projektu zgodnie ze specyfikacją.

Sposób rozwiązania zadania stanowi również świetny materiał do rozmowy twarzą w twarz, która jest ostatnim etapem naszej rekrutacji. Na tym etapie, wraz z Lead Developerem, mamy okazję osobiście poznać kandydata.

Warto dodać, że podczas rekrutacji a także po jej zakończeniu, ja oraz mój zespół jesteśmy do dyspozycji, jeżeli pojawiają się jakieś pytania czy wątpliwości do samego procesu czy przedstawionego feedbacku, który przekazywany jest kandydatom po każdym z etapów.

Jakie cechy powinien mieć kandydat zaproszony do rozmów? Na jakie aspekty zwracacie szczególną uwagę?

Patryk Kurzeja: 

Tak jak wspomniał Tomek, ostatnim etapem rekrutacji jest możliwość osobistego poznania kandydata i jest on o tyle ważny, że dopiero po nim możemy zadać sobie pytanie “czy chcę pracować z tą osobą przez następne lata?”. Odpowiadając sobie na to pytanie zwracam uwagę nie tylko na posiadaną wiedzę, lecz także na cechy charakteru kandydata. Chcemy tworzyć zespół, w którym wszyscy się rozumieją, pomagają sobie nawzajem, potrafią dać i przyjąć feedback, są odpowiedzialni. Dobry team nie może pozwolić sobie na wewnętrzne spory i kwasy, które rujnują atmosferę.

Ideałów nie ma, ale najbliżej tego jest kandydat, który wpasowuje się w ten schemat.

Patryk Barczak:

Powiedziałbym, że kandydat idealny to oczywiście taki, który spełnia wszystkie wymagania wylistowane w ogłoszeniu. Oprócz wyżej wspomnianej umiejętności słuchania, osobiście cenię proaktywność. Przejmowanie inicjatywy w ramach swoich możliwości, ułatwia współpracę. Warto jednak uważać, by zachować zdrowy rozsądek i nie stać się zbyt nachalnym. W połączeniu z solidnością, pomaga to szybko budować zaufanie zawodowe.

Jakie zauważyliście najczęstsze błędy popełniane przez początkujących programistów podczas rozmów rekrutacyjnych? 

Patryk Barczak:

Nie ma jednego powtarzającego się błędu. W trakcie rozmowy wielu osobom towarzyszy stres, przez który zdarzają się różne wpadki. Zauważyłem, że dość często zdarza się, że kandydat potrafi odpowiedzieć na bardziej skomplikowane pytania, jednocześnie nie znając odpowiedzi na te podstawowe, jak na przykład różnice w deklaracji var/let/const, wspomniane w każdym artykule “Top pytania rekrutacyjne JS”. Może być to spowodowane wspomnianym stresem podczas rozmowy. Oczywiście, nie traktuję tego, jako wykluczające kandydata.

Patryk Kurzeja:

Do tego co powiedział Patryk dodałbym tylko korzystanie z kropek, gwiazdek i innych rodzajów stopniowania swoich umiejętności w CV. Takie wskaźniki może i wyglądają ładnie, ale niestety nic nie wnoszą. Trudniej jest nam również ocenić takie CV. Najlepiej szczególnie na początku kariery sprawdzają się linki/załączniki do wszelakich projektów, którymi można się podzielić. Zawsze chętnie się przyjrzymy projektom, dzięki którym wylistowane w CV umiejętności, w naszej ocenie, mają realne odzwierciedlenie.

Nasze zespoły pracują zdalnie, w taki sposób przeprowadzamy również większość naszych procesów rekrutacyjnych. W związku z tym polecamy także przed spotkaniem zadbać o stabilne połączenie, sprawną kamerkę oraz mikrofon. W ramach dodatkowego komfortu warto również przed rozmową znaleźć spokojne miejsce, w którym na pewno nic oraz nikt nie zakłóci przebiegu spotkania. Takie fundamentalne przygotowanie na pewno zmniejszy też poziom stresu.

Czy studia są potrzebne, by być dobrym programistą/programistką?

Tomasz Gabrysiak:

To zależy. Faktycznie próg wejścia w programowanie nieustannie się zmniejsza a wszystkie materiały do nauki można znaleźć w internecie. To, w połączeniu z nowymi frameworkami czy bibliotekami, które pozwalają osiągnąć niezłe efekty pisząc minimalną ilością kodu, sprawia, że nawet bez żadnego wykształcenia informatycznego można zainteresować się tematem, spróbować, złapać bakcyla i w przyszłości zostać dobrym specjalistą.

Istnieją natomiast obszary programowania gdzie będzie potrzebna bardziej specjalistyczna wiedza zakresu informatyki teoretycznej – w tych obszarach studia niewątpliwie się przydadzą. Są to na przykład niskopoziomowe języki programowania czy specjalistyczne algorytmy.

Podsumowując – kandydaci po porządnych studiach informatycznych często cechują się większą wiedzą z podstaw informatyki czy matematyki, natomiast nie we wszystkich technologiach jest to wymagane. Można zacząć uczyć się samemu i mieć świetne osiągnięcia. W swojej karierze pracowałem zarówno ze świetnymi programistami po studiach niezwiązanych z informatyką, jak i z kiepskimi programistami po informatyce. Nie ma tutaj reguły.

Patryk, a jak Ty na to patrzysz?

Patryk Kurzeja:

Moim zdaniem nie potrzebujemy studiów kierunkowych. Sam jestem osobą po budownictwie i znam sporą ilość świetnych developerów, którzy w pewnym momencie życia postanowili zmienić branżę na IT. Oczywiście studia mogą pomóc zrozumieć wiele rzeczy związanych z szeroko rozumianym pojęciem informatyki, jednak samo kodowanie to już kwestia nauki we własnym zakresie.

Sam proces samodzielnej nauki programowania jest swojego rodzaju studiowaniem i trzeba poświęcić temu odpowiednio dużo czasu – systematyczność i wytrwałość są tutaj kluczem. Kiedy już poznamy podstawy danego języka i stworzymy przykładową aplikację, zaczniemy dostrzegać potencjał na jej rozwój. Tak więc robimy research – okazuje się, że żeby dalej rozwijać aplikację wymagane jest poznanie kilku dodatkowych aspektów programowania, trzeba sięgnąć do różnych materiałów dostępnych w Internecie, czy też literaturze i pogłębiać wiedzę. W pewnym momencie okazuje się, że stajemy się ekspertami.

Patryk Barczak:

To jest pytanie na osobny artykuł. Natomiast, odpowiadając w jednym zdaniu, to studia nie są wymagane, by być dobrym programistą. W kwestii samego poznawania języków prawdopodobnie nie uzyskamy tajemnej wiedzy, niedostępnej przy samodzielnej nauce. Jednak nie żałuję pójścia na studia i zrobiłbym to jeszcze raz. Według mnie, główną korzyścią, jaką dają odpowiednie (a to jest słowo klucz) studia informatyczne, to zmiana sposobu myślenia i podchodzenia do rozwiązywania problemów. Poza tym, na studiach mamy możliwość nawiązania kontaktów z ludźmi o podobnych zainteresowaniach. Zdecydowanie nie polecam iść na studia dla “papierka” w dzisiejszych czasach.

Jakie macie plany rozwoju Infermedica w najbliższym czasie? na najbliższe lata? 

Tomasz Gabrysiak:

Niedawno Infermedica uruchomiła Medical Guidance Platform. To kompleksowa platforma, która usprawni wizyty lekarskie na wszystkich jej etapach – poczynając od wywiadu, zbierania informacji o pacjencie i wsparcia podczas wizyty lekarskiej, po komunikację między lekarzem a pacjentem po wizycie.

Medical Guidance Platform bazuje na silniku diagnostycznym opartym o AI. To właśnie na rozwoju serca naszej platformy (Intelligent Core) w najbliższym czasie będziemy się mocno skupiać. Z tego powodu otworzyliśmy rekrutacje na stanowiska związane z pythonem. Poszukujemy programistów tego języka ze znajomością technologii powiązanych, takich jak FastAPI, Django, Celery czy Redis. Na pewno przydadzą się również specjaliści ze znajomością usług Google Cloud Platform takich jak Pub/Sub czy BigQuery, a także znajomością usług z rodziny AWS.

Rozwiązanie jest dostępne jako API lub w postaci łatwych we wdrożeniu modułów. Dzięki temu dostawcy usług medycznych mogą wykorzystywać platformę w sposób, który przyniesie największe korzyści lekarzom i pracownikom medycznym, a przede wszystkim pacjentom. Trzy podstawowe moduły to Triage, Intake i Follow-up.

Triage to narzędzie, które umożliwia szybkie sprawdzenie i analizę symptomów pacjentów poprzez automatyczny, inteligentny wywiad. Dostarcza pacjentom informacje o prawdopodobnych przyczynach, sugeruje dalsze kroki i alarmuje w przypadku konieczności pilnego działania.

Intake pomaga lekarzom i pracownikom medycznym zebranie wszystkich informacji i danych o pacjencie jeszcze przed wizytą. Umożliwia między innymi przeprowadzenie wywiadu. Dzięki temu lekarze zyskują pełny obraz stanu zdrowia pacjenta.

Follow-up służy głównie do komunikacji z pacjentem. Dzięki niemu lekarze i pracownicy medyczni mogą monitorować przebieg leczenia i upewnić się, że pacjent przestrzega ustalonego planu.

Przed nami jeszcze sporo pracy związanej z rozwojem wyżej wymienionych modułów i to co jest w tym wszystkim ważne z programistycznego punktu widzenia to fakt, iż w Infermedica mamy realny wpływ na produkt, a nie tylko na jego kod. Dodatkowo mamy możliwość i czas na eksperymenty, podejmujemy decyzje, które bywają ryzkowne i dzięki temu zawsze jesteśmy otwarci na innowacje, co jest niemierzalnym doświadczeniem dla każdej osoby pracującej nad rozwojem software’u, niezależnie od poziomu doświadczenia czy stażu pracy w firmie.

Patryk Kurzeja

Front-end dev z niemal 4-letnim stażem – aktualnie Tech Lead w zespole Delivery (marketing) . Zaczynał zabawę z Reactem, jednak po drodze poznał Vue i już nie potrafi wrócić. Poza programowaniem i uczeniem się nowych rzeczy lubi uprawiać sporty wszelakie, fotografować i słuchać podcastów. Uwielbia pić kawę z Chemexa i odwiedzać lokalne kawiarenki w poszukiwaniu nowych doznań smakowych.

Patryk Barczak

Tech Lead w klienckiej części zespołu Delivery w Infermedica. Sprawuje pieczę nad procesem dostarczania, od tematów full-stackowych przez skrypty automatyzujące po zagadnienia devopsowe. Oprócz standardowych dla informatyka nowych technologii, interesuje się również motoryzacją. Można powiedzieć, że jest niespełnionym kierowcą wyścigowym. Poza tym, kibicuje żużlowej Unii Leszno.

Tomasz Gabrysiak

Absolwent Politechniki Wrocławskiej, programista, menedżer, lider. Od ponad 11 lat profesjonalnie związany z rozwijaniem oprogramowania. W Infermedice prowadzi zespół Delivery. Wolny czas stara się spędzać aktywnie, dużo podróżuje, i w każde miejsce zabiera jeden ze swoich rowerów.

Dziennikarz technologiczny od prawie dekady. Człowiek z nienasyconą ciekawością. Fan trudnych pytań, kawy specialty i roweru szosowego. Uzależniony od internetu.

Podobne artykuły

[wpdevart_facebook_comment curent_url="https://geek.justjoin.it/czy-studia-kierunkowe-sa-niezbedne-do-bycia-dobrym-specjalista/" order_type="social" width="100%" count_of_comments="8" ]