Niestety nie każdemu jest pisana branża IT! Wymaga ona wiele poświęceń! Rozmowa z Dawidem Szymańskim (Brand24)

05.07.2017 AUTORZY: Dawid Szymański, Michał Bąk,

Jesteś współtwórcą jednego z najsłynniejszych polskich startupów, jakie to uczucie być częścią takiego projektu jak Brand24?

Wspaniałe.

Osobiście uwielbiam tworzyć nowe rzeczy, a możliwość obserwacji jak to wszystko się rozwija jest niezwykle satysfakcjonująca.

Doskonale pamiętam jak w czwórkę zakładaliśmy spółkę i zastanawialiśmy się co będzie dalej, czy nam się uda. Szybko pojawiła się radość z pozyskania pierwszych klientów. Niedługo później było już ich na tyle dużo, że przestaliśmy się przejmować czy idziemy na pewno w dobrym kierunku.

Przez całą przygodę towarzyszyła mi cała gama uczuć. Od zwątpienia i zniechęcania, po radość i satysfakcję.

Zacznijmy od samego początku, znamy historię Brand24 patrząc na nią z perspektywy Michała Sadowskiego, a mnie interesują technologiczne zmagania nad produktem. Kiedy wystartowaliście, ile czasu trwało „pisanie” narzędzia i co stanowiło największy problem?

Pierwsze prace nad narzędziem rozpoczęliśmy w lipcu 2010 roku.

Pierwsze pół roku było ciężkie. Dopiero po tym czasie zaczęło formować się coś co można było zacząć pokazywać znajomym z branży. Kilka miesięcy później zaczęliśmy zdobywać pierwszych klientów.

U mnie, największym problemem był brak doświadczenia w tworzeniu od zera dużych projektów. Pierwszy kod, który pisaliśmy miał po prostu działać. Dopiero z czasem i pojawianiem się nowych, bardziej doświadczonych osób zaczęliśmy się dowiadywać jak powinien wyglądać proces tworzenia i utrzymania ogromnego narzędzia.

Obawiam się jednak, że gdybyśmy od początku pisali czysty, piękny kod, który oczywiście pokrywany byłby wszelkiego typu testami: Brand24 mógłby w ogóle nie powstać.

Największy problem stanowiło skalowanie różnego typu modułów. Nadchodzi moment, w którym więcej wycisnąć się już nie da i trzeba całkowicie zmienić podejście. Idealnym przykładem jest nasze archiwum gdzie relacyjna baza danych musiała zostać zastąpiona bazą nierelacyjną. Oznaczało to przepisanie całego kodu w module oraz zupełnie innego toku myślowego.

 

Gdzie i kiedy zaczęła się Twoja przygoda z programowaniem? Co sprawiało Ci największe problemy na samym początku?

Zawszę się śmieję, że swoją przygodę z programowaniem zacząłem w walentynki w wieku 13 lat. Kupiłem wtedy swoją pierwszą książkę o programowaniu. Miała obrazki, łatwe do wdrożenia przykłady, była na tyle dobrze zrobiona, że nie zniechęcała do programowania (jak niestety duża część książek z tej branży).

Dwa lata później dowiedziałem się przypadkiem, że z programowania można żyć. Mój wuj tak właśnie robił. To dało mi niesamowitą motywację do dalszej nauki.

Problemów nie było żadnych po drodze z tego co pamiętam. Wolę nazywać je wyzwaniami. Z każdym takim wyzwaniem uczyłem się czegoś nowego co ułatwiło mi późniejszą pracę.

Z tego wszystkiego wywiązała się pasja, coś co naprawdę kocham robić 🙂

Czy potrafiłbyś wymienić „kamienie milowe” w kolejnych levelach Twoich umiejętności programowania? Które rzeczy były najważniejsze w Twojej zawodowej karierze?

Uważam, że w każdym zawodzie najważniejsze jest to, żeby lubić co się robi. Wtedy praca nie jest obowiązkiem, lecz przyjemnością (przyjemnością za którą dodatkowo Ci płacą!). Najważniejsze w mojej karierze zawodowej były: chęć samodoskonalenia, samotne stawianie czoła problemom i poszukiwanie rozwiązań.

Jeżeli chodzi o kamienie milowe to na początku miałem frajdę z jakiegokolwiek kodu, który stworzyłem. Następnie zacząłem tworzyć większe programy (mój rekord to jedna funkcja, która miała 8000 linii kodu i składała się z samych instrukcji warunkowych). To był moment w którym zacząłem się zastanawiać czy nie można zrobić tego lepiej. Wtedy zainteresowałem się bardziej programowaniem obiektowym, dowiedziałem się, że istnieją takie rzeczy jak bazy danych. Niedługo potem dostałem pracę i moje umiejętności bardzo wzrosły. Miałem dostęp do kodu dużego serwisu, mogłem zobaczyć jak to wszystko jest zbudowane.

Niestety nadszedł też czas stagnacji. Doszedłem do pewnego punktu w karierze, że nie wiedziałem w jakim kierunku się dalej rozwijać. Dopiero po przyjściu bardziej doświadczonych programistów dowiedziałem się że istnieją takie rzeczy jak wzorce projektowe, DDD, testy, inspekcja kodu przez innego współpracownika czy że nie powinno się wrzucać kodu bezpośrednio na #master’a 😉

Mam przed sobą jeszcze wiele nauki. Ta branża rozwija się na tyle szybko, że raczej nigdy nie usiądę w fotelu przed kominkiem i nie powiem sobie „wiem już wszystko, nic mnie nie zaskoczy” 🙂

Studia dla programisty, prawda czy mit? Czy istnieją programiści, którzy są samoukami i osiągają technicznie najwyższe szczeble?

Trafiłeś idealnie, bo ja jestem samoukiem.

Uważam jednak, że programista powinien się rozwijać cały czas. Nie powinno mieć dla niego znaczenia to skąd tę wiedzę bierze, ważne żeby się cały czas uczył czegoś nowego. Stagnacja jest najgorsza w tym zawodzie, bo łatwo można się wypalić.

Uważam jednak, że warto chodzić na studia (jak się ma taką możliwość). Pozwalają one na zdobycie ogólnej wiedzy z każdej, powiązanej z informatyką dziedziny. Studia pozwalają też na zdobycie nowych przyjaźni, kontaktów czy praktyk w fajnych firmach.

Nie warto jednak iść na słabe uczelnie. To tylko strata czasu. Staraj się dostać na te najlepsze. Masz gwarancję, że nauczysz się czegoś co Ci się przyda w późniejszym życiu.

O programistach mówi się, że są najbardziej pożądaną grupą zawodową. Skoro od kilku lat widać taką tendencję, jak myślisz dlaczego szkoły nie skręcają w kierunku kształcenia młodych ludzi właśnie na programistów?

Wydaje mi się, że i tak jest o wiele lepiej niż było za moich czasów.

Wśród moich znajomych nie znam nikogo, kto stwierdziłby „chcę być informatykiem” po zajęciach w jakiejkolwiek szkole. Trzeba by było naprawdę trafić na nauczyciela z pasją, który nas nią zarazi. Podejrzewam też, że szkoły nie mają funduszy na zatrudnianie dobrych informatyków, a ilość tygodniowa godzin lekcyjnych jest ograniczona. Trzeba byłoby także zrezygnować z innych zajęć na rzecz informatyki.

Same zajęcia z informatyki powinny być ciekawsze, bardziej interaktywne. Kiedyś była gra o nazwie „Colobot” w której sterowało się ludzikiem/maszyną za pomocą prostego programowania. Była na tyle ciekawa, że zachęcała do samodzielnego odkrywania jak rozwiązać postawiony przed nami problem.

A może uczniowie lubią Minecrafta? Naucz ich robić proste modyfikacje. Pokaż jak zmienić teksturę, podmienić dźwięki, używać wbudowanej w grze konsoli. Po takich zajęciach gwarantuje, że kilka osób bardziej zainteresuje się tematem, a od tego już prosta droga do bycia informatykiem.

Lekcje informatyki za moich czasów wyglądały tak: obsługa worda, excela, painta. Owszem, były przydatne, ale nieinteresujące.

Branża IT. Czy jest dla każdego, czy może są cechy, które pozwalają się lepiej w niej adoptować?

Praca w IT nie jest dla każdego. Próbowałem zarazić tym kilku swoich znajomych, ale niestety nie każdemu jest to pisane.

Ta branża wymaga wielu poświęceń, ciągłego samokształcenia (mało kto ma pieniądze na ciągle kursy), radzenia sobie z problemami które występują po drodze i zrozumienia dlaczego one w ogóle się pojawiły. Nie wolno się za szybko zniechęcać.

Przyda się też mieć umysł ścisły. Pomaga zainteresowanie matematyką, fizyką, najnowszymi nowinkami technologicznymi czy nawet oglądanie Star Treka.

Ciekawość świata, dążenie do tego, aby się dowiedzieć jak np. działa komputer, dysk twardy czy procesor na najniższym stopniu abstrakcji.

Wywiad powstał dzięki:


Coders Lab

Łącząc doświadczenie edukacyjne ze znajomością rynku pracy IT, Coders Lab umożliwia szybkie i efektywne zdobycie pożądanych kompetencji związanych z nowymi technologiami. Skupia się się na przekazywaniu praktycznych umiejętności, które w pierwszej kolejności są przydatne u pracodawców.

Wszystkie kursy odbywają się na bazie autorskich materiałów, takich samych niezależnie od miejsca kursu. Dzięki dbałości o jakość kursów oraz uczestnictwie w programie Career Lab, 82% z absolwentów znajduje zatrudnienie w nowym zawodzie w ciągu 3 miesięcy od zakończenia kursu.


CONNECTIS_

+48 22 222 5000
[email protected]

Złota 59
00-120 Warszawa

CONNECTIS_ jest spółką technologiczną świadczącą usługi z zakresu outsourcingu specjalistów, zespołów projektowych oraz procesów IT.


CONNECTIS_
łączy wyjątkowe doświadczenie, kompleksową znajomość branży oraz kompetencje specjalistów z klientami, aby pomóc im usprawniać projekty informatyczne i zwiększać wydajność procesów biznesowych.

Współpracujemy na szeroką skalę z liderami branżowymi w całej Europie z sektora m.in. finansowego, IT, konsultingowego, ubezpieczeniowego, energetycznego oraz telekomunikacyjnego. Codziennie wspieramy ich ponad 350 specjalistami w strategicznych projektach informatycznych.

Do góry!

Polecane artykuły

22.09.2020

Comarch e-Sale, jako e-commerce na dobry ...