Data Science kurs – komu może pomóc?
Zaczynamy 102. odcinek podcastu Biznes Myśli. Dzisiaj przygotowałem dla Ciebie trzy różne perspektywy osób, które przerobiły mój autorski online kurs „Praktyczne uczenie maszynowe i data science od podstaw”. Dlaczego nagrywam ten odcinek podcastu? Bo wiem, że część osób, kiedy nagrywałem taki odcinek podcastu zmieniła swoje zdanie i dołącza, edukuje się i rozwija.
Dlatego jeżeli chcesz posłuchać trzy różne perspektywy, a mianowicie osoby, która już wcześniej działała w data science, ale później przyszła i wzbogaciła swoją wiedzę. Druga osoba to jest osoba decyzyjna, która już przez dłuższy czas pracuje na stanowisku kierowniczym – jest IT dyrektorem. Trzecia perspektywa to perspektywa programisty.
Bardzo fajne historie. Ja lubię słuchać różnych historii ludzi, którzy się rozwijają i zmieniają, więc dlatego też powstają takie odcinki.
Więc już nie przedłużając, powiem tylko, że kolejna edycja kursu „Data Science & Machine Learning w praktyce” rusza 10 października. Warto być, bo te kursy odbywają się stosunkowo rzadko (jedynie 2 razy do roku).
Od analityka danych do Data Scientist
Pierwszą osoba, która opowie o swoim doświadczeniu jest Ola Mazurek, która pracuje z danymi już od dość dawna – ładnych kilka lat.
W tej chwili pracuje na stanowisku Data Scientist. Przed kursem miała wahania czy dołączać czy nie, zastanawiała się czy jest sens, bo już pracuje w zawodzie. Ale dość często jest tak, że jak pracujesz w jednym miejscu to troszkę powtarzasz pewne doświadczenie, które kręci się w kółko. To też trochę taki problem, który de facto każdy z nas ma, kiedy pracuje w jednym miejscu.
Właśnie dlatego trzeba się wychylać i patrzeć co się dzieje na zewnątrz. Z drugiej strony to też nie zawsze jest takie oczywiste, gdzie się wychylić, bo w pewnym momencie już pojawia się takie poczucie, że nie za wiele jest nowych rzeczy, więc Ola też się wahała czy dołączać czy nie.
Też warto powiedzieć, że Ola wygrała konkurs. Zapraszam do obejrzenia nagrania, gdzie Ola opowiadała o swoim rozwiązaniu. Tematem konkursu było „Prognozowanie cen nieruchomości w Moskwie”. Co ciekawe, też były dane w cyrylicy, żeby nie było tak łatwo. Tam co prawda podpowiadałem różne rzeczy, ale to było ciekawe, bo chciałem zasymulować taki przypadek, że rozpoczynasz problem i ten problem zawiera dużo nieznanych rzeczy.
Dla mnie to jest klasyka – w takim sensie, że Ty przychodzisz do nowej firmy, np. teraz rozmawiam z taką firmą, która zajmuje się medycyną. Ja na tym szczególnie się nie znam, ale to wcale nie przeszkadza, bo tak naprawdę zajmuję się danymi. Więc jak są dane i są osoby, z którymi mogę porozmawiać i zinterpretować pewne rzeczy, to jest ok. Chciałem spowodować takie poczucie, że dostajesz dane, których nie do końca rozumiesz, ale to nie powinno Cię hamować. Bo tak naprawdę masz pewne narzędzia, pewne mechanizmy myślenia i działaj. Taka ciekawostka.
Zapraszam do wysłuchania opinii Oli.
Cześć Ola. Przedstaw się kim jesteś, czym się zajmujesz i gdzie mieszkasz.
Cześć Vladimir. Nazywam się Ola Mazurek. Aktualnie jestem Data Scientistem w Mondelēz. Wspieram proces generowania forecastu i mieszkam w Warszawie.
Pytanie na początek. Jaką ostatnio fajną książkę przeczytałaś i dlaczego warto ją przeczytać?
Ostatnio przeczytałam co prawda książkę, którą Ty polecałeś na kursie, która nazywa się „Atomowe nawyki”, ale chciałam w zasadzie powiedzieć o innej. Mianowicie o takiej, która mnie bardziej poruszyła. Jest to książka „Dotknięcie pustki”, napisana przez Joe Simpsona. Ona została wydana w 1988 r. – w roku, w którym się urodziłam. Jest to książka alpinisty, opowiadająca o jego wyprawie z przyjacielem Simonem w Andy Peruwiańskie.
Troszeczkę zaspoileruje, ale to jest coś co wydarza się na samym początku książki. Oni wyjeżdżają w te Andy, żeby zdobyć szczyt Siula Grande. Zdobywają ten szczyt dość szybko, książka jest raczej o tym, kiedy on schodząc łamie nogę i zdaje sobie sprawę, że po prostu umrze w tych górach. Jest to niesamowita historia o determinacji ludzkiej i o tym na ile stać ludzkie ciało. To jest naprawdę niewiarygodne.
Sam spoiler jest ogromny, bo ten autor to bohater tej książki, opowiada swoją historię, więc wiadomo, że przeżywa. Naprawdę bardzo polecam, nawet osobom, którym nie za bardzo w ogóle takie tematy się podobają, bo myślę, że nie trzeba być jakimś zapalonym alpinistą, żeby naprawdę znaleźć w tej książce coś ciekawego, też w odniesieniu do siebie. Bardzo polecam.
Fajnie, widzę, że lubisz badać możliwości człowieka, nie tylko możliwości danych. Właśnie o danych będziemy teraz rozmawiać. Wspomniałaś, że pracujesz jako Data Scientist. Powiedz troszkę kontekstu co to znaczy w praktyce, a mianowicie jakiego rodzaju problemy rozwiązujesz, jakie codzienne wyzwania masz przed sobą.
Wspieram zespół demand planner’owy u nas w firmie. Zadanie wydaje się dość trywialne, bo chodzi o forecastowanie sprzedaży, ale przez to, że jest w zespole parę osób i każdy zajmuje się innym rynkiem, okazuje się, że każdy rynek jednak ma zupełnie inne problemy, czasami są zupełnie inne dane zewnętrzne, których możemy użyć. Próbujemy wykorzystywać techniki uczenia maszynowego do tego, żeby jak najbardziej wesprzeć te osoby, które potem rzeczywiście generują ten finalny forecast. Tak, żeby ten forecast po prostu osiągał jak największe accuracy pod koniec (wtedy kiedy już ta sprzedaż się wydarza).
Powiedz jeszcze proszę, jak długo już pracowałaś w roli Data Scientist, przed tym jak dołączyłaś do kursu?
Data Scientist to nazwa, która jest mega szeroka, bo wiadomo, że Data Scientist to może być osoba, która w ogóle nie ma żadnego kontaktu z biznesem i tylko od rana do wieczora siedzi i praktycznie nawet proponuje własne algorytmy, więc taka rola innowacyjna.
Albo taka rola, gdzie w zasadzie jest dostęp do bazy danych przez SQL-a i osoba wyciąga dane na potrzebę analiz i to też czasami już teraz nazywa się Data Scientistem.
Moja ścieżka była taka, że ja zaczęłam od analityka danych, ale z wykorzystaniem języka SaaS i SQL. Zajmowałam się przez jakieś 5,5 roku analizą danych klienckich, wsparciem partnerów biznesowych – to były dane lojalnościowe.
Wiadomo było, gdzie Ci klienci robią zakupy, u jakich partnerów, w jakim czasie, jakiej wartości są to zakupy. Używaliśmy tych danych, żeby po pierwsze generować jakieś fajne analizy dla naszych partnerów, żeby móc wspierać ich w kolejnych akcjach marketingowych, które podejmowali.
Ale też super było wykorzystywać te dane segmentacji klienckich, np. zobaczyć w jaki sposób Ci klienci grupują się w jakieś takie określone segmenty, czym są zainteresowani, jak się te segmenty różnią między sobą. Druga rzecz to były takie scoringi – jakieś tam propensity modele. Cały czas to wszystko było w zakresie Random Forest albo regresji logistycznej czy K-means.
Cały czas miałam wrażenie, że jednak tych algorytmów tak wiele nie poznałam. Zwłaszcza, że wracając do moich studiów, ja skończyłam w 2012-2013 r. i mam wrażenie, że naprawdę niewiele z tych studiów pamiętam. One były dość mocno oderwane od praktycznego wykorzystania, więc było bardzo dużo teorii.
Teoria według mnie ulatuje z głowy, jeżeli się tego nie wykorzystuje w praktyce. No więc jeżeli ja przez kolejne 5-6 lat głównie wyciągałam jakieś raporty z bazy danych albo wykorzystywałam jakieś takie proste rzeczy to przyznam, że ze szkoły naprawdę niewiele zostało. Więc wszystko się ugruntowało w pracy, więc chciałam to poszerzyć.
Po tamtej przygodzie przeniosłam się bardziej z tych analiz klienckich do tego forecastowania. Tutaj rzeczywiście jest bardzo duże pole do popisu, bo zawsze są problemy, zawsze chcemy większe accuracy. Więc jest naprawdę szereg możliwości i takie naprawdę fajne pole do zachęcenia nas do tego, abyśmy wykorzystywali najnowsze techniki, żeby rzeczywiście próbować pół procent więcej tego accuracy zdobyć.
Data Science kurs dla Data Scientist?
Słuchając Twojej wypowiedzi czuć, że z danymi masz styczność ponad dobrych kilka lat. Wróćmy do tego punktu, jak to było jeszcze przed kursem. Już się zajmujesz danymi, używasz Random Forest, więc już doświadczenie jest (a to się mierzy raczej w latach). Widzisz możliwość, że możesz dołączyć do kursu „Praktycznie uczenie maszynowe i data science”. Wahasz się, ale decydujesz. Więc powiedz jakie miałaś myśli w głowie i dlaczego się zdecydowałaś?
Tak, wahałam się przyznam jakiś czas, bo jednak z jednej strony nie chciałam powtarzać tej wiedzy, którą już mam. Wiadomo, że to byłoby bez sensu. Z drugiej strony pomyślałam, że po pierwsze kurs jest w Pythonie, a ja do tej pory Pythona raczej uczyłam się na własne potrzeby, bo w pracy cały czas wykorzystuje SaaS (w jednej i drugiej). Każdy kurs, który do tej pory realizował był od podstaw.
Te wszystkie kursy na różnych platformach, które są dostępne to one zawsze zaczynają od tego samego. A jednak nawet jak się zrealizuje taki kurs to potem przychodzi jakieś takie prawdziwe zadanie i człowiek trochę jest w punkcie wyjścia, bo nie wie jak zacząć z tym. Więc przyznam, że te podstawy Pythona mi pomogły, ale cieszę się, że cały kurs, który realizujecie jest w Pythonie, bo to daje takie naprawdę solidne narzędzie do tego, że jakbym teraz już chciała zmienić narzędzie z tego SaaS-a na Pythona to czuję się pewna w tym narzędziu. Wiadomo, że nie wszystko jestem w stanie zrobić jakoś super optymalnie, ale wszystko jestem w stanie jakoś tam rozkminić i to mi się bardzo podoba. To był ten wielki plus.
Ale też już po samym programie tego kursu widziałam, że do pewnego momentu jestem zaznajomiona z tymi algorytmami, które będą, ale potem wchodzą sieci neuronowe, gradient boosting i wszystkie te pozostałe rzeczy, też wdrażanie tego modelu na produkcję to są rzeczy, z którymi ja nie miałam do tej pory do czynienia i bardzo bym chciała poznać jak to wykorzystać w praktyce.
To było dla mnie bardzo ważne. Żeby zrozumieć jaki typ problemu jestem w stanie rozwiązać przy pomocy jakiego algorytmu, żeby poszerzyć ten swój wachlarz możliwości, ale też zobaczyć na przykładach (bo bardzo fajne jest to, że jest bardzo dużo przykładów na kursie) jakie są konkretne problemy, z którymi ludzie się stykają.
Bardzo mi się podobało np. przy okazji tego konkursu, który był realizowany – tam było pokazane 5 czy 6 przykładów problemu, który można rozwiązać tylko przy pomocy tego, że się właśnie zrealizuje ten model, który będzie przewidywał tą cenę. Więc to nie jest tak, że tylko musimy odpowiadać na jedno pytanie, ale tych pytań jest naprawdę masa. Od nas zależy do czego to wykorzystamy.
Powiedziałaś teraz o konkursie. Warto o tym powiedzieć troszkę więcej, bo oprócz tego, że brałaś udział w konkursie to również go wygrałaś. Powiedz troszkę więcej co Cię zaskoczyło w konkursie i czego się nauczyłaś.
Fajnie, że wspominasz o konkursie, bo to naprawdę była ciekawa lekcja. Natomiast na pewno to co mnie zaskoczyło to to w jaki sposób sama się zaangażowałam, bo nie spodziewałam się tego, że wygram, bo uważam, że tam był duży łut szczęścia w tym wszystkim. Myślę, że wszyscy korzystaliśmy z bardzo podobnych metod i podobnych algorytmów i po prostu akurat ja miałam więcej szczęścia niż inni.
Natomiast dużo się nauczyłam przez to, że od razu wykorzystałam wszystkie rzeczy. Wiesz jak to jest, zdobywasz wiedzę i myślisz sobie, że na pewno kiedyś tego użyjesz, a jednak w pracy czasami nie ma tej możliwości, żeby to wykorzystać od razu i jakoś to przemija. Natomiast w przypadku konkursu, jeżeli chcesz jednak zrobić jak najlepszy wynik, a ja na początku miałam jakiś taki wynik raczej w tej drugiej połówce to później zaczęłam wykorzystywać coraz więcej tego co było do tej pory przekazane na kursie.
Po prostu od razu – ta wiedza od razu się utrwaliła i teraz np. wiem, że jeżeli chciałabym coś z tego wykorzystać to już nie muszę jakoś odkopywać tego, tylko wystarczy, że sobie tylko odświeżę składnię i jestem w stanie wykorzystać to od razu. To jest naprawdę mega fajne.
Element szczęścia oczywiście zawsze się przydaje, ale tutaj też jest element skromności, bo patrząc na Twoje nagranie, które mieliśmy po konkursie, podsumowanie i zaangażowanie, które miałaś, myślę, że jednak tutaj było decydujące. Postaramy się też załączyć w naszych notatkach, żeby można było to obejrzeć do czego zachęcam.
Powiedziałaś takie coś, że zaczęłaś od ścieżki bardziej jako analityk danych, teraz już jednak bardziej zaawansowane narzędzia wykorzystujesz m.in. uczenie maszynowe.
Więc możemy Cię nazwać bardziej już takim Data Scientist. Powiedz, na ile ta ścieżka dla Ciebie była oczywista na początku i na ile ta ścieżka jest taka zawiła? Co byś może zrobiła inaczej albo co poleciłabyś takiej osobie, która nas może teraz słucha? Jak efektywnie wykonywać kroki do przodu, aby szybciej osiągnąć cel?
Przyznam, że na pewno tam była duża doza losowości. Jak ja zaczynałam to był rok 2013, kiedy zaczęłam taką swoją przygodę z danymi na serio, wychodząc poza Excela. To był przypadek, bo dostałam się po prostu do firmy, do której składałam wtedy aplikację. To był firma Payback, w której właśnie spędziłam prawie 6 lat analizując dane klienckie. To był trochę przypadek, bo akurat dostałam się tutaj, a nie gdzie indziej.
Byłam juniorem, nie miałam takiego doświadczenia. Też korzystali tam np. z tego SaaS-a, który też mi towarzyszy. Myślę, że ta znajomość SaaS-a była jakimś takim czynnikiem, który wpłynął na to, że zostałam wybrana do pracy spośród innych kandydatów i też w jakiś sposób były trochę prowadzone przez przypadek. Natomiast teraz myślę, że sytuacja jest trochę inna, bo wcześniej jednak ten data science nie był aż tak rozpowszechniony. To było jednak 8 lat temu jak tę moją przygodę zaczynałam.
Myślę, że teraz masa firm już oferuje jakieś juniorskie stanowiska, bardziej i mniej zaawansowane. Więc teraz jest bardzo szeroki wachlarz możliwości i wydaje mi się, że bardziej od strony pracownika zależy co on wybierze niż tak, że bierze to co jest dane. Więc ja trochę czuję, że wzięłam to co jest dane.
Uważam, że to fajnie się potoczyło, bo rzeczywiście dało mi te możliwości, żeby trochę rzeczy poznać. Może po prostu tempo było przez to wolniejsze, że akurat poszłam tutaj, a nie gdzie indziej. Natomiast jestem zadowolona z tej ścieżki jaką wybrałam.
Teraz będąc w tym miejscu, gdzie jestem czuję, że potencjał do nauki, rozwoju jest naprawdę fajny. Dlatego też się z tego cieszę. Natomiast nie ukrywam, że fajnie byłoby w ogóle przejść na Pythona już w całości, bo mam wrażenie, że ten SaaS chyba nie jest narzędziem, które aż tak dużo możliwości oferuje.
Więc jakaś ta synergia pomiędzy tymi rozwiązaniami, które ludzie rozwijają w Pythonie, nie jest to wszystko do przełożenia 1:1 na SaaS-a. Więc myślę, że będę w tą stronę kierować kolejne moje kroki w karierze.
Myślę, że to co na trzeba zwrócić uwagę to po prostu iść i wybrać sobie ścieżkę pod tym kątem. Natomiast możliwości jest po prostu masa. Wydaje mi się, że to też bardzo dobry moment, żeby zacząć data science, bo widać na rynku jak ciężko jest o dobre osoby, które rzeczywiście dają dużo od siebie i są w stanie wykorzystać te techniczne umiejętności i wszystko czego się nauczą rzeczywiście w praktyce. Ciężko jest naprawdę znaleźć takie dobre osoby na rynku pracy teraz. Dlatego tym bardziej jest to rynek pracownika.
Fajnie to ujęłaś. Podsumujmy sobie to co usłyszałem od Ciebie. Po pierwsze, jak zaczynałaś, to były znacznie mniejsze możliwości, jeżeli chodzi o ten temat.
Wtedy to dopiero się rozkręcało i były przeróżne stanowiska Data Scientist, ale faktycznie wtedy to dopiero się zaczynało. Teraz te możliwości są znacznie większe, ale bardzo mi się podoba to, co powiedziałaś a propos takiej świadomej decyzji.
Czasami jest tak, że człowiek ma szczęście trafia we właściwe miejsce ot tak. Ale nie zawsze tak jest, więc nie trzeba spodziewać się, że zawsze los doprowadzi nas tam, gdzie my chcemy być docelowo, a więc warto sobie wybrać świadomie, bo w tej chwili wystarczy zajrzeć na pierwszą lepszą tablicę ogłoszeń. Możliwości jest dużo.
Druga rzecz, która bardzo mi się podoba to po prostu takie praktyczne podejście, czyli nie spodziewać się tego, że kiedyś nastąpi magiczny moment i będziesz gotów do tego działania, tylko zaczynać: stanowisko junior, jakieś praktyki, a dalej będzie łatwiej się wspinać.
Jak już jesteś w środku organizmu i dajesz od siebie, czyli inwestujesz swój czas, energię na to, aby pomóc osiągać cele to ten wzrost może być znacznie szybszy niż to się wydaje. Dzięki wielkie za to podsumowanie.
Data Scientist – najważniejsze umiejętności
Jeszcze zapytam z perspektywy czasu – jakie najważniejsze umiejętności według Ciebie liczą się w roli Data Scientist?
Zdecydowanie pierwsza rzecz to jest chęć rozwijania się. Myślę, że to jest bardzo ważne, żeby jednak nie zostawać w miejscu. Ten świat zmienia się za szybko teraz, zresztą to jest też motto Twojego podcastu. Trzeba iść z duchem czasu, trzeba sprawdzać te nowe algorytmy, nowe propozycje, które są wymyślane.
Możesz też wymyślać samemu, więc powiedziałabym, że to jest najważniejsza rzecz. Ale też z takiego pragmatycznego doświadczenia mojego wynika, że bardzo ważne w takiej branży jest też to, żeby umieć po pierwsze radzić sobie samemu. Taka samodzielność, żeby po prostu – napotykasz problem to wiesz, gdzie szukać rozwiązania. Nikt nie ma odpowiedzi na wszystkie pytania, więc to jest naturalne, że zawsze błędy się pojawiają, tylko to jest mega ważne, żeby wiedzieć, gdzie z takim błędem się udać, gdzie szukać odpowiedzi i pójść dalej samemu, a nie utykać w takich momentach.
To się wiąże z tym, żeby też umieć sobie sprawdzać samemu czy to się wygenerowało ma sens czy to jest jeden wielki “babol”. Wydaje mi się, że to jest taka trochę cena juniorska, że coś tam się generuje, generuje, generuje te wyniki, a potem przychodzi jakiś przełożony i patrzy, że to w ogóle jest jakaś inna skala tych liczb, które my pokazujemy. Więc to jest taka umiejętność samosprawdzania się – też jest bardzo ważna.
Według mnie, żeby być naprawdę fajnie rozwiniętym w tym zakresie to ważna jest umiejętność dogadywania się z biznesem, bo biznes po prostu posiada tę wiedzę, którą my chcemy przełożyć na algorytm. Bardzo ważne, żeby umieć od nich jakoś wyciągnąć te informacje, które nam po prostu pomogą jako Data Scientist’om, żeby jakoś wzbogacić albo wiedzieć, w którą stronę w ogóle iść z tymi algorytmami. Więc nie zamykać się tylko na ten świat Pythona czy świat algorytmów tylko po prostu wiązać to z tym biznesem. Od tego się nie ucieknie. Wydaje mi się, że jeżeli chce się być coraz lepszym to to będzie coraz bardziej się zazębiało.
Bardzo fajna lista, popieram, podpisuję się pod każdym punktem. Faktycznie to jest to. Bardzo fajnie ujęłaś te punkty.
Rozmawialiśmy o tym, że przed rozpoczęciem kursu wahałaś się czy zacząć czy nie. Potem rozmawialiśmy o kursie trochę. To teraz pytanie: czy było warto?
Oczywiście, że było warto. Najlepszym tego dowodem jest to, że jeszcze w trakcie trwania kursu już wykupiłam kolejny. Więc zdecydowanie uważam, że było warto. Naprawdę bardzo dużo się nauczyłam, świetne jest Twoje podejście do wykorzystywania praktycznych przykładów. Mi się to bardzo podoba.
Więc jeżeli moja delta wiedzy nie jest aż tak super równa jak osoby, która rzeczywiście nie miała nic wspólnego wcześniej z data science to cieszę się, że bardzo ugruntowałam sobie tą wiedzę i poszerzyłam wachlarz możliwości tych algorytmów, które będę w stanie wykorzystać w przyszłości. Bardzo sobie cenię to ugruntowanie, zaznajomienie się z tym Pythonem na tyle, że czuję się teraz z tym komfortowo.
Dzięki wielkie Ola za rozmowę, podzielenie się opinią i wskazówkami życiowymi. Jedna sprawa jak osoba dopiero zaczyna gdzieś swoją przygodę. W Twoim przypadku już na co dzień gryziesz po kawałku tego słonia z różnych stron. To jest też bardzo miło słyszeć, że osoba, która już działa w temacie, usłyszała te swoje zdania – „Czym bardziej staje się zaawansowania osoba, tym trudniej tą osobę zaskoczyć” i tak po prostu się chodzi na konferencje, kupuje książki albo przerabia się kursy po to, żeby usłyszeć jakieś jedno zdanie.
Tutaj czuję, że było więcej niż jedno zdanie i udało się pewnie trochę rzeczy poukładać. Więc też jestem z tego powodu zadowolony. Czuję się też dumny, że udało się przyczynić do tego. Dzięki wielkie, do usłyszenia, do zobaczenia.
Dzięki wielkie, trzymaj się.
Czy osobie decyzyjnej jest potrzebna praktyczna wiedza na temat Data Science & Machine Learning?
A my teraz przechodzimy do kolejnej perspektywy i gościa, którym jest Piotr Kaczmarski. Bardzo ciekawa osoba, która już ma naprawdę bardzo bardzo dużo lat doświadczenia w IT. Przeróżne rzeczy przerabiał, o których m.in. będzie wspominać.
Cześć Piotrek. Przedstaw się kim jesteś, czym się zajmujesz, gdzie mieszkasz?
Cześć. Mam na imię Piotrek. Od ponad 20 lat zajmuję się z pasją szeroko pojętą informatyką. Mieszkam w Warszawie. Na początku mojej kariery zarządzałem zespołami IT w banku, później troszkę wdrażałem systemy klasy ERP. Przez jakiś czas zająłem się również zarządzaniem projektami, a w tej chwili pracuję w biurze rachunkowym i odpowiadam już za wszystko co wiąże się z zespołem IT czyli za sprzęt, oprogramowanie. W naszych szeregach w Kancelarii to są doradcy podatkowi, księgowi, osoby zajmujące się kadrami, płacami, jak również mamy szereg prawników. W sumie nas jest około 160 osób. W moim dziale IT pracuje nas 17 osób.
Masz bardzo fajne doświadczenie, bardzo szerokie. Ciekawe jest też to, że grono, w którym teraz jesteś to tutaj trzeba bardzo ostrożnie trzymać wszystkie bajty, żeby nic nie zniknęło. Bo w sumie danych w ogóle nie warto gubić, a w tym przypadku to chyba nawet jest zabronione prawem.
Tak, w tej chwili przez obowiązek RODO, nawet każde zgubienie czy utrata danych jest koniecznością zgłoszenia.
Powiedz przed startem, jaką fajną książkę ostatnio miałeś okazję przeczytać i chcesz polecić słuchaczom?
Szczerze powiedziawszy to staram się czytać dużo i szukać w tym co czytam nowych inspiracji. Czytam dużo postów na Linkedin, które również dają mnóstwo ciekawych spostrzeżeń.
Bardzo zachęcam wszystkich aby korzystali z tego medium, bo można obserwować różnych ciekawych ludzi, którzy właśnie zajmują się machine learningiem czy data science na całym świecie. Dobrze jest właśnie obserwować takich ludzi. Wśród moich znajomych np. są to osoby, które są ze Stanów Zjednoczonych, z Australii, Indii czy też Meksyku. Dzięki właśnie takiemu jednemu znajomemu, którego poznałem na Linkedinie, zareklamował mi książkę, którą właśnie ostatnio czytałem.
Tytuł jej to „Jak Google, Bono i Gates trzęsą światem dzięki metodzie OKR”. Opisana w niej jest metoda wykorzystująca cele do zarządzania firmą, opracowana kiedyś w Intelu, a w tej chwili z tego co wiem jest stosowana m.in. w Google. W Polsce dowiedziałem się, że stosuje to Allegro i ponad 50 innych firm. W książce są przykłady użycia tej metody jak i relacje osób, z którymi ona uczestniczyła.
O ile dobrze zrozumiałem, polega ta metoda na tym, że wyznaczamy sobie cele, które chcemy osiągnąć – najlepiej w okresie 3 lub 6 miesięcznym. Do tego celu określamy kluczowe rezultaty, które są tak jakby miernikami sukcesu. Muszą one być oczywiście mierzalne i powinno być ich gdzieś w granicach od 3 do 5.
Po tej lekturze, w kolejce następnych książek, które chciałem przeczytać to jest „Antykruchość” i „Budowanie zespołów analitycznych”, gdzie jest opisane wykorzystanie analityki sztucznej inteligencji do usprawnienia biznesu.
Ciekawe rzeczy opowiadasz. „Antykruchość” też tutaj popieram. Apropo OKR to też całkiem fajna rzecz. W Polsce chyba staje się coraz bardziej też popularna.
Porozmawiajmy teraz o Twojej roli, bo troszkę już wspomniałeś, czym się zajmujesz i jaką masz odpowiedzialność, ale powiedz troszkę szerzej, żeby było zrozumiałe: jaka jest Twoja rola, czym się zajmujesz w pracy?
W pracy to tak jak już wcześniej nadmieniłem, mamy zespół 17 osób i np. mamy super pomocnych i uczynnych obsługi wewnętrznej, czyli to taki zespół informatyków (takie złote rączki, które po prostu, jeżeli użytkownik ma problem to pójdzie i zajmie się tym, naprawi, rozwiąże jego problem).
Mamy też rewelacyjny zespół, który zajmuje się wdrożeniami, obsługą systemu ERP. Jak już takie epitety mówię to fantastyczny zespół programistów i testerów, którzy tworzą aplikację webową, którzy szczerze powiedziawszy muszą nadążać za moimi pomysłami. Poza tym to czym się zajmujemy tutaj to tak naprawdę parę lat temu rozpoczęliśmy tak proces przechodzenia z dokumentów papierowych na dokumenty w formie elektronicznej.
Aplikacje, których szukaliśmy na rynku nie spełniały naszych wymagań. Były mało elastyczne, wręcz nie odpowiadały naszym wymaganiom. Podjęliśmy wówczas decyzje o napisaniu podstaw takiego systemu i wtedy właśnie stworzyłem zespół, który zaprojektował ten nasz portal.
Stworzyliśmy w kilka miesięcy wersję beta dla kilku pilotażowych klientów. Pół roku później uruchomiliśmy portal dla pozostałych klientów. Ten portal służy do tego, aby klienci nasi dostarczali nasze dokumenty, a my dostarczamy inne produkty czyli pity, sprawozdania, informacje o płatnościach itd.
Pierwszą rzeczą związaną z ML, którą zrobiliśmy już parę lat temu to było wdrożenie OCR. Czyli już to był taki zalążek sztucznej inteligencji, którą próbowaliśmy zrobić. Miał jedno zadanie: rozpoznawanie faktur. Użytkownicy wrzucają na ten portal dokumenty, automatycznie jest to od razu przekazywane do OCR, OCR rozpoznawał, wracał do nas z wynikiem. Na portalu jeżeli było coś źle, niepoprawnie zOCR’owane, było poprawiane. Później jest to wysyłane jako prawidłowe dane do OCR, a ten OCR po prostu zaczął się uczyć z tych danych, które przesyłaliśmy.
Zaobserwowaliśmy również, że dużo czasu zajmuje naszym pracownikiem pobieranie zwolnień lekarskich z portalu ZUS. Niestety ten portal nie ma żadnego API, z którego można by było cokolwiek pobierać. Koniecznie było tam zalogowanie się do tego portalu za pomocą kart kryptograficznych. To więc wykorzystaliśmy narzędzie do testowania aplikacji Katalon.
Zaprogramowaliśmy pierwszego naszego robota, który wykonuje za tego pracownika tą czynność. Było to tak, że my tych klientów mamy kilkuset i teraz pracownik, żeby zalogował się do kilkuset firm to spędzam nad tym praktycznie tydzień czasu. A dzięki temu robotowi, którego wdrożyliśmy, robimy w ciągu 24 godzin 3 cykle pobierania tych danych. Dzięki temu mamy zwolnienia lekarskie na bieżąco i oszczędzamy czas.
W kontekście tego jeszcze przychodzą mi do głowy jakieś pomysły dotyczące robota. Już wtedy, żeby stworzyć takie jakby roboty, które by były zarządzane przez jakąś AI czyli decydowały jaki robot, kiedy ma zostać uruchomiony.
Taki AI menedżer.
Coś takiego właśnie.
Widzę te emocje, które masz i czuć, że wkładasz duszę w te działania, które tutaj się odbywają. Widać, że wierzysz też w duże i zdroworozsądkowe operacje takie jak automatyzacja, przy czym raczej jest to takie podejście pragmatyczne.
Bardzo mi się podoba to podejście: jest problem, jest rozwiązanie, idziemy dalej – po co się męczyć.
Powiedz mi Piotrek a propos data science, bo zaczęliśmy o tym mówić. Byłeś uczestnikiem kursu „Data Science & Machine Learning w praktyce”. Jesteś w roli kierowniczej, czyli prawdopodobnie wprost nie będziesz tego kodować. Jaka była Twoja motywacja, jak sobie to wytłumaczyłeś?
Po części, jeżeli ktoś pójdzie na urlop to jeszcze koduje – zdarzyło się. Dlaczego się zdecydowałem na rozpoczęcie nauki? Chciałbym w naszej firmie utworzyć zespół, który zająłby się takimi właśnie tematami. Stwierdziłem, że super by było, aby taki zespół przyspieszył i poprawił jakość obsługi klientów, szybkość obsługi. Aby taki zespół stworzyć, dobrać odpowiednich ludzi, potrzebuję wzbogacić się o tą wiedzę.
Więc zdobywałem na początku wiedzę przez różnego typu szkolenia (np. Udemy, LinkedIn Learning), słuchałem Twoich podcastów, także te podcasty od lat są ze mną i gdzieś tam w między czasie pojawiła się wiadomość, że rozpoczyna się DWthon – hack outside the box. Zapisałem się na niego, skończyłem go. Przeszedłem kurs zerowy, przygotowujący, który mówił po części o Pythonie, jak się poruszać. Później po prostu zapisałem się na kurs „Praktyczne uczenie maszynowe” i przeszedłem go do końca.
Mało tego, trzeba tu powiedzieć wprost, że bardzo fajnie się zaangażowałeś, współtworzyłeś atmosferę kursu. Jeżeli chodzi o konkurs, to warto wspomnieć, że byłeś bardzo aktywny. Ciężko powiedzieć, ile godzin spędziłeś. Konkurs trwał 2 tygodnie, ile tam godzin było spędzonych nad samym konkursem to nie wiem, ale podejrzewam, że dużo.
Tutaj mi ciężko określić, bo czasami się zdarzało, że wstawałem o 4 rano, bo mi wpadł jakiś pomysł. Siedziałem do północy i czasami już żonie mówiłem, że weekend chyba spędzę na konkursie. Także to było sporo godzin.
Właśnie powiedz, co dla Ciebie było odkrywcze? Na ile ta wiedza, którą zdobyłeś będzie potrzebna i na ile ten sposób przekazania doświadczenia jest dla Ciebie sensowne?
Odkrywcze było to, że szczerze powiedziawszy ja chciałem poukładać sobie wiedzę. Zapisałam się kurs, bo jak wspomniałem wcześniej, uczestniczyłem w tych kursach Udemy czy LinkedIn Learning czy nawet trafiłem na jakieś zajęcia na helsińskim Uniwersytecie, tam jakiś kurs uczenia maszynowego też skończyłem. Ale te kursy, które brałem dawały gotowego Jupyter Notebooka, gdzie jak wykonywałem to wszystko ładnie poszło. Brakowało właśnie tego poukładania, dlatego właśnie zapisałem się na kurs.
Na tym kursie dostałem wiedzę, przez dwa tygodnie zacząłem tą wiedzę łykać, po dwóch tygodniach już uważałem, że dużo wiem. Wydawało mi się, że mogę przenosić góry, bo wszystko wychodziło. Przyszedł czas konkursu, usiadłem do konkursu. Jedną rzeczą, którą udało mi się z pamięci wpisać wówczas na samym początku w Jupyter Notebooku to było import pandas as pd – i nic więcej. Ale z dnia na dzień jak właśnie spędziłem te godziny praktyki, szukania, odgrzebywania informacji w przykładowych notebookach, które tam dostarczane były do kursu, co raz były to wzloty i upadki oczywiście, coraz się piąłem na rankingu to spadałem z rankingu to oczywiście miałem dużo kodu napisanego.
Po tygodniu wrzuciłeś kawałek kodu, który jak ja popatrzyłem napisałem 50 linijek, a Ty to zrobiłeś w 10 linijek i tak było: „No nie, nie możliwe”. Więc po prostu przerobiłem ten swój kod na podobny do Twojego i zacząłem dodawać swoje rzeczy, analizowałem to co napisałeś i szczerze powiedziawszy bardzo polecam branie udziału w praktycznym konkursie, bo przez ten okres, jeżeli my tylko mamy notebooki i na tych notebookach pracujemy i nam wychodzi to jednak to praktyczne, gdzie musimy od zera zacząć to dopiero uświadamia, że jednak ta praktyka jest potrzebna. Jeżeli następne edycje będą, ja gorąco zachęcam do brania udziału w konkursie i faktycznie poświęcenia na to sporo godzin, przygotowania się do tego, żeby to poświęcić.
I zaplanowanie sobie potem odpoczynku, bo faktycznie trzeba się zaangażować, ale potem też ta krzywa uczenia jest prawie pionowa.
Machine Learning w księgowości
Już tak zbliżając się do końca. Powiedz, jakie masz pomysły, aby zacząć to stosować wiedzę zdobytą podczas kursu w praktyce, np. wdrażać modele w Twojej organizacji? A być może masz jakieś inne pomysły, hobby projekty – jak możesz to proszę zdradź.
Problem jest w tym, że ja mam bardzo dużo pomysłów i szczerze powiedziawszy te pomysły dzisiaj są, jutro ich nie ma – zdążę zapisać, nie zdążę zapisać. Ale jakbym miał wymienić takie, które mi w tym momencie przychodzą do głowy to bym wymienił kilka tych pomysłów.
Jednym z pomysłów jest… z tego co ja pamiętam już była o tym mowa na którymś z Twoich podcastów. To było około 4 lat temu. Było coś o uczeniu maszynowym w księgowości i rachunkowości. Wówczas ktoś opowiadał o zautomatyzowaniu dokumentów księgowych. Właśnie w tym ewentualnie widzę pomysły u nas, żeby to zrobić.
Kolejnym takim pomysłem – mamy ten nasz portal, w którym np. klienci wrzucają nam dokumenty, ale czasami wrzucają te dokumenty i oni po tych dokumentach nie wiedzą co dokładnie to jest, a nasi pracownicy muszą na te dokumenty spojrzeć, niejednokrotnie muszą zeskanować. Pomysłem jest to, żeby te dokumenty wstępnie OCR’ować bądź nie OCR’ować i próbować klasyfikować jakie to są typy dokumentów – czy to są faktury, umowy, dokumenty kadrowe czy dokumenty inne księgowe, aby odpowiednio już wcześniej nie było konieczności przeglądania kilkakrotnie tych dokumentów tylko do odpowiednich osób, aby one trafiały.
Innym pomysłem jest np. analizowanie księgowe informacji o nietypowych sytuacjach, aby ktoś np. nadzorujący mógł wcześniej się dowiedzieć o takiej sytuacji i szybciej zareagować. Wiemy o tym szczególnie w IT, gdzie jeżeli nie zareagujemy szybko i dopuścimy do tego, aby to poszło na produkcję czy czas od tego zdarzenia był dłuższy to wówczas mało kto pamięta co się mogło wydarzyć.
Ja mówię o sytuacjach takich, że nie poprawnie coś zostało zaksięgowane, jeżeli źle będzie zaksięgowane to konsekwencją byłyby źle zrobione sprawozdania finansowe, źle zrobione dokumenty do ZUSu, do Urzędu Skarbowego. Szczerze powiedziawszy tak, zaszczepiam powoli tą swoją wiedzę i pomysły w zarządzie. Namawiam ich do powołania takiego zespołu, który właśnie by się mógł zająć takimi rzeczami, które by mogły przyspieszyć i pozwolić np. popełniać mniej błędów. Z tego powodu np. jeszcze prawdopodobnie spotkamy się we wrześniu, bo zapisałem się już na kurs NLP, który prawdopodobnie pozwoli mi jeszcze głębiej w te tematy wejść.
Jeszcze właśnie chodzi o OCR to tam faktycznie jest takie połączenie, naprawienie tych błędów, które generuje takie klasyczne OCR. Regenerujemy te rzeczy w taki sposób, że lepiej rozpoznajemy, więc myślę, że to akurat bardzo fajnie się składa.
Dzięki wielkie Piotrek. Jesteś bardzo pozytywną osobą i miło się z Tobą rozmawia. Życzę Ci sukcesów z pomysłami, żebyś zawsze miał ze sobą karteczkę z długopisem, żeby te pomysły nie uciekały. Wszystkiego dobrego, do usłyszenia.
Dzięki Vladimir. Cześć.
A więc już poznaliśmy już dwie perspektywy. Piotrek opowiedział swoją perspektywę bardziej jako osoba decyzyjna, która kieruje zespołem. Osoba, która ma mnóstwo pomysłów, żeby wdrażać, ale też musi wiedzieć, w jaki sposób to poukładać, aby ostatecznie cel udało się zrealizować. Pomysłów można wymyślić wiele, tylko trzeba to zrobić tak, żeby to zaczęło działać w praktyce.
Po co programiście Machine Learning?
Cześć Maciek. Przedstaw się kim jesteś, czym się zajmujesz i gdzie mieszkasz.
Cześć Vladimir. Nazywam się Maciej Radoszko. Jestem programistą z 8-letnim stażem. Formalnie moje stanowisko obecne nazywa się Senior Fullstack Software Engineer. Co to znaczy, może wyjaśnię od razu dla tych, którzy nie wiedzą. Fullstack Software Engineer to znaczy, że zajmuję się w pracy takimi dwiema częściami oprogramowania czyli zarówno Frontendem tj. część wizualna, widoczna dla użytkownika końcowego, który korzysta z aplikacji, jak i Backendem czyli częścią działającą w tle, wykonującą właściwe zadania czy logika aplikacji. Aktualnie moim stackiem czyli technologiami, nad którymi pracuję jest Java, JavaScript, TypeScript, Node.js oraz React. A pochodzę z Wrocławia i właśnie tutaj pracuję.
Powiedz jaką książkę ostatnio fajną przeczytałaś? Dlaczego warto ją było przeczytać albo przynajmniej 1-2 zdania z tej książki?
Ostatnio uświadomiłem sobie, że potrzebuję przerwy o książek w stylu jak żyć, jak programować, coaching w 3 prostych krokach itp. Chciałem przeczytać coś zupełnie innego i tak natrafiłem na książki Doroty Masłowskiej. To jest polska pisarka, która swego czasu dostała nagrodę literacką Nike i paszport polityki. Jeśli już jesteśmy w temacie ML, a wiadomo, że jak ML to wszelkie możliwe przykłady z wykorzystaniem kotów to polecam szczególnie powieść Masłowskiej „Kochanie, zabiłam nasze koty”. Nie dlatego, że po kursie mam tych kotów jakoś szczególnie dość. Koty są wspaniałe. Natomiast czytając Masłowską widzę jak ona się bawi słowem, jak doskonale owija sobie język polski wokół palca. Jej powieści nie czytałem po to, żeby wyciągnąć z nich jakieś ukryte piąte dno.
Bardziej po to by właśnie rozkoszować się tym jak można eksperymentować z polszczyzną i myślę, że to jest ekscytujące z logistycznego punktu widzenia. Też rozważając te twórczość z poziomu przetwarzania języka czy np. automatycznych tłumaczy to po przeczytaniu tych książek widzę ile jest tutaj pola do popisu. Miałem też przyjemność posłuchać takiego spotkania Masłowskiej z tłumaczami jej książek na inne języki i już samo to rozbudza wyobraźnie, bo jeśli my jako ludzie i użytkownicy danego języka mamy tyle zagwostek przy tłumaczeniu literatury to co zrobiłaby maszyna?
Nie powiedziałeś najważniejszego: czy koty przeżyły?
To jest bardzo interesujący zabieg, że ta książka nazywa się „Kochanie, zabiłam nasze koty”, gdyż wszystkie koty wydaje mi się, że przeżyły. W każdym razie nigdzie nie jest zapisany żaden zabieg mordowania zwierząt. Także spokojnie, jest bezpiecznie.
Dobrze, super. Przejdziemy teraz do tematów uczenia maszynowego, bo brałeś udział w kursie „Praktyczne uczenia od podstaw i data science”. Dlaczego zdecydowałeś się na ten kurs?
Mi machine learning wcześniej właściwie nigdy nie był potrzebny. Ukończyłem studia na Politechnice Wrocławskiej na kierunku informatyka. Wybrałem sobie specjalizację inżynieria oprogramowania. Tam była możliwość wyboru specjalizacji sztuczna inteligencja, ale inżynieria oprogramowania wydała mi się bardziej interesująca i też życiowa pod kątem tego co ja chciałem robić dalej. Szczerze mówiąc tematy ML’owe nie były wtedy dla mnie w żaden sposób pociągające.
Bo na przedmiotach, gdzie trzeba było zrobić jakąś predykcję to sprowadzało się to do wykonania zadania, wypełnienia sprawozdania, ewentualnie zaimplementowania jakiegoś algorytmu i to właściwie jest koniec historii.
Teraz po kilku latach pracy i zdobywania doświadczenia, rozglądam się dookoła patrząc co jeszcze jest ciekawego w mojej branży, a o czym ja mam właściwie nikłe pojęcie. Naturalnie na tej liście pojawiły się tematy ML’owe, przy których zazwyczaj mogłem tylko kiwać głową, ale wypowiedzieć się czy zrobić coś praktycznego to już nie za bardzo. W poprzedniej pracy miałem koleżankę (pozdrawiam Cię Agnieszka, bo na pewno słuchasz tego podcastu). Agnieszka brała udział w kursie DataWorkshop i bardzo go polecała, co mi utkwiło w pamięci.
W zeszłym roku zrobiłem sobie kilka miesięcy przerwy od pracy i poleciałem w podróż do Ameryki Południowej. W czasie tej podróży zacząłem słuchać podcastu Biznes Myśli. Miałem bardzo dużo czasu na przemyślenia i te historie, które usłyszałem były dla mnie bardzo inspirujące.
Pokazały mi, że nawet jeśli jeszcze w moim życiu zawodowym nie udało mi się zetknąć ze sztuczną inteligencją to gdzieś tam są ludzie, którzy już to robią. Tak przenosząc się trochę w czasie do przodu, zdecydowałem w pewnym momencie, że chcę nadrobić te zaległości, które mam i nauczyć się czegoś z ML. Przekonałem znajomych, tutaj pozdrawiamy Asię i Grzesia, by do mnie dołączyli, bo wiadomo – razem jest raźniej. Zapisaliśmy się na kurs „Praktyczne uczenie maszynowe”.
Teraz jak się czujesz z ML? Tak jak powiedziałeś, przed kursem było takie poczucie, że coś tam się obiło o uszy, ale żeby coś więcej to niekoniecznie. Jak teraz się czujesz z tym tematem?
Czuję się coraz pewniej. Moim pierwszym celem było to, żeby zrozumieć w ogóle słówka. Jeżeli nazwa praktyczne uczenie maszynowe okaże się nie tak bardzo praktyczne i zostanę tylko z jakimś słownictwem, bardziej lub mniej skomplikowanym to pomyślałem wtedy, że to dla mnie będzie już sukces, bo będę mógł mieć o czym rozmawiać. Będę rozumieć to co ludzie do mnie mówią, a wiem doskonale, że prędzej czy później z tymi tematami się zetknę, bo czasy są jakie są.
Natomiast siedząc przez 8 tygodni w domu, praktycznie dzień w dzień i wykonując elementy kursu, nie tylko uczestnicząc w webinarach, ale także robiąc te ćwiczenia praktyczne, które były oparte o prawdziwe dane – widzę tą deltę, widzę ten progres jaki zrobiłem. Rzeczywiście nie miałbym chyba problemu w tej chwili, żeby podejść do tego też w pracy.
Zabawna anegdotka jest taka, że Asia, o której wspomniałem, pewnego dnia na nasze prywatne konsultacje (bo zdzwanialiśmy się czasem, żeby rozwiązywać problemy, które może ktoś napotkał, a druga osoba akurat przez nie przeszła lub znała odpowiedź) Asia przyniosła raz pytania od koleżanki, która aplikowała na stanowisko Data Analytics albo Data Scientist.
Tak z czystej ciekawości zaczęła te pytania wymieniać i próbowaliśmy razem na nie odpowiedzieć. Okazało się, że będąc chyba wtedy w połowie kursu czy w 3/4 kursu, tak naprawdę byliśmy w stanie odpowiedzieć na te wszystkie pytania, a zakładam, że na takie stanowisko nie aplikują ludzie, którzy zajmują się tematem 4-5 tygodni. Także naprawdę wtedy zobaczyłem, że nie jest tylko moje wyobrażenie, że ja coś umiem, tylko rzeczywiście w pewien sposób odpowiadając na te pytania, weryfikuje to też rynek.
Fajnie, też warto powiedzieć, że ta firma zadaje właściwe pytania, bo to czasem różnie bywa z tymi pytaniami, rekrutacjami, ale bardzo fajny przykład przytoczyłeś. W ogóle jest taka ciekawostka – kiedyś miałem prezentacje na ten temat apropo Fullstack, bo wymieniłeś przykłady co to znaczy w praktyce Fullstack, że to jest Frontend i Backend.
Są takie pewne przemyślenia, że właśnie Full zawiera albo będzie zawierać ML, a bez ML to będzie takie Halfstack. Jak myślisz czy to jest taka wizja bardziej 5, 10, 20 lat do przodu czy to raczej już gdzieś tak pomału albo z Twojej strony są pomysły jak zacząć używać ML albo ze strony firmy, biznesu? Jak myślisz: Fullstack i ML to już się łączy czy to dopiero perspektywa dalsza?
Opowiem Ci najpierw pewną historię ze swojego życia jak wyglądała moja kariera i ML na horyzoncie. Podczas 8 lat pracy w firmach, właściwie tylko raz zetknąłem się z ML w zastosowaniu biznesowym i to tylko dlatego, że właściwie sami postanowiliśmy spróbować przygotować taki prototyp w ramach Hackathonu i tak zrobiliśmy.
Firma wtedy na podsumowanie tego Hackathonu odtrąbiła, że to jest jakiś sukces, że to w pewien sposób może wprowadzić rewolucję do tego co robimy i po tym odtrąbienu sukcesu wydarzyło się nic. Zazwyczaj firmy dużo mówiły o ML, ale jakoś nigdy tego ML, ani tam gdzie pracowałem, ani na horyzoncie nie było.
Może to jest zbieg okoliczności, a może nie, ale są realne szanse, że ponad miesiąc od ukończenia kursu, jednak uda mi się spotkać z ML na produkcji, a to dlatego, że nowy projekt, do którego dołączę już wkrótce, takie rozwiązanie posiada. Wprawdzie z tego co wiem do tej pory, jest to coś bardzo prostego, bo wykorzystuje modele regresji liniowej, ale daje to już perspektywę pewnego startu, którego szukałem.
Ja np. aktualnie nie jestem nastawiony na zmianę stanowiska pracy, nie jestem jakoś specjalnie zafiksowany w tematach ML’owych i dalej traktuję swoją przygodę z uczeniem maszynowym jako taki eksperyment, choć teraz już eksperyment trochę innej kategorii, bo myślę, że jestem do niego przygotowany i mam pewne doświadczenie. To tak historycznie.
Natomiast jeżeli pytasz mnie o rynek pracy i o to czy Fullstack już zawiera czy będzie zawierać ML czy nie – to jest bardzo dobre pytanie, bo patrząc na ogłoszenia o pracę, dla pracodawców Fullstack to jest człowiek, który zajmie się rozwojem zarówno frontendu i backendu i szczerze mówiąc ja nie widziałem ogłoszeń o pracę, gdzie było wspomniane też coś o ML. Być może nie szukałem takich ogłoszeń, natomiast specjalnie one nie rzuciły mi się w oczy. Patrząc po moim środowisku raczej jest tak, że albo ktoś zajmuje się tematami ML i data scientist czy data engineering i za dużo nie programuje albo programuje, a ML zajmuje się ktoś inny.
Dochodzimy tutaj też do tematu specjalizacji. Może przykład z innego podwórku. Częścią bycia Fullstackiem jest robienie frontendu części wizualnej i teraz niektórzy w swoich zespołach mają dedykowanego UX Designera (osoba, która przygotowuje projekt interfejsu użytkownika), natomiast są projekty, gdzie takiej dedykowanej osoby nie ma. Wtedy taki programista samodzielnie przygotowuje projekt interfejsu, samodzielnie go implementuje, wdraża na produkcję, a potem najlepiej by było jeszcze, żeby sprawdził jak użytkownicy na ten interfejs reagują – czy to się podoba, czy może warto tutaj coś usprawnić.
Wydaje mi się, że ten przykład można łatwo przenieść też na kwestie ML w takich projektach. Przynajmniej jeżeli chodzi o kwestie data science, feature engineering czyli tworzenie cech. Ja np. po kursie nie jestem specjalnie fanem feature engineeringu – mnie to aż tak bardzo nie bawiło.
Ja wolałbym osobiście mieć w projekcie osobę, która będzie odpowiedzialna właśnie za tą działkę. Kogoś kto będzie znał domenę, rozumiał tą domenę i pójdzie mu to po prostu lepiej niż mi. Z drugiej strony, też po kursie DataWorkshop rozumiem doskonale, że znajomość domeny to nie jest rzecz wystarczająca, żeby w dobry sposób robić feature engineering. To trzeba myśleć w taki sposób co ten model może potrzebować, tworzyć te hipotezy, szybko je weryfikować, nie mówiąc już o tym, że mogą być też dane, które tak naprawdę nie znaczą nic dla człowieka i z tej sytuacji też trzeba jakoś wybrnąć.
Tak reasumując wydaje mi się, że nie można być specjalistą od wszystkiego. W tej branży tempo rozwoju jest szalone. Ważne jest by nadążać za tym tempem, przynajmniej w obszarach, które są istotne dla mnie i dla mojej kariery.
Jeszcze powiem Ci Vladimir jedną rzecz. Myślę, że istotną z punktu widzenia programistów. Pozostaje tu kwestia rozdziału per technologie. Głównym językiem, w którym się specjalizuję jest Java.
Ostatni raz z ML w Javie korzystałem na studiach. W tej chwili, przynajmniej z perspektywy Java Developerów, ML równa się głównie Python, gdzieś tam może później R. W moim środowisku panuje przekonanie, że jeśli lubisz Javę to raczej nie lubisz Pythona, a to może implikować, że nie zajmujesz się ML na co dzień. Bo po co masz się denerwować, skoro wkurza Cię ten język? Być może się to zmieni, poprzez upowszechnienie machine learningu w firmach i przez to przez zmianę wymagań na rynku pracy, czyli w ogłoszeniach będzie wymagane, że to trzeba umieć, bo to jest standard. A może poprzez rozwój technologii. Może ten monopol Pythona na ML skończy się albo zaczniemy korzystać z jakiś innych technologii.
Ja osobiście mam nadzieję, że szybko te hipotezy zweryfikuje w nowym projekcie, bo co ciekawe to jest projekt, w którym mamy połączenie zarówno Javy jak i Pythona. Są mikroserwisy oparte na Pythonie, które zajmują się tą częścią machine learningową, ale jest też Java.
Właśnie wyprzedziłeś to pytanie, bo chciałem zapytać czy wreszcie już w Twoim asortymencie pojawia się też Python. Widzę, że przynajmniej jako mikroserwis już gdzieś tam pomału się klaruje.
Tak szeroko odpowiedziałeś na to pytanie, że w sumie w trakcie odpowiedzi chciałem zapytać o jeszcze kilka rzeczy, ale zapytam jeszcze taką rzecz już nie dotykając wprost ML – pracujesz jako Fullstack Developer i przerabiałeś kurs, w którym było oczywiście dużo o ML, bo tak się nazywa też kurs, na to się robi duży nacisk, ale też robi się nacisk na inne rzeczy. Ciekawy jestem (tak z perspektywy) czy jest taka wiedza, którą zdobyłeś na kursie, którą też możesz wykorzystać jako Fullstack Developer? Teraz nie chodzi o to, że mówiłem coś o Javie, ale bardziej być może sposób myślenia, być może pewne podejście, może coś Cię zainspirowało?
Dużo rzeczy było taką powtórką elementów, które ja stosuję na co dzień. Na przykład to, żeby nie próbować produkować rozwiązania tygodniami, a potem w trakcie weryfikacji po tych tygodniach okazuje się, że to co zrobiłem jest bez sensu. Bardziej chodzi o to, żeby robić małe cykle i sprawdzać na bieżąco czy idziemy w dobrą stronę, czy może trzeba zrobić krok do tyłu.
Jeżeli chodzi np. o ostatni moduł i o deployment działającego modelu, muszę Cię tutaj zmartwić, dla programisty tutaj właściwie nie ma nic nowego, jeżeli chodzi o kontrolę wersji, dokeryzację, wspomniane mikroserwisy. Także tutaj akurat nie szukałem nawet takich elementów, które mogłyby być przydatne w pracy programisty. Ten poziom wyciągnąłem już z mojego wcześniejszego doświadczenia. Choć przyznam szczerze, jeżeli chodzi o Pythona to ja z Pythonem nie miałem aż takiego doświadczenia, więc ta część wprowadzająca była bardzo przydatna.
Zresztą myśmy z Asią i Grzesiem, z którymi podjęliśmy to wyzwanie, jeszcze przed kursem założyliśmy sobie, że w ciągu miesiąca przerobimy sobie taką podstawową wiedzę z Pythona jeszcze raz, żeby lepiej ogarniać co się dzieje. Natomiast myślę, że to wprowadzenie, które jest robione na początku kursu dla osób, które nie zetknęły się wcześniej z Pythonem jak i z bibliotekami, których używamy w czasie kursu to jest bardzo pomocne. Jednak opasłe książki to opasłe książki, a Python opisywany z najważniejszymi elementami, z których będziemy korzystać w czasie kursu – super wiedza w pigułce.
Maćku bardzo Ci dziękuję za tą rozmowę, tą opinię. W Twoim głosie czuć dużo przemyślanych, fajnych rzeczy. Nie wiem czy to takie urlopy, które sobie robisz – wyjeżdżasz i układasz, strukturyzujesz tą wiedzę czy to po prostu regularnie sobie układasz, ale fajnie. Czuć dużo zdrowego rozsądku.
Też taka pewna struktura i pragmatyzm, żeby robić pewne rzeczy, które mają sens. Dzięki za to, że tym się podzieliłeś. Życzę, aby ten projekt, który tutaj się nasuwa, jeżeli chodzi o ML – rozkwitł i udało się, mimo tego, że nie masz planów wprost zmieniać.
Myślę, że akurat programiści w wielu wymiarach będą mieć podobne myślenie, że mają pewne rzeczy, które się podobają, które uczyli się przez dłuższy czas i jest ok, ale bardziej, żeby mieć dodatkowe wyzwanie to czemu nie. Więc pod tym względem myślę, że to jest raczej taka standardowa postawa. Więc życzę, żeby tutaj ten projekt, który częściowo wkracza w Twoje codzienne życie związane z ML, rozkwitł i dał Ci możliwość aby poczuć, posmakować i wykorzystać wiedzę, która była tu przekazana.
Dzięki wielkie jeszcze raz za podzielenie się swoją opinią.
Dzięki wielkie.