Programista, UX, grafik, szef i cała reszta. Czyli jak naprawdę wygląda życie w software house
Piątek to chyba dobry moment, żeby na chwilę odłożyć architekturę systemów, API, deploymenty, makiety, deadline'y i pytanie „czy możemy to zrobić jeszcze dzisiaj?” i spojrzeć na branżę IT trochę z przymrużeniem oka.
Bo software house to nie jest miejsce, w którym rano do biura wchodzi dziesięciu programistów, wszyscy otwierają laptopy, a wieczorem wychodzi gotowy system.
No dobrze. Czasami rzeczywiście tak to wygląda... Ale tylko na pierwszy rzut oka.
W rzeczywistości dobry projekt powstaje dzięki ludziom o bardzo różnych kompetencjach. Programista buduje rozwiązanie. UX zastanawia się, czy człowiek w ogóle będzie wiedział, co z nim zrobić. UI pilnuje, żeby nie wyglądało jak panel administracyjny z 2008 roku. Marketing zastanawia się, jak o tym powiedzieć. Osoba od treści próbuje wyjaśnić to wszystko normalnym językiem. Ktoś pilnuje klientów, terminów, faktur i organizacji. A ktoś jeszcze musi pamiętać, że skończył się papier w drukarce.
I właśnie dlatego zespoły technologiczne są takie ciekawe.
Programista - czyli człowiek, który potrafi rozmawiać z komputerem
Programista może przyjść do pracy w markowej bluzie, dobrej koszulce, świetnych sneakersach i perfumach, których cena sprawia, że ktoś z działu administracji zaczyna się zastanawiać, czy przypadkiem nie pracujemy dla luksusowej marki. Może mieć przy sobie najnowszy gadżet, słuchawki za pół pensji i laptopa, którego specyfikacja wygląda jak instrukcja obsługi elektrowni. Na śniadanie? Nie tylko kanapka z masłem i dżemem. Może być jogurt, dobre pieczywo, coś z awokado, kawa speciality albo lunch przygotowany z większą starannością niż niejeden firmowy projekt.
A potem istnieje drugi typ.
Bluza. Słuchawki. Cisza. Najlepiej praca zdalna. Najlepiej bez kamerki. Po pracy komputer zostaje włączony, bo przecież trzeba jeszcze „chwilę pograć”. Ta chwila kończy się około 4:00 rano.
Oczywiście są też wszystkie odmiany pomiędzy - i to jest właśnie najlepsze.
Programista nie musi wyglądać jak stereotypowy programista. Tak samo jak programowanie nie polega już wyłącznie na siedzeniu nad kodem przez osiem godzin.
Dobry developer musi rozumieć problem, dla którego coś buduje. Musi umieć rozmawiać z innymi specjalistami, rozumieć ograniczenia projektu, przewidywać konsekwencje decyzji technicznych i czasami powiedzieć: „Nie, tego nie róbmy w ten sposób, bo za pół roku będziemy tego żałować”.
I wtedy zaczyna się prawdziwa praca zespołowa.
UX/UI - czyli dlaczego ten przycisk jest właśnie tutaj
UX to nie jest wybieranie ładnego koloru przycisku.
UI to również nie jest „zróbmy coś nowoczesnego”.
Projektowanie cyfrowego produktu wymaga zrozumienia użytkownika, jego celu, ograniczeń, sposobu podejmowania decyzji, przyzwyczajeń, kontekstu i tego, co może go zatrzymać.
Dlatego projektant nie może patrzeć wyłącznie na ekran. Musi patrzeć na człowieka. A projektant, który rozumie także technologię, ma jeszcze jedną ogromną przewagę. Wie, co naprawdę można zrobić. Nie musi pisać kodu. Ale dobrze, jeśli rozumie, jak kod działa. Wie, czym różni się frontend od backendu. Wie, czym jest API. Rozumie ograniczenia responsywności, dane, integracje, formularze, stany błędów, walidację, wydajność czy kwestie techniczne wpływające na interfejs.
Bo projektowanie pięknego ekranu, którego nie da się sensownie wdrożyć, jest trochę jak projektowanie samochodu, który świetnie wygląda, ale nie ma miejsca na silnik. Można. Tylko po co?
W moim przypadku właśnie ten miks jest podstawą pracy od lat. Grafika, UX, UI, komunikacja wizualna, psychologia komunikacji, marketing, treść, a do tego wiedza programistyczna i rozumienie technologii. Nie po to, żeby być jednocześnie najlepszym programistą na świecie. Po to, żeby wiedzieć, jak te wszystkie elementy muszą się ze sobą połączyć, żeby produkt miał sens.
Bo dobry projekt nie zaczyna się od pytania „jak to narysować?”.
Zaczyna się od pytania „co człowiek ma tutaj zrobić i dlaczego?”.
Grafik - człowiek od tego, żeby wszystko nie wyglądało przypadkiem
Grafik często dostaje bardzo konkretne zadanie: „Zrób coś fajnego”.
I wtedy zaczyna się zabawa.
Bo „fajne” może oznaczać wszystko...
Minimalistyczne.
Eleganckie.
Technologiczne.
Odważne.
Premium.
Nowoczesne.
Albo „takie jak u konkurencji, tylko lepsze”.
Dobry grafik nie tylko robi obrazki. Musi rozumieć markę, komunikację, typografię, hierarchię informacji, proporcje, kontrast, odbiorcę i kontekst. A jeśli pracuje przy produktach cyfrowych, powinien również rozumieć UX. Bo grafika może być piękna i jednocześnie kompletnie nieprzydatna. I tutaj dochodzimy do bardzo ważnej rzeczy... W software house nie ma jednej osoby od „ładnych rzeczy”.
Projektant, programista, marketingowiec i osoba od treści muszą się ze sobą dogadać.
Dopiero wtedy powstaje produkt, który nie tylko działa, ale również jest zrozumiały, spójny i przekonujący.
Marketingowiec - ten, który ciągle pyta: „A jak to sprzedamy?”
Marketingowiec ma szczególną supermoc.
Potrafi zobaczyć gotowy produkt i zapytać: „Super. Ale dlaczego klient ma tego chcieć?” - I to jest bardzo dobre pytanie.
Bo technologia sama w sobie rzadko jest argumentem sprzedażowym.
Klient nie kupuje API.
Nie kupuje frameworka.
Nie kupuje pięknej architektury bazy danych.
Kupuje rozwiązanie swojego problemu.
Dlatego marketing musi umieć przełożyć język technologii na język korzyści. A później jeszcze znaleźć sposób, żeby ktoś w ogóle chciał ten komunikat przeczytać.
Osoba od treści - czyli tłumacz z technologicznego na ludzki
„System wykorzystuje skalowalną architekturę mikroserwisową z komunikacją asynchroniczną...” - Brzmi dobrze. Ale czy klient wie, co z tego ma?
Czasami największą wartością osoby od treści jest powiedzenie: „Dobrze. A teraz napiszmy to tak, żeby człowiek zrozumiał”.
Bo można być świetnym technologiem i jednocześnie nie umieć wyjaśnić swojej pracy komuś spoza branży.
A przecież użytkownik nie powinien potrzebować doktoratu z informatyki, żeby kupić produkt, założyć konto albo wykonać prostą czynność.
Asystentka - człowiek, który wie wszystko
To jest stanowisko, którego nie da się odpowiednio docenić w jednym akapicie.
Asystentka wie, co trzeba zamówić.
Wie, czego nie zamówiono.
Wie, która faktura czeka.
Wie, kto miał coś zrobić.
Wie, kto nie zrobił.
Wie, kiedy przypomnieć.
Wie, gdzie jest dokument.
Wie, że ktoś miał zadzwonić.
I prawdopodobnie jako pierwsza zauważy, że w kuchni kończy się kawa.
To często osoba, dzięki której reszta zespołu może zajmować się swoją pracą, zamiast zastanawiać się, kto właściwie miał zamówić papier, odebrać przesyłkę albo dopilnować dokumentów.
Szef - czyli człowiek od decyzji, których nikt inny nie chce podjąć
Szef może pojawić się trochę później.
Ma swoje biuro.
Dużo rozmawia przez telefon.
Ceni wygodę, ale raczej nie przychodzi w piżamie.
Jeździ na spotkania.
Czasami sam.
Czasami zabiera osobę kreatywną.
Czasami CEO programistów.
Czasami wszystkich naraz, bo klient ma bardzo dużo pytań.
Szef musi słuchać.
Musi negocjować.
Musi pilnować pieniędzy, ludzi, klientów i kierunku firmy.
A czasami po prostu musi powiedzieć: „Dobra. Robimy tak”. Bo nawet najbardziej demokratyczny zespół w pewnym momencie potrzebuje kogoś, kto bierze odpowiedzialność za ostateczną decyzję.
I właśnie wtedy wychodzi na jaw, że prowadzenie firmy technologicznej to zdecydowanie więcej niż technologia.
A potem wszyscy spotykają się przy jednym projekcie
I nagle okazuje się, że każdy ma rację.
Programista mówi: „Tego nie da się zrobić tak, jak jest na projekcie”.
UX odpowiada: „Ale użytkownik musi przejść tę ścieżkę”.
Marketing mówi: „Klient tego nie zrozumie”.
Grafik mówi: „Przecież to się tutaj kompletnie nie mieści”.
Osoba od treści mówi: „Ale przecież nie możemy napisać tego w ten sposób”.
Szef pyta: „Ile to będzie kosztować?”
A asystentka z drugiego końca biura: „Czy ktoś w końcu podpisał tę fakturę?”
I właśnie z tego powstaje produkt.
Nie z samego kodu. Nie z samej grafiki. Nie z samego UX. Nie z marketingu - z połączenia kompetencji.
Współczesny software house to zespół interdyscyplinarny. W zależności od projektu mogą pojawić się developerzy, UX/UI, QA, PM, analitycy, DevOps, marketing, content czy osoby odpowiedzialne za biznes. Role mogą być rozdzielone albo łączone, szczególnie w mniejszych zespołach.
I właśnie dlatego dobra współpraca między tymi osobami jest tak ważna.
Bo programista może stworzyć świetnie działający system.
Projektant może stworzyć świetny interfejs.
Marketingowiec może przygotować świetną kampanię.
Copywriter może napisać świetny tekst.
Ale dopiero razem mogą stworzyć produkt, którego ktoś naprawdę będzie chciał używać.
A po dwudziestu latach pracy w tym świecie jedno wiem na pewno: branża technologiczna jest pełna skrajności.
Są programiści w bluzach i programiści w koszulkach za pół pensji.
Są osoby, które kochają biuro, i takie, które najchętniej nigdy nie opuszczałyby własnego mieszkania.
Są perfekcjoniści od pikseli i ludzie, którzy mówią „przesuń o dwa piksele, będzie dobrze”.
Są szefowie, którzy kochają tabelki, i tacy, którzy wolą telefon.
Są UX-owcy, którzy zaczynają od badań, i tacy, którzy najpierw otwierają Figmę, lub tacy, co po prostu wiedzą.
Są programiści, którzy potrafią godzinami rozmawiać o architekturze. I tacy, którzy chcą tylko spokojnie skończyć ticket.
I chyba właśnie to jest w tej branży najlepsze - nie musimy być tacy sami.
Musimy tylko umieć razem dowieźć coś, co działa.
A jeśli przy okazji ktoś przyniesie dobrą kawę, nowe sneakersy albo wyjątkowo dobre kanapki - tym lepiej.



