Build in public · Zapis

Czternaście miesięcy,
cztery prace, jedna aplikacja
i wciąż brak pracy w IT.

Pełna oś czasu, miesiąc po miesiącu, z prawdziwymi datami i prawdziwymi liczbami. Łącznie z miesiącami, w których nic nie wyszło, i z tą częścią, gdzie mówię wprost, co to wszystko dało, a czego nie.

Marcin Firmuga·2026-08-24·~14 min czytania

Mam 22 lata, mieszkam w Radomiu i jeżdżę taksówką po dziesięć, dwanaście godzin dziennie. Wieczorami piszę oprogramowanie. Robię to od czternastu miesięcy bez ani jednego wolnego tygodnia i nigdy nie dostałem za to złotówki.

To jest uczciwa pozycja wyjściowa i celowo stawiam ją w pierwszym akapicie, bo większość takich tekstów zaczyna się od wyniku i cofa do początku. Tutaj nie ma jeszcze wyniku. Jest zapis.

Poniżej jest ten zapis: każdy miesiąc, co działo się w życiu obok tego, co działo się w kodzie, z datami, które można sprawdzić w publicznym repozytorium i publicznym changelogu. Piszę to, bo trzy lata temu szukałem dokładnie czegoś takiego i nie znalazłem. Każda relacja, na którą trafiałem, kończyła się albo ofertą pracy, przez co była opowieścią o szczęściu, albo rezygnacją, przez co była ostrzeżeniem. Prawie nikt nie publikuje środka, a środek jest miejscem, w którym większość ludzi faktycznie się znajduje.

Jedna zasada tej strony. Każda liczba tutaj została odczytana ze źródła albo z analityki w dniu publikacji, nie z pamięci. Tam, gdzie czegoś nie wiem, jest to napisane wprost. Zdarzyło mi się już publicznie pomylić z pamięci, trzy razy w sprawie tego samego API, i wolę, żeby ta strona dała się sprawdzić, niż żeby robiła wrażenie.
Na tej stronie
  1. Zanim cokolwiek się zaczęło: dwanaście martwych projektów
  2. Czternaście miesięcy, miesiąc po miesiącu
  3. Ile to naprawdę kosztowało
  4. Co zadziałało, a co nie
  5. Gdzie to jest teraz i czego chcę

Zanim cokolwiek się zaczęło: dwanaście martwych projektów

Mój tata umarł, zanim byłem dorosły. Nie załamałem się w tamtym tygodniu. Załamywałem się powoli przez następne dwa albo trzy lata i to jest ta część, przed którą nikt nie ostrzega, bo nie ma momentu, w który da się wskazać palcem i powiedzieć: tutaj.

Potem był pogrzeb, który przyszedł za wcześnie, i życie, które musiało ruszyć szybciej, niż byłem gotowy. Trzy lata w Wojskach Obrony Terytorialnej, od młodego wieku. Technikum, INF.02 na papierze i niewiele za tym. Taksówka. Magazyn. Cokolwiek, co płaciło.

Gdzieś w tym wszystkim zacząłem i porzuciłem dwanaście projektów. Tłumaczenia gier, małe narzędzia, skrypty, o które nikt nie prosił. Ciekawe jest miejsce, w którym umierały. Nie na starcie, kiedy jest trudno i nudno. Wszystkie umarły gdzieś między siedemdziesiątym a osiemdziesiątym piątym procentem, w tej wygodnej strefie, w której coś działa na Twojej maszynie, a myśl o pokazaniu tego drugiemu człowiekowi wydaje się niemożliwa.

Każdy zaczynał się od energii i kończył, kiedy energia się kończyła, bo dyscypliny nie było jeszcze na tyle, żeby ją zastąpiła.

Trzynasty jest tym z tej strony. I chcę być dokładny co do tego, dlaczego przeżył, bo każda historia indie, jaką czytałem, zaczyna się od pasji, a moja nie.

Nie miałem pasji. Byłem zdesperowany. PC Workman nie był projektem z pasji, był kotwicą psychiczną: jedyną rzeczą, którą mogłem kontrolować, kiedy wszystko inne się sypało. Zbuduj coś. Zacommituj coś. Zobacz, jak pasek postępu się przesuwa. Poczuj, że nadal istniejesz. To nie jest motywacyjny plakat, tylko opis tego, czym to było.

Czternaście miesięcy, miesiąc po miesiącu

Czerwone kropki to miesiące, w których prowadziła praca albo życie. Zielone to te, w których prowadził kod.

Wiosna 2025 · Venlo, Holandia
Gaśnięcie, czyli część, której się nie spodziewałem

Przeprowadziłem się z Polski do Holandii do pracy w magazynie. Order picker. Piętnaście do dwudziestu kilometrów chodzenia na zmianę, a jednego dnia telefon pokazał 23 847 kroków. Umowa przez agencję, mieszkanie od agencji, transport od agencji. Przez dziewięć miesięcy oznaczało to cztery różne prace i siedem różnych miejsc do spania.

To nie praca prawie mnie wykończyła. Ciężka praca nikogo nie łamie. Łamie trwała tymczasowość, a robi to bardzo konkretnie: w pierwszym miesiącu jesteś optymistą i zaczniesz kodzić w przyszłym tygodniu. W trzecim wracasz o szóstej, siadasz na łóżku i patrzysz w ścianę przez dwadzieścia minut, a potem scrollujesz do ósmej. W piątym przestałeś otwierać GitHuba i zacząłeś myśleć, że może to po prostu dorosłość, może ambicja była naiwna.

Nie walczyłem ze zmęczeniem. Walczyłem z przyzwyczajeniem. Ambicja nie znika, ona przygasa, tak jak bateria degraduje się na tyle stopniowo, że zauważasz dopiero przy sześćdziesięciu procentach.

Prawdziwym zagrożeniem nigdy nie była bieda ani zmęczenie. Było nim to, że zacząłem się z tym godzić.
Czerwiec i lipiec 2025 · trzynasty projekt
Laptop na 77 stopniach, zanim otworzę edytor

Zaczynam pisać wieczorami monitor systemu na laptopie z 2014 roku, który po dwóch minutach od włączenia dochodzi do 77 stopni, zanim jeszcze otworzę VS Code, ze świeżą pastą termoprzewodzącą. Do 94 dochodzi, kiedy każę mu myśleć poważnie, i robi to nieprzerwanie od czternastu miesięcy.

Pomysł nie jest skomplikowany. Nie mów mi, że procesor jest na 87 procentach. Powiedz mi, że Chrome bierze z tego 43, Discord 22, a w tle chodzi aktualizacja Windows, o której zapomniałem. Różnica między monitorowaniem a rozumieniem.

Robię to z powodu, który nie jest ambicją. Boję się zniknąć. Nie fizycznie. Tak, że gaśniesz i nikt tego nie zauważa, łącznie z Tobą.

pierwsze commity · Python 3.9 i Tkinter · 23:00 po dziesięciogodzinnej zmianie budzik na 5:00 · dziewięć kilometrów rowerem, żeby być na szóstą
Sierpień - listopad 2025
Trzy przebudowy i piętnaście tysięcy skasowanych linii

Tutaj umierało poprzednich dwanaście projektów: nowość minęła, nic nie działa dobrze, nikt nie patrzy. Zamiast tego ten przechodzi trzy pełne przebudowy.

Pierwsza wersja wyglądała jak Windows 95 podczas ataku paniki. Emoji wszędzie, nieskończone przewijanie, zero hierarchii. Działała, technicznie, i byłem z niej dumny przez jakieś dwa tygodnie, aż użyłem jej jak normalny człowiek i zrozumiałem, że działające i dobre to dwa różne słowa.

Druga to była architektura dla samej architektury. Zdarzeniowa, modularna, profesjonalna i okropna w użyciu. Spędziłem dwa tygodnie na automatycznym sterowaniu wentylatorami z krzywymi przeciąganymi myszą, wydałem to, a potem skasowałem w całości, bo jedna zła krzywa potrafi uszkodzić sprzęt, a to jest funkcja, która dobrze brzmi na liście i fatalnie w zgłoszeniu użytkownika.

Trzecia zadała inne pytanie. Nie co mogę dodać, tylko co człowiek naprawdę musi zobaczyć.

39 000 linii -> 24 000 · 15 000 skasowanych, nie zrefaktorowanych 29 funkcji zbudowanych i wyrzuconych, zanim ktokolwiek je zobaczył 400+ commitów z opisami w rodzaju "fix" i "maybe this time" pierwszy wpis w changelogu · 2025-10-27
Koszt: jakieś 150 kaw i każdy wieczór przez cztery miesiące, żeby skończyć z mniejszym programem, niż się zaczęło. To był poprawny wynik i wtedy wcale tak nie wyglądał.
22 grudnia 2025
Zwolniony trzy dni przed świętami, razem z mieszkaniem

Ci sami ludzie, którzy uśmiechali się do mnie od tygodni, dalej uśmiechnięci: nie przeszedłeś okresu próbnego, jutro do widzenia i wyprowadzka. Walizki stały przy drzwiach, zanim skończyłem rozumieć to zdanie. Dwa psy czekające w innym kraju. Mniej więcej miesiąc pieniędzy. Projekt na jakichś siedemdziesięciu procentach, 680 godzin w środku.

Tej nocy musiałem stanąć na korytarzu i wykrzyczeć człowiekowi, że nie jestem terrorystą, bo budynek miał certyfikat, znałem swoje prawa, a on obstawiał, że ich nie znam. To najbardziej absurdalne zdanie, jakie wypowiedziałem na głos.

Potem wróciłem do środka, otworzyłem laptopa i zacząłem przebudowę numer cztery.

O drugiej w nocy dziewczyna przyniosła energetyki, a ja byłem na siódmej kromce tosta. O trzeciej kasowałem całe podsystemy zamiast je refaktorować, bo aplikacja mówiła mi wciąż to samo: nie jestem gotowa, żeby ktoś mnie używał. Zdanie, którego nie mogłem wyrzucić z głowy, brzmiało gdybym był użytkownikiem, zamknąłbym to w pięć sekund, a ja byłem użytkownikiem. O piątej rdzeń był przebudowany. Kiedy światło weszło do mieszkania, otworzyłem to i po raz pierwszy nie pomyślałem od razu o rzeczach do zmiany.

16 000 kolejnych linii skasowanych w jedną noc. Oznaczam ten miesiąc na zielono, co przy dniu zwolnienia wygląda dziwnie. Jest zielony, bo kiedy praca zniknęła, jedyną strukturą, jaka została mi w tygodniu, była ta, którą sam zbudowałem, i okazała się nośna.
Styczeń 2026 · powrót do Polski
Najbardziej produktywny miesiąc z całych czternastu

Bez pracy, w domu i po raz pierwszy w stanie pracować nad tym za dnia. To jedyny miesiąc w całym zapisie, w którym projekt dostał moje najlepsze godziny zamiast ostatnich, i widać tę różnicę w logu.

v1.6.3 2026-01-12 v1.6.3+ 2026-01-19 najwyższa liczba commitów z każdego miesiąca projektu
Koszt: przez cały ten czas kończyły się pieniądze. Produktywność kupiona bezrobociem nie jest strategią.
Luty 2026
Szybka poprawka, która zajęła trzy tygodnie

Plan był taki, żeby naprawić system danych wykresów w jeden dzień. Wyszła przebudowa.

v1.6.8 2026-02-17 nowy potok agregacji, SQLite w trybie WAL, zapisy odporne na crash pierwsze prawdziwe dane historyczne zamiast atrap około 500 linii martwego kodu skasowanych
Marzec 2026
Startuje seria, a ja kasuję osiem miesięcy historii

25 marca zaczynam publikować trzy razy w tygodniu: w poniedziałek co planuję, w środę jeden bug rozebrany porządnie, w piątek co wyszło i ile kosztowało. Od tamtej pory nie przestałem i opuściłem dokładnie jeden post.

Dwa dni później uruchamiam git push --force i zamieniam 130 commitów w jeden. Osiem miesięcy publicznej historii znika. Odzyskuję z tego około 90 z gałęzi o nazwie archive, którą trzy tygodnie wcześniej stworzyłem przypadkiem, żeby przechować kilka starych plików.

v1.7.0 marzec 2026 pierwszy piątkowy post opowiada o katastrofie, w tym samym tygodniu
Koszt: jakieś 40 commitów, bezpowrotnie. I lekcja, która wróciła pięć miesięcy później i prawie zniszczyła wszystko, bo odzyskiwanie po cichu zostawiło mój klon śledzący niewłaściwą gałąź.
Kwiecień 2026 · sklep
Dziewięciogodzinne zmiany i pierwszy post, który do kogoś dotarł

Zaczynam pracę w sklepie. Dziewięć godzin na zmianę, rower o wpół do piątej rano. Pierwszy tydzień uczy mnie czegoś, czego nie wziąłem pod uwagę: ambitne plany tygodniowe zakładają stałą energię, a nowa praca oznacza, że jej nie ma. Dowożę mniej więcej połowę tego, co obiecałem, i piszę o tym zamiast to ukrywać.

27 kwietnia publikuję post, który zaczyna się od zdania „Most developers never ship an .exe". Prawie go kasuję przed wysłaniem, bo wydaje mi się zbyt konfrontacyjny jak na uprzejmą bańkę technologiczną. Dociera do 25 700 osób. Wcześniej moje posty docierały do 170 do 330.

We wtorek rano mam już inny problem. Odświeżam analitykę co piętnaście minut zamiast pisać kod, a o jedenastej łapię się na tym, że nie zrobiłem nic poza sprawdzaniem telefonu. Patrzenie, jak licznik rośnie, jest bardziej natychmiastowe niż debugowanie czytnika rejestru, i dokładnie dlatego jest niebezpieczne. Zamykam kartę, otwieram edytor.

Też w kwietniu: nieznajomy pobiera mój plik wykonywalny i zanim go uruchomi, przepuszcza cały kod przez pełny audyt bezpieczeństwa. Potem przysyła mi wyniki. Chyba spodziewał się paniki. Zapytałem, czy mogę zobaczyć pełny raport. Wyszedł czysty, a on został testerem.

v1.7.1 2026-04-10 testy przepisane, 18 przypadków w 3 plikach v1.7.2 2026-04-27 podpis Sigstore, VirusTotal 0/70, CodeQL przy każdym commicie SECURITY.md na 446 linii, nie szablon
Koszt: czterogodzinne noce. Działa raz, może dwa. Nie zbudujesz kariery na długu snu i szczęśliwych stanach przepływu, i napisałem to wtedy, a potem zrobiłem tak jeszcze kilka razy.
Drugi koszt, nie mój: kobieta, która mnie tam wdrażała, pracowała półtora roku, przy około 190 godzinach miesięcznie na umowie skonstruowanej tak, że nie mogła wziąć zwolnienia, z dziećmi. Ta sama stawka co moja. Myślę o niej częściej niż o którejkolwiek liczbie wyświetleń z tej strony.
Maj 2026
Miesiąc, w którym wszystko ruszyło naraz

Dwadzieścia osiem osób odpowiada na pytanie, co zapytaliby AI mieszkające w monitorze systemu, i każde z tych pytań staje się w tym tygodniu prawdziwym kodem. Zaczynam program Google przez SGH.

25 maja post dociera do 46 904 osób, co do dziś jest największą liczbą, jaką wyprodukowałem. Wrócę do tego, ile była warta.

v1.7.3 2026-05-02 v1.7.4 2026-05-14 v1.7.5 2026-05-25 v1.7.6 2026-05-29 pełne polskie tłumaczenie, 300+ ręcznie pisanych stringów asystent rośnie do 82 rozpoznawanych intencji biblioteka procesów 241 -> 373 definicji
Koszt: odkrywam, że monitorowanie temperatur, które wydałem miesiące wcześniej, nigdy nie działało. Wołało API, które na Windowsie nie istnieje, wewnątrz bloku try, który połykał błąd. Przechodziło każdy test, bo testy sprawdzały tylko, że nie ostrzega, kiedy jest dobrze, a coś, co nigdy nie może się odpalić, przechodzi taki test zawsze.
Czerwiec 2026 · zakład napraw
Spawanie plastików za dnia, a projekt kończy rok

Pieniądze znowu się kończą. Biorę pracę przy spawaniu plastików w zakładzie napraw, w pomieszczeniu, które zawsze jest za ciepłe i które czuć na ubraniach wieczorem. Praca fizyczna w dzień, kod w nocy. Ten sam rytm co w Holandii, inny kraj.

Ta praca nauczyła mnie czegoś, czego nie spodziewałem się przynieść do domu. Dobry zgrzew plastiku jest nudny. Nie pamiętasz go dlatego, że wyglądał sprytnie. Pamiętasz go, bo pół roku później element nadal się trzyma. Nie znalazłem lepszego opisu kodu, który chcę pisać.

W tym samym okresie: kładę się o trzeciej w nocy z tą cichą pewnością, że nikogo to nie obchodzi. To nie jest nastrój, to brzmi jak fakt. Następnego ranka post ma 44 000 wyświetleń. Godzinę wcześniej i cała ta noc wyglądałaby inaczej. Nie sprawdziłem, więc nie wyglądała. To jest ta wersja budowania w publicznym rytmie, której nikt nie publikuje.

Mój artykuł trafia też na pierwsze miejsce trendów na HackerNoon. Moją pierwszą myślą nie jest „udało się". Jest nią „a jeśli to przypadek".

v1.7.7 2026-06-02 v1.7.9 2026-06-11 v1.7.8 2026-06-05 v1.8.0 2026-06-22 pcworkman.dev rusza, 56 stron, schema, RSS, robots otwarty dla crawlerów AI roadmapa kończąca się na 1.7.9 zostaje zamknięta. każdy punkt zrobiony.
Koszt: znajduję dwie funkcje z etykietą „gotowe", które nigdy nie uruchomiły się ani razu. Silnik uczenia, do którego czat nie potrafił sięgnąć, i przełącznik TURBO wpięty we flagę, której nic w kodzie nigdy nie zapisywało. Żadna się nie wysypała. Nic nie krzyczało. Po prostu tam stały.
Lipiec 2026 · Store, a potem taksówka
Ostatnia linijka roadmapy, w którą nie wierzyłem

1 lipca PC Workman trafia do Microsoft Store. Rok wcześniej to zdanie było ostatnią linijką roadmapy napisanej przez kogoś, kto zabił dwanaście projektów i nie wierzył, że trzynasty przeżyje. Microsoft odrzucił go wcześniej dwa razy i żadne odrzucenie nie dotyczyło kodu. Rozmyta ikona kafelka i link do polityki prywatności, który prowadził do polityki bezpieczeństwa.

Tego dnia nic w repozytorium się nie zmieniło. Te same pliki, te same błędy, nadal moje. Zmieniło się to, że ktoś, kogo nigdy nie spotkam, mógł nacisnąć Zainstaluj i uruchomić to na maszynie, której nigdy nie zobaczę. Przestałem czytać ten projekt jak prywatny warsztat.

Pierwszą rzeczą, która na mnie spojrzała, był plik na 6 533 linie z 96 handlerami odpowiedzi. Nie stał się absurdalny w jeden dramatyczny weekend. Dziesięć linii tu, piętnaście tam, helper na dole, bo i tak byłem w pliku. Żaden pojedynczy commit nie wyglądał nieodpowiedzialnie i tak właśnie wygrywa dług techniczny: przychodzi jako seria rozsądnych skrótów. I dalej działał, co było najgorsze, bo zepsuty plik domaga się uwagi, a działający uczy Cię, żeby go zostawić w spokoju. Plik, który boisz się otworzyć, to plik, który już przestałeś ulepszać.

Store nie zmienił mojego kodu. Zmienił to, co byłem gotów ignorować. Rozbiłem ten plik na siedem, a testów przybyło z 21 do 194 w dziesięć dni.

Później w tym samym miesiącu przychodzi pierwsza recenzja na jedną gwiazdkę: interfejs zbyt techniczny, krzywa uczenia stroma. Czytam ją trzy razy i zgadzam się z każdym słowem. Zbudowałem to dla kogoś dokładnie takiego jak ja, a większość ludzi mną nie jest.

28 lipca zaczynam jeździć taksówką po dziesięć, dwanaście godzin dziennie, bo to finansuje wyprowadzkę.

v1.8.1 2026-07-05 v1.8.5 2026-07-21 v1.8.2 2026-07-09 testy 21 (czerwiec) -> 194 -> 331 w sierpniu jedno menu z ~2 sekund otwierania schodzi do 17 milisekund 23 poradniki diagnostyczne, po angielsku i po polsku, za darmo i bez zapisu
Koszt: tydzień, w którym znalazłem cztery osobne rzeczy we własnym kodzie, które raportowały sukces i nie robiły nic. Przycisk Apply w krzywej wentylatorów, który przez dwa wydania nie zapisywał niczego. Numer wersji kłamiący w trzech miejscach. Odczyt CPU w złej skali. Przełącznik narysowany na ekranie i wpięty w nic.
Sierpień 2026 · teraz
Siedemdziesiąt godzin za kierownicą i zerwana passa

Rezerwuję sobie siedemdziesiąt godzin jazdy w jednym tygodniu, więc weekend przed nim spędzam na tym, żeby nic, na czym mi zależy, nie potrzebowało mnie, kiedy mnie nie będzie. W piątek tamtego tygodnia kończę zmianę, siadam, otwieram plik, patrzę na niego i zamykam laptopa. Dwadzieścia jeden tygodni, sześćdziesiąt trzy posty i pierwszy, którego nie napisałem.

Piszę o tym w poniedziałek, zamiast cokolwiek antydatować, bo passa nie jest sensem, a udawanie jest gorsze niż opuszczenie.

W tym samym miesiącu odkrywam, że mój lokalny klon śledził niewłaściwą gałąź od marcowego odzyskiwania i był po cichu 1081 commitów w tyle przez pięć miesięcy. Byłem jedną komendą od skasowania 145 201 linii, które istniały wyłącznie na GitHubie.

v1.8.7 2026-08-08 trzeci przyjęty pakiet w Microsoft Store Scaling Laws start 2026-08-02, drugi projekt, w Unity 331 testów automatycznych · 110 intencji asystenta · 521 definicji procesów
Koszt: prawie powtórzyłem marcową katastrofę w dziesięciokrotnej skali, a jedynym powodem, dla którego tego nie zrobiłem, jest to, że przeczytałem ostrzeżenie, które normalnie bym pominął.

Ile to naprawdę kosztowało

Czternaście miesięcy, cztery prace, dwa kraje, ani jednego wolnego tygodnia. Tu jest część, którą łatwo pominąć.

Najpierw sen. Bez romantyzowania. Były tygodnie czterogodzinnych nocy, które dały dobrą robotę, i pisałem wtedy, że to działa raz, może dwa, i że nie da się na tym budować. To była prawda i i tak robiłem to dalej, więcej niż dwa razy.

Ciało, które pracuje fizycznie. Piętnaście kilometrów na zmianę w magazynie. Dziewięć godzin na sklepie. Pomieszczenie, które zawsze jest za ciepłe. Dwanaście godzin w samochodzie. Nic z tego nie jest metaforą dyscypliny, to po prostu było tym dniem, a kod dostawał to, co zostało.

Brak recenzenta i konkretna cena tego. Umiem wskazać co najmniej dwadzieścia cztery osobne sytuacje, w których wydałem coś, co działało bez zarzutu i nie dostarczało niczego, a każda z nich była niewidoczna od środka. Nic się nie wysypało. Kolega zza biurka złapałby kilka z nich w jednym zdaniu. To nie jest narzekanie na pracę w pojedynkę, tylko realny, mierzalny koszt takiej pracy, i spisałem cały ten katalog, żeby przynajmniej komuś się przydał.

14miesięcy bez wolnego tygodnia
7adresów, dwa kraje
4pełne przebudowy
23wydane wersje
331testów automatycznych
0prac w IT

Uwaga do liczby z tytułu. Cztery to liczba rodzajów pracy dziennej przez te czternaście miesięcy: magazyn, sklep, zakład napraw plastików, taksówka. Prawdziwa liczba jest wyższa, bo sama Holandia to były cztery osobne skierowania z agencji i siedem różnych adresów w dziewięć miesięcy. W tytule użyłem mniejszej liczby celowo. Zaniżanie jest jedynym kierunkiem, w którym bezpiecznie jest się mylić.

Co zadziałało, a co nie

Mam pięć miesięcy analityki z publicznej strony tego wszystkiego i uczciwy odczyt tych danych przeczy większości rad, jakie dostawałem.

Zasięg i efekt są u mnie odwrotnie proporcjonalne. Moje trzy największe posty dotarły do 46 904, 23 095 i 7 860 osób. Ich wskaźniki zaangażowania wyniosły 0,21, 0,25 i 0,25 procent, czyli trzy najgorsze wyniki w całej mojej historii, i razem nie przyniosły niczego, co umiałbym wskazać. Post o mojej realnej sytuacji dotarł do 2 597 osób przy 4,74 procent i przyniósł jedną rozmowę o pracę oraz trzy osoby, które przekazały moje CV dalej.

Powód okazał się widoczny w danych, kiedy w nie spojrzałem. Ludzie, którzy mnie obserwują, są w Warszawie, Krakowie, Wrocławiu i Gdańsku, w firmach, które zatrudniają pythonowców w Polsce. Ludzie, do których dotarły viralowe posty, byli zupełnie gdzie indziej, na innym etapie kariery, na innym kontynencie. Duże liczby znalazły publiczność bez związku z tym, czego naprawdę potrzebuję.

Regularność biła jakość częściej, niż się spodziewałem. Nie dlatego, że słabe posty szły dobrze, tylko dlatego, że te dobre trafiały na publiczność, która istniała, bo wcześniej pojawiałem się przez dwadzieścia tygodni.

Publikowanie porażek działało lepiej niż publikowanie sukcesów, za każdym razem. Posty o katastrofach, recenzja na jedną gwiazdkę, funkcje, które nic nie robiły. Nie robiłem tego jako strategii. Robiłem to, bo alternatywa wydawała się kłamstwem. Okazało się, że to jedyna rzecz, przez którą ktokolwiek uwierzył w liczby wtedy, gdy były dobre.

Co nie zadziałało: proszenie. Dwie platformy, w które włożyłem realne godziny, oddały prawie nic, a ja ciągnąłem to z uporu, nie z dowodów. I przez długi czas optymalizowałem pod zasięg, bo zasięg jest liczbą, którą łatwo zobaczyć, i dokładnie dlatego jest tą niewłaściwą.

Gdzie to jest teraz i czego chcę

PC Workman jest w Microsoft Store, na licencji MIT, podpisany przez Sigstore, z CodeQL działającym przy każdym commicie. Ma 331 testów automatycznych, w pełni lokalnego asystenta ze 110 rozpoznawanymi intencjami po polsku i angielsku, bibliotekę 521 definicji procesów, offline'ową bazę zgodności sprzętu z 340 wpisami i 25 poradników diagnostycznych w dwóch językach, darmowych i bez żadnej ściany mailowej.

Obok istnieje teraz drugi projekt, gra strategiczna o prowadzeniu laboratorium AI, trzy tygodnie stara, z 718 testami automatycznymi i formatem zapisu, który przemigrował 36 razy bez zepsucia żadnej kampanii.

I nadal nie mam doświadczenia komercyjnego. Aplikacje wychodzą. Większość milczy. Taki jest prawdziwy stan na sierpień 2026 i nie zamierzam tego ubierać, bo cała wartość tej strony polega na tym, że nie jest ubrana.

Czego nie straciłem. Na początku 2026 powiedziałem, że w tym roku zdobędę pierwszą pracę w IT, i nadal w to wierzę. Nie jako w hasło. Jako w arytmetykę: czternaście miesięcy temu nie umiałem przekonać obcego człowieka, żeby uruchomił mój plik wykonywalny, a teraz obcy ludzie instalują go z Microsoft Store, o nic mnie nie pytając. Ta linia idzie w jedną stronę przez cały czas, a do końca roku zostały cztery miesiące.

To, co wniósłbym do zespołu, jest na tej stronie, a nie w akapicie o moich mocnych stronach. Szukam awarii, która się nie zgłasza. Buduję narzędzie, które ją znajduje, zamiast obiecywać, że następnym razem będę uważniejszy. Zapisuję, ile to kosztowało, publicznie, z datą, łącznie z tygodniami, które poszły źle. Robię to w dwóch językach.

Python i aplikacje desktopowe. Lokalne AI bez zależności od chmury. Wnętrze Windowsa. Wydawanie przez Microsoft Store. Dyscyplina testowa nauczona drogą kosztowną. Otwarty na role developerskie, pythonowe, IT support i ścieżki pokrewne, zdalnie, hybrydowo albo na miejscu w Krakowie, Warszawie lub Wrocławiu.

Jeśli zatrudniasz za to, co ktoś potrafi zbudować, a nie za to, co już stoi w CV, wszystko tutaj da się sprawdzić, a moja skrzynka jest otwarta.

Reszta zapisu. Pełny katalog cichych awarii razem ze skryptami wykrywającymi jest tutaj. Cotygodniowe posty żyją w poniedziałkach, środach i piątkach. Sama aplikacja jest darmowa i otwartoźródłowa.

MF

Marcin Firmuga

22 lata · Radom · taksówka w dzień, oprogramowanie w nocy

Piszę o tym, co naprawdę wydałem, z prawdziwymi liczbami i prawdziwym kodem, łącznie z tymi częściami, które nie robiły nic. Czternaście miesięcy publicznie i dalej.