Korpo, startup czy software house najlepszy dla programisty?
Każdy ma inne preferencje, szczególnie jeśli chodzi o pracę. Jakie zatem rodzaje projektów i firmy możemy wybrać, biorąc pod uwagę sytuację życiową, styl swojej pracy i upodobania? Jakie są plusy i minusy danych typów organizacji?
Wiele osób przed zmianą pracy zastanawia się nad tym, czy dokona dobrego wyboru, a jest on aktualnie bardzo szeroki różnorodny i można się pogubić. Korpo? Nie… “ołpenspejs” i bieganie do “haerów”. To może startup? Nie… deploy w piątek i brak testów. Do tego dochodzi analiza zarobków, ilość pracy, atmosfera w teamie, technologie, rodzaje produktów i projektów.
Przedstawię charakterystykę pracy na stanowisku programisty, w zależności od miejsca, w którym pracuje (można brać pod uwagę również inne powiązane stanowiska, takie jak QA, analitycy, DevOps, PM etc.). Gdy jeszcze zastanawiasz się nad tym, jaki rodzaj firmy wybrać, zachęcam do przeczytania poniższej próby podsumowania plusów i minusów wszystkich opcji, które przyszły mi do głowy.
Firma produktowa / Startup
Czyli praca bezpośrednio nad produktem - od zera. Taki rodzaj współpracy można podjąć zarówno w software housie, który posiada swoje produkty, jak i firmie, która zajmuje się tylko tym jednym projektem. Charakterystyczne są w tym przypadku struktury teamów. Zazwyczaj jest zespół deweloperów z team leaderem na czele, a do tego testerzy, project manager, UX/UI designer, grafik, nierzadko też product owner i scrum master.
Jakie są plusy dołączenia do takiej organizacji?
- Satysfakcja z kolejnych faz rozwoju produktu i zdobywania jego popularności (jeśli to udany projekt) - czujesz, że bierzesz udział w czymś wielkim i sytuacja jest dynamiczna (włącznie z wieloma zawodami, niestety).
- Branie udziału w dość dynamicznym rozwoju firmy, doświadczenie różnych jego faz i różnorodnych sposobów zarządzania.
- Dzięki rozwojowi firmy można uzyskać większe szanse własnego rozwoju i szybkiego awansu - czasem można szybko przeskoczyć kilka szczebelków w karierze.
- Szkoła życia dla juniorów, którzy prędko stają się midami lub seniorami.
No dobra, a teraz minusy:
- Brak możliwości zmiany projektu.
- Produkt, gdy jest gotowy, często przechodzi w fazę maintanance i wtedy następują cięcia personalne.
- Raczej brak perspektyw na zmianę technologii.
- Duże teamy, co może powodować chaos komunikacyjny i projektowy.
- Często szybkie przejście ze startupu w zarabiającą na siebie firmę, a szybki przyrost może również powodować chaos w komunikacji i różnych ważnych procesach.
- Istnieje ryzyko cięcia środków z dofinansowania projektu.
Praca w software housie
Czyli tworzenie na zamówienie aplikacji, które najczęściej tworzone są od początku i w gotowej postaci przekazywane klientowi. Projekty trwają zazwyczaj około 6-12 miesięcy. Praca nad projektem polega na dokładnym zebraniu wymagań od klienta, co zwykle robi project manager lub ktoś na podobnym stanowisku. Na tej podstawie tworzone są kolejne etapy tworzenia aplikacji.
W kwestii zespołu jest to współpraca z teamem klienta lub pełnym wewnętrznym teamem, czyli deweloperami, QA, UX/UI designerami, devopsami. Jest to zatem opcja dla kogoś, kto niekoniecznie chce mieć kontakt z klientem. Gdy dołączamy do danej firmy, warto dowiedzieć się, czy będzie opcja kontynuowania współpracy w danej technologii po zakończeniu projektu, czy też okaże się to kilkumiesięcznym zatrudnieniem. Często software house’y specjalizują się w tylko jednej, dwóch technologiach.
Plusy:
- Nierzadko stosowany scrum, co sprawia, że projekt jest bardzo dobrze zarządzany, nie ma niespodzianek i chaosu (choć to oczywiście zależy od wielu czynników).
- Małe, często bardzo dobrze zgrane teamy.
- Benefity, integracja zespołu, nierzadko bardzo atrakcyjne biura w dobrych lokalizacjach.
- Coraz częściej opcja pracy częściowo lub w 100% zdalnej.
- Elastyczne godziny pracy zdarzają się rzadziej, ale często ustalone są tzw. core hours od 10:00-14:00, kiedy to po prostu musisz pojawiać się na co dzień w biurze.
- Nowe projekty to często również nowe technologie, których zespół ma okazję się nauczyć.
- Dobra opcja dla dewelopera na każdym poziomie umiejętności.
- Bardzo często przyjazna, nieformalna atmosfera i płaska struktura organizacyjna.
- Ze względu na dokładny plan projektu - raczej mało niespodzianek typu deploy w piątek.
- Niektóre software house’y umożliwiają zmianę stanowiska np. z testera na dewelopera lub project managera i inne, choć to zależy od wielkości firmy.
Minusy:
- Możliwa praca w kilku projektach naraz lub częste przeskakiwanie pomiędzy nimi.
- Rzadki lub całkowity brak kontaktu z klientem/biznesem, chyba że nie ma stanowiska project managera lub pochodnego.
- Często nieuporządkowana kwestia ścieżek kariery, awansów i wszelkich procedur, co w sumie może mieć swoje plusy i minusy.
- Trzeba dobrze zainteresować się wyglądem biura i tym, ile osób pracuje w jednym pokoju (może brakować miejsca dla siebie/intymnego, np. na wideo rozmowę z klientem).
- Czasem sztywne podejście do metodologii zarządzania, czyli np. stosujemy czysty scrum i nie chcemy słyszeć o tym, że to nie działa.
Body leasing
Czyli tak zwany okresowy najem (sprzedaż) własnych usług, bezpośrednio u klienta lub przez pośrednika, który może być również portalem internetowym.
Plusy:
- Często możliwość pracy part-time.
- Wysokie stawki wynagrodzenia (zwykle nałożona jest stosunkowo mała marża za pośrednictwo).
- Nie martwisz się o zdobycie zlecenia.
- Możesz rozwijać swoje umiejętności miękkie, dzięki kontaktowi z różnymi osobami w firmach, nierzadko z CTO, product managerami i innymi działami biznesowymi.
- Nie martwisz się papierologią, a na pewno mniej niż freelancer i nie bierzesz też całej odpowiedzialności za współpracę na siebie.
- Z reguły brak zakazu konkurencji.
Minusy:
- Dłuższe przestoje w i pomiędzy projektami.
- Nie wiesz, na co trafisz, różni klienci, zlecenia, jakość projektów i użytych technologii.
- Brak stałego teamu (chyba, że to dłuższy projekt), a często wręcz samodzielna praca nad przysługującą częścią projektu, co grozi “zasiedzeniem” i brakiem rozwoju.
- Brak płatnych urlopów i innych benefitów.
- Rodzaj pracy raczej nie jest przystosowany dla programistów na początku kariery.
- Współpraca nie jest najczęściej związana z bardzo długim okresem wypowiedzenia, co ma swoje plusy i minusy.
- Szkolenie i pozostawanie na bieżąco z technologiami we własnym zakresie.
Freelancing
Jednoosobowa działalność gospodarcza, gdzie deweloper opiera współpracę z klientem lub klientami na umowie zlecenie, o dzieło lub B2B.
Plusy:
- Praca zdalna 100% lub pojedyncze dojazdy do klientów.
- Nie wyrabiasz “dupogodzin”.
- Zdobywasz bezcenne doświadczenie jako księgowy/a, prawnik i CEO swojej własnej firmy.
- Możesz pracować na część albo cały etat lub najczęściej zadaniowo, jesteś królem lub królową własnego czasu.
- Masz duży wpływ na negocjacje warunków współpracy.
- Nierzadko zarabiasz dużo więcej niż koledzy na etatach.
- To forma współpracy skierowana również dla osób rozpoczynających swoją przygodę z programowaniem. Rodzaj zleceń, np. proste strony internetowe, to opcja płynnego wejścia do branży IT i wypróbowania siebie, czasem bez przymusu drastycznej zmiany życia.
Minusy:
- Bierzesz pełną odpowiedzialność za projekt (ale to stąd wynika też punkt o dobrym wynagrodzeniu).
- Raczej nie otrzymasz propozycji realizacji dużego, długoterminowego projektu.
- Nie masz kumpli :(
- Rozwój i pozostawanie na bieżąco z branżą i technologiami we własnym zakresie.
Korporacja
Nie ma chyba programisty, który nie słyszałby tego terminu, ale jak odróżnić korporację od innych firm? Z pewnością znaczenie ma wielkość (przyjmijmy, że jest to powyżej 100 pracowników), ale i struktura hierarchiczna, dość sztywne standardy pracy, wysoko rozwinięte procesy, które muszą zostać wprowadzone przy przekroczeniu danej ilości osób. Co ważne, wspomnianych procedur nie da się przeskoczyć. Są stosowane niezależnie od sytuacji, stąd są bardzo sztywne i często nieżyciowe. Korporacje mają już zazwyczaj swoje oddziały na terenie jednego lub kilku krajów.
Plusy:
- Duże lub nawet bardzo duże zespoły, czyli intensywna nauka pracy zespołowej.
- Większe możliwości zmiany technologii.
- Większe możliwości zmiany teamu, również awans poziomy lub zmiany między działami.
- Jasne ścieżki kariery, szkolenia, budżety.
- Z reguły bardzo dobre środowisko dla osób rozpoczynających swoją przygodę z programowaniem.
- Arcyciekawe, nowoczesne projekty lub wręcz odwrotnie - bardzo nudne projekty, w których praca ogranicza się do trybu utrzymywania aplikacji.
- Często możliwość pracy na umowie o pracę, jednak inne formy mogą nie wchodzić w grę (np. B2B).
- Duża stabilizacja, zarówno rynkowa firmy, jak i odnośnie współpracy na danym stanowisku.
Minusy:
- Nie bierzesz takiej odpowiedzialności za projekt i swoją pracę (brak poczucia sprawczości), co ma swoje plusy i minusy. Zależy od wysokości obejmowanego stanowiska.
- Sztywne podejście do awansów, podwyżek, urlopów i inne procedury, które są równe dla wszystkich i często ograniczające/niedopasowane do różnych sytuacji.
- Zdarzają się “dupogodziny” i brak elastycznego czasu pracy.
- Można dostać szału przez przeciąganie decyzji i samych procesów, związanych z kodowaniem (np. sztucznie wydłużona faza testów).
- Duża rotacja wśród teamu. Koledzy przychodzą i odchodzą, a co zdolniejsi pną się szczebelek wyżej i zostają Twoimi kierownikami.
- Stajesz się częścią tłumu.
Podsumowanie
Opisałam czyste formy danej współpracy, które spotykane są często, ale jak wiadomo, mogą się one mieszać. Np. korpo proponujące współpracę B2B i elastyczne godziny pracy. Wybór jest różnorodny. Warto przed wejściem we współpracę z daną firmą przemyśleć, czy jest to środowisko, w którym będziemy się dobrze czuć, czy rodzaj projektów odpowiada naszemu charakterowi oraz na jakim etapie kariery jesteśmy.
Możesz się posłużyć tymi opisami i zadać odpowiednie pytania przy rozmowie kwalifikacyjnej (najlepiej już na początku). Np. czy będziesz pracować nad jednym projektem na raz lub, czy jest możliwość zmiany technologii. Jeśli lubimy być panami swojego czasu i brać odpowiedzialność, zacznijmy od freelancingu, a po takiej szkole życia możemy trafić na moment, w którym korpo będzie równie idealną opcją. Będę zadowolona, jeśli ten tekst pozwoli choć w najmniejszym stopniu dokonać Ci satysfakcjonującej decyzji lub po prostu skłoni do przemyśleń.