Polska

Software house'y to nie kołchozy, a programiści to nie piwniczniaki. Zobaczcie sami!

Jakub Szczęsny
Software house'y to nie kołchozy, a programiści to nie piwniczniaki. Zobaczcie sami!
29

Wczoraj obchodziliśmy 256. dzień roku, w którym tradycyjnie obchodzi się dzień programisty. Kim właściwie dzisiaj jest programista? Jeżeli chodzi o zakres obowiązków, jesteśmy sobie w stanie to doskonale wyobrazić. Jednak cały czas panuje stereotyp nieco wycofanego ze społeczeństwa "nerda", którego życiem, natchnieniem i motywacją do działania jest kod i jego tworzenie. Czy tak jest? Z pewnością nie!

Dlatego też, miejsca, w których "stężenie programistów na metr kwadratowy" jest spore w społeczeństwie funkcjonują jako zbiorowiska nudnych, zafiksowanych na punkcie jednej dziedziny osób, które poza niezrozumiałymi dla sporej części społeczeństwa linijkami kodu nie widzą nic. A tymczasem jest zupełnie inaczej. Same software house'y to często może nie place zabaw, ale świetnie miejsca, w których liczy się kreatywna, a nie żmudna i nudna praca. Choć nie zmienia to faktu, że odbywają się w owych miejscach rzeczy naprawdę poważne. Software house'y to nie zauważane przez konsumentów, aczkolwiek niesamowicie ważne przedsiębiorstwa, bez których nowe technologie w ogóle nie mogłyby być tym, czym są obecnie.

Wpadliśmy do jednego z software house’ów z biurem w Rzeszowie , żeby zobaczyć jak się w nim pracuje. Poznajcie Concise Software

Jeżeli uważaliście, że najciekawszy w Rzeszowie jest dosyć osobliwy pomnik i ewentualnie kładka dla pieszych w kształcie "aureoli samego prezydenta miasta", moglibyście się nieco zdziwić. W stolicy Podkarpacia funkcjonuje sporo firm IT, które mają ten komfort, iż z pobliskiej Politechniki Rzeszowskiej oraz Uniwersytetu Rzeszowskiego mają ciągły napływ świetnie wykształconych programistów - również tych pochodzących zza wschodniej granicy. O tym, jak zaczęła się przygoda Concise Software z tworzeniem oprogramowania i czy jest to trudny rynek rozmawiałem z Łukaszem Hostyńskim, CEO Concise Software.

Jak sam przyznaje Łukasz Hostyński, CEO Concise Software, jego początki w branży były związane z tworzeniem gier i aplikacji mobilnych dla archaicznych z naszego punktu widzenia platform. Doskonale pamięta czasy J2ME, Symbiana, BREW i innych, niesamowicie popularnych w tamtych czasach rozwiązań. W czasach świetności Zyngi, współtworzył również Vivio, Inc. z siedzibą w Dolinie Krzemowej , firmę, która zajmowała się tworzeniem gier społecznościowych. Ostatecznie, polski zespół developerski Vivio został wchłonięty przez Concise Software , którego obszar działania był już znacznie szerszy - w Concise tworzy się aplikacje i serwisy webowe, jak również te dla platform Android i iOS, które są niesamowicie ważne - nie tylko dla samej firmy , ale również jej klientów. Zainteresowania Concise nie kończą się jedynie na tworzeniu oprogramowania, ale również na doradztwie, a nawet rozwijaniu technologii automotive oraz blockchain.

Tworzenie oprogramowania to dzisiaj nie tylko programiści, ale także product managerowie, testerzy oraz projektanci interfejsów. Praca zespołowa to podstawa

Zaciekawiony procesem tworzenia oprogramowania zapytałem CEO Concise Software o to, jaki udział jest programistów w tworzeniu oprogramowania oraz jak bardzo w tym uczestniczą osoby, które na co dzień "nie klepią kodu".Okazuje się, że software house'y wypracowały sobie świetne systemy, w których bierze się pod uwagę nie tylko dokonania programistów, ale również specjalistów UI/UX , product managerów, testerów i jeszcze innych osób. Z klientem trzeba się przecież komunikować na bieżąco. Programiści nie muszą wiedzieć, jak zbudować przystępną dla użytkownika aplikację mobilną. To wiedzą jednak ci, którzy mają rozległą wiedzę z zakresu użyteczności:

To jest zdefiniowany proces - w nim ważne jest uczestnictwo przede wszystkim designerów - mamy tutaj takich, którzy zajmują się UI/UX. To oni we współpracy z "technicznymi project managerami" oraz z zespołem produktowym po stronie klienta budują rozwiązanie od strony zestawu funkcjonalności, user interface, czy user experience, definiują role użytkownika w systemie Staramy się aby w tym procesie brali udział programiści ,, bo najlepsze efekty występują wtedy, gdy wszyscy odpowiedzialni za projekt uczestniczą w "definicji produktu". Jeżeli chodzi o samych programistów - zdarza się, że są oni otwarci na współpracę w procesie tworzenia i definiowania produktu, inni zaś wolą mieć gotową specyfikację. Oczywiście poruszamy się w metodologiach Agile i rzadkością są uszczegółowione specyfikacje dostarczane przez klientów.

Ta wypowiedź daje do zrozumienia, że w software house'ie gwiazdami są nie tylko programiści, ale cały sztab osób odpowiedzialnych za dostosowanie produktu do życzeń klienta. Równie ważna jest również komunikacja ze zleceniodawcą, gdzie spoczywa odpowiedzialność za tę działkę na project managerach. Kim jest jednak product manager i skąd ów podział na "technicznych" oraz "nietechnicznych project managerów"?

Jak dalej wyjaśnił nam Łukasz Hostyński, techniczni project managerowie to osoby, które wyewoluowały z senior developerów, czyli osób, które wcześniej zajmowały się tworzeniem oprogramowania, jednak rozwój ich kompetencji spowodował, że równie świetnie sprawdziliby się w rolach managerskich. Doskonale wiedzą jak wygląda proces tworzenia oprogramowania i czuwają nad tym, by jego wysoka jakość została zachowana. "Nietechniczni" project managerowie, zwani w zespole Customer Success Manager, zajmują się relacjami z klientem, ustalaniem spotkań, ewaluacją postępów w trakcie tworzenia projektu oraz szeroko pojętym marketingiem. Ci właściwie są odpowiedzialni za zarządzanie przedsięwzięciem absolutnie od strony organizacyjnej.

Efekty? Concise Software, mimo że jest "kameralnym" software house'em (cała firma liczy sobie 50 osób - zarówno w Rzeszowie jak i Berlinie), to może się pochwalić współpracą z naprawdę ciekawymi firmami.W portfolio Concise Software można znaleźć Red Bulla, Ubitricity, Panasonica, Forda, JLR i sporo innych firm, o których wspomnieć niestety nie możemy. W ciągu 11 lat działalności firmy na rynku wypracowała sobie wysoką pozycję nie tylko w tworzeniu oprogramowania, ale również w zakresie IoT oraz automotive. W szeregach Concise Software wspominany przez nas wcześniej Krzysztof Sowa, jeden z ekspertów w zakresie Android Auto w Polsce.

Kim jest programista? Okazuje się, że stereotyp "piwniczniaka" upada i zastępuje go obraz wyluzowanego, ciągle rozwijającego się człowieka

Krzysztof Kozyra - Senior Software Developer i Tech Project Manager w Concise Software, który na co dzień pracuje z programistami wyjaśnił nam, że obraz typowego programisty to już nie ten, który koresponduje z chętnie powielanym stereotypem "chłopaczków w powyciąganych swetrach". Na pewno nie wyglądają oni tak:

Ile jest zespołów ludzkich cech, tyle jest programistów. Nie można generalizować, że programista to nie jest taki "zaspany chłopak w piwnicy i w koszuli w kratę", bo sama branża wymaga od nas tego, by być otwartym na świat - brać udział w konferencjach, poznawać nowe rozwiązania. To zdecydowanie kłóci się ze stereotypem człowieka, który całe życie siedzi przy klawiaturze - niemniej jednak z takimi ludźmi też mam do czynienia, ale wszystko zależy od ludzkiej osobowości. Zdecydowanie nie ma co generalizować.

Czyli owszem - znajdą się programiści, którzy są tak mocno zafiksowani na punkcie swojej pracy, że nie widzą poza nią świata. Dlaczego tego typu cechy przekłada się na całą grupę społeczną? Jako badacz społeczny z wykształcenia mogę wysnuć diagnozę, wedle której najbardziej jaskrawe zespoły cech chętnie poddaje się generalizacji. Jednak taki wizerunek programisty szybko upada - właściwie już po przekroczeniu progów software house'u uderzyło mnie to, że jeden z twórców oprogramowania jeździł między biurkami na desce, inny bawił się piłką. Ktoś nie ma weny? Idzie pograć na konsoli, żeby nieco ochłonąć i nabrać ochoty na dalsze rozwijanie projektu.

Na pewno jest wesoło - utrzymujemy atmosferę luźną, ale może nie "super-wyluzowaną", bo gdzieś należy ustalić jakąś granicę. Dla nas ważne jest to, aby zrobić dokładnie to, czego od nas wymaga klient. Nie robimy jednak rzeczy, które wpływałyby negatywnie na atmosferę w pracy - nie siedzimy po nocach, nie pracujemy w soboty, niedziele. Staramy się tak organizować naszą pracę, żeby unikać takich sytuacji, nawet gdy współpracujemy z klientami w strefach czasowych oddalonych o 8 godzin od CET. Unikamy wypalania pracowników, którego destrukcyjne efekty wszyscy znamy - zdarzą się prędzej niż później.

~Łukasz Hostyński, CEO Concise Software

W software house'ie, w którym tworzy się poważne rzeczy nie pracuje się jak w kołchozie. Rzeczywiście, robi się w nich odpowiedzialne projekty i stawka jest najczęściej bardzo wysoka. Oprócz wynagrodzenia, które idzie wraz z pomyślnym wykonaniem projektu (i późniejszym jego rozwijaniem, oferowaniem wsparcia technicznego), myśli się również o dobrej opinii. Dlatego, według CEO Concise Software klient niezadowolony to "ogromna tragedia", której należy za wszelką cenę uniknąć. Dobra atmosfera w biurze jest ważna, ale nie może być w tym również przesady. Każdy pracownik doskonale zdaje sobie sprawę z tego, jakie ma obowiązki i zwyczajnie musi się z tym liczyć. Nie oznacza to jednak, że w godzinach pracy jest przykuty do biurka - na porządku dziennym są żarty, rozgrywanie turniejów w FIFĘ, gra w rzutki, czy wspomniana wyżej jazda na desce.

Pomyli się jednak ten, który nazwie nowoczesny software house tylko "dobrą zabawą". Programiści oprócz tego cały czas muszą się rozwijać, bo tego wymaga rynek


Marek Wrzosowski, iOS Software Engineering Manager
w Concise Software powiedział nam o tym, jak ważny jest rozwój każdego z pracowników software house'u. Według niego, ten jest wręcz niezbędny do tego, aby odczuwać przyjemność z pracy:

Praca w software house'ie to praca idealna, ale dla człowieka, który cały czas ma chęci na to, aby się rozwijać. Kto nie ma szerokich horyzontów w tej branży skazuje się na stagnację: robisz to, co musisz i nie masz przyjemności ze swojej pracy. Ja osobiście mam i tego również wymagam od osób, którymi zarządzam.

Mój rozmówca podparł to tym, iż nowe technologie ciągle się rozwijają i bez ciągłego głodu wiedzy nie da się być na bieżąco z tym, co dzieje się w branży. Jeszcze 10 lat temu nie myśleliśmy przecież o idei urządzeń połączonych, szybkim rozwoju branży automotive. Apple oraz Google wydały i w dalszym ciągu wydają mnóstwo narzędzi dla deweloperów, których chcąc lub nie trzeba się nauczyć, aby spełnić oczekiwania coraz bardziej wymagających klientów. W software house'ach nie ma miejsca na wspomnianą przez Marka Wrzosowskiego stagnację.

Czyli jak to jest? Uczestnictwo w zespole software house'u to praca marzeń?

Jak wynika z moich rozmów z pracownikami - tych zapisanych w formie plików audio i nie nagranych, są oni zadowoleni z tego, co robią. Nie przesądzają o tym jedynie zarobki, które są niemałe w porównaniu do innych zawodów popularnych nie tylko w Rzeszowie, ale i w całej Polsce. Liczy się również kultura pracy w takich zespołach, gdzie liczy się nie tylko "dowiezienie projektu", ale także utrzymanie pracownika, bo rotacja jest całkiem spora, a konkurencja jeszcze większa. Wdrażanie nowych pracowników do istniejących już projektów wymaga sporo czasu, znalezienie tego najbardziej odpowiedniego to również koszt, który należy uwzględniać za każdym razem, gdy wspomina się o rotacji.

Sam miałem okazję przekonać się, jak to jest spędzić kilka godzin w takim miejscu. Mogłem podejrzeć programistów w trakcie właściwej pracy, ale i znalazł się czas na rozegranie kilku meczów na konsoli, wypicie kawy, czy luźne pogawędki.

Dla mnie liczy się coś innego. Udało mi się znaleźć dowód na to, że stereotyp programisty jest bardzo nieaktualny

Stereotypy są krzywdzące i z reguły nie wyczerpują zespołu cech danych zjawisk, czy grup osób. To sprawdza się i teraz, gdy piszę ten tekst. Owszem, jestem świadomy tego, iż istnieją miejsca, w których praca wygląda zupełnie inaczej i nie ma mowy o takiej swobodzie jak w opisywanym przeze mnie software house'ie. Jestem jednak fanem luźnej atmosfery w pracy i kreatywnego podejścia do pracownika z zachowaniem pewnego poziomu powagi - tak, aby nie zatracić ważnego we wszystkim, co się robi profesjonalizmu.

Dlatego bardzo cieszę się z przeprowadzonych wywiadów, zgromadzonego materiału i zdobytego - zupełnie nowego dla mnie doświadczenia. W trakcie kilku godzin w software house'ie spotkałem naprawdę sporo ciekawych osób, które nie tylko tworzą oprogramowanie, ale zajmują się też edukowaniem innych praktyków w tej branży. Udało mi się rozegrać dwa mecze w FIFĘ, z czego jeden przegrałem wysoko, bo 3:1. Ale pierwszy poszedł mi naprawdę dobrze - 4:2 grając składem Arsenalu z 2015 roku to już całkiem niezłe osiągnięcie, a przeciwnik był naprawdę wymagający. Pozwolę sobie jednak wtrącić, że dużo lepiej mi wychodzi gra na padzie od Xboksa One - wybaczcie. ;)

Drodzy programiści i pracownicy software house'ów - życzę Wam wszystkiego najlepszego. Bez Was świat nowych technologii nie mógłby istnieć, a my zwyczajnie nie mielibyśmy o czym pisać. Wszystkim bez wyjątku życzę samych sukcesów i jak najmniej płaczu podczas commitowania!

Serdecznie dziękuję Łukaszowi Hostyńskiemu oraz całemu zespołowi Concise Software za możliwość stworzenia tego materiału i wyrozumiałość, gdy zwyczajnie przeszkadzałem developerom w trakcie pracy.

Hej, jesteśmy na Google News - Obserwuj to, co ważne w techu