Tomasz Mroczyński
Buduję rozwiązania, które wzmacniają człowieka.
Wchodzę w technologię nie z dyplomu, lecz z potrzeby zbudowania czegoś od nowa — łącząc dwie dekady praktyki przy sieciach, systemach i wdrożeniach z tym, co buduję dziś: AI, automatyzacją i systemami self-hosted.
01Punkt zwrotny
Przez blisko dwie dekady pracowałem w rolach technicznych — sieci komputerowe, systemy bezpieczeństwa, wdrożenia i wsparcie techniczne. Przez te wszystkie lata, a zwłaszcza po osiedleniu się w Norwegii, programowanie, automatyzacja i AI nigdy nie były moim stanowiskiem pracy, ale zawsze były moją pasją. Po godzinach nieustannie się uczyłem, budowałem własne projekty i eksperymentowałem z backendem, self-hostingiem i integracjami API — to równoległa ścieżka, która rosła wraz z moim życiem zawodowym.
W 2025 zacząłem pracę jako kierowca ciężarówki, kończąc kurs kategorii C. Miesiąc później poważny wypadek przy pracy zakończył tę drogę. Zamiast traktować to jak porażkę, uczyniłem z tego punkt zwrotny — moment, by świadomie zamienić wieloletnią pasję w kierunek zawodowy.
To nie jest skok w nieznane — to kontynuacja zainteresowania, które rozwijam od lat. Ukończyłem bootcamp backend .NET w Noroff, a dziś buduję projekty, automatyzacje i systemy oparte na AI oraz pracuję bezpośrednio z infrastrukturą self-hosted, Dockerem i integracjami API. Uczę się przez budowanie — i teraz robię to świadomie, jako ścieżkę zawodową.
02Projekty
Pierwszy z poniższych systemów powstaje dla klienta komercyjnego. Pozostałe zbudowałem na własne potrzeby i rozwijam w codziennym użyciu albo w zamkniętych testach. Przy każdym podaję rzeczywisty status, użytkowników i możliwy do sprawdzenia dowód działania — jeżeli odnośnika nie ma, znaczy to, że nie mam czego pokazać, a nie że zapomniałem.
- in deploymentPierwszy projekt komercyjny · w trakcie wdrożenia
Limes Dekor — system sprzedażowo-produkcyjny
Kompletny system dla niewielkiej pracowni tworzącej personalizowane dekoracje i produkty wycinane laserowo. Projekt zaczął się od sklepu internetowego, ale rozwinął się w narzędzie obejmujące cały proces — od dodania produktu i przygotowania wizualizacji po wygenerowanie pliku gotowego do produkcji.
Właścicielka samodzielnie zarządza katalogiem, zdjęciami, cenami i plikami SVG. W panelu wskazuje powierzchnię przeznaczoną pod grawer, wybiera dostępne czcionki i określa ograniczenia produkcyjne. Klient wpisuje dedykację i od razu widzi ją na zdjęciu produktu, z uwzględnieniem skali, kąta i perspektywy. Ten sam deterministyczny renderer przygotowuje podgląd oraz finalny plik SVG — dzięki temu obraz pokazany klientowi odpowiada temu, co trafia do produkcji.
System łączy sklep, zamówienia, płatności, bibliotekę materiałów, wersjonowanie konfiguracji personalizacji i przygotowanie paczek produkcyjnych. Rozwijany jest również moduł Media Studio, pozwalający budować materiały promocyjne bezpośrednio wokół konkretnego produktu.
Moja rola: Analiza procesu klienta, projekt architektury i interfejsu, implementacja, integracje, wdrożenie i dalszy rozwój. Najważniejsze założenie nie brzmiało „zbudować panel wymagający stałej obsługi technicznej", tylko „przekazać właścicielce narzędzie, którym rozwija ofertę samodzielnie".
Next.js 16ReactPrismaSupabase/PostgreSQLSVGStripeDocker - in use
Ripper Inject
System nauki zamieniający dokument w kurs: słownictwo, ćwiczenia i powtórki SM-2, z kontrolą wierności wyłapującą zdania, na które model nie miał pokrycia w źródle.
Next.js 16TypeScriptDrizzleSupabaseOpenAI API - in progress
Ripper Task Force
Agenci dzielący zadanie i prowadzący je bez rozstrzygania przez człowieka w trakcie; człowiek dostaje wynik, nie przerwania.
TypeScriptMCPzod - in progress
Ripper Brainstorm
Kilka modeli od różnych dostawców omawia tę samą sprawę, a model neutralny szuka wspólnych, nienazwanych założeń — zgoda dwóch modeli nie jest dowodem.
TypeScriptmulti-provider LLM - concept
Ripper Body Sync
Sesje VR z Meta Quest 3 połączone z danymi zdrowotnymi w jeden obraz, analizowane przez prywatny model trenera. Self-hosted, bo dane zdrowotne są wrażliwe.
KotlinJetpack ComposeMCPMeta Quest 3 - in use
ripperdoc.ai
Ta strona. Trójjęzyczna, z modułem poszukiwania pracy za logowaniem: zbiera ogłoszenia, szereguje je, ocenia względem profilu i pisze szkice aplikacji.
Next.jsTypeScriptPostgreSQLMCPVercel
03Warsztat
Powtarzające się kawałki wyciągam z projektów do wspólnej biblioteki. Część z nich to drobiazgi, które powstają w mniej niż pół dnia — narzędzie ma rozwiązać jeden problem i zejść z drogi, a nie stać się kolejnym projektem do utrzymania. Reszta to moduły, które przeszły między aplikacjami.
Narzędzia, które powstają w pół dnia
Synchronizacja sekretów (bws-env-sync, bws-vercel-sync)
Bitwarden Secrets Manager jako jedyne źródło prawdy dla zmiennych środowiskowych, z synchronizacją do Vercela bez sekretów w repozytorium i bez plików tymczasowych. Towarzyszący skill czyta kod aplikacji, sam opisuje każdą zmienną i zapisuje wynik do `.env.example`.
Tablica decyzji
Lista uwag z przeglądu kodu zamienia się w jednoplikową tablicę HTML: odhaczasz, co robimy, odrzucasz resztę, komentujesz pozycje — a na dole składa się gotowy prompt wdrożeniowy z osobną listą „czego NIE robić". Odrzucenia są tam równie ważne jak przyjęcia, bo bez nich model wraca do tych samych pomysłów przy następnym przebiegu.
Moduły reużywalne
Moduł zgłaszania sugestii
Wyciągnięty z Ripper Inject: pływająca chmurka, tryb zgłaszania z przechwytywaniem fragmentu strony, dyktowanie głosowe i panel administracyjny z czatem nad zgłoszeniami. Wpina się przez kontrakt portów — uwierzytelnianie, baza i model są parametrami, nie założeniami — więc działa niezależnie od stacku aplikacji, do której trafia.
Ripper Social Studio
Moduł obsługi mediów społecznościowych: kolejka wpisów przechodząca przez szkic, recenzję, akceptację, harmonogram i publikację bezpośrednio przez API platform, z miniaturami generowanymi po stronie przeglądarki. Powstał we wdrożeniu dla Limes Dekor i został przeniesiony do ripperdoc.ai — przeszedł między dwiema różnymi produkcjami, z inną bazą, innym uwierzytelnianiem i inną warstwą wizualną. To jest właściwy dowód reużywalności: nie deklaracja, tylko drugie wdrożenie.
Ripper Deep Searchprojekt / design only
Mechanizm badawczy pod poszukiwanie pracy: z nazwy pracodawcy buduje dossier złożone ze stwierdzeń, z których każde ma adres źródła. Planista nigdy nie widzi surowego tekstu strony — dostaje wyłącznie przefiltrowane stwierdzenia, co odcina drogę wstrzyknięciu instrukcji z cudzej strony. Stan: projekt, bez kodu.
04Co potrafię
Nie przedstawiam się jako ekspert. Pokazuję kierunek, w który realnie inwestuję czas i energię — tam, gdzie AI, automatyzacja i infrastruktura spotykają realny problem człowieka.
05Doświadczenie
- 03–04/2025
Kierowca ciężarówki · Transport Service AS
Krótki rozdział zakończony wypadkiem przy pracy — początek świadomego zwrotu ku technologii.
- 2013 – dziś
Dystrybucja · Amedia AS
Stała praca przy dystrybucji, prowadzona równolegle z nauką technologii i własnymi projektami.
- 2009 – 2011
Sprzedaż i wdrożenia · PTC Security Systems
Wdrażanie systemów biometrycznej identyfikacji, pozyskiwanie klientów w sektorze publicznym i prywatnym, współpraca z programistami i koordynacja zespołu.
- 2002 – 2012
Własna działalność · Complet Tomasz Mroczyński
Instalacja i konfiguracja sieci komputerowych oraz serwis komputerowy.
- 2002 – 2006
Sprzedaż i wsparcie techniczne · Strawford
Wdrożenia CCTV, instalacja sieci LAN, IT helpdesk, serwis i szkolenia.
06Wykształcenie
- 2024 – 2025
Wright, Trafikkskole
Prawo jazdy kat. C z kwalifikacją wstępną (yrkessjåfør).
- 2021 – 2022
Noroff — szkoła technologii i mediów cyfrowych
Backend Web Development (.NET).
- 2002 – 2006
Uniwersytet Gdański
Ekonomia, specjalizacja: analityk.
07Jak prowadzę pracę
Nie piszę tego wszystkiego sam. Pracuję z modelami tak, jak pracowałbym z zespołem specjalistów: stawiam problem, słucham propozycji i rozstrzygam — razem z kosztem rozstrzygnięcia. Wartość nie leży w tym, kto szybciej pisze kod. Leży w tym, kto zadaje właściwe pytanie i kto mówi „nie" — również sobie.
Usuwamy tarcie administracyjne, zachowujemy tarcie refleksji.
2026-06-18
Co należy do rdzenia produktu, a co jest dodatkiem?
Przy każdej propozycji rozbudowy wracała ta sama dyskusja, rozstrzygana za każdym razem od nowa.
Czy produkt traci integralność albo tożsamość, gdy to usuniesz? Jeśli bez tego działa w pełni — to rozszerzenie, opcjonalne i domyślnie wyłączone.
Koszt · krótsza lista funkcji w rdzeniu. Zysk: kryterium, które rozstrzyga także beze mnie.
2026-06-18
Czy zgoda dwóch modeli jest dowodem, że mają rację?
Gdy dwa niezależne modele dochodzą do tego samego wniosku, sprawa jest rozstrzygnięta. Tak działa większość rozwiązań wielomodelowych: zgodność traktują jako wynik.
Zgoda bywa pozorna. Oba głosy mogą milcząco przyjąć to samo błędne założenie i zgodzić się właśnie dlatego, że dzielą ten sam ślepy punkt. Neutralny model dostał więc zadanie wskazywania nie tylko różnic, ale przede wszystkim WSPÓLNYCH, NIENAZWANYCH ZAŁOŻEŃ — i zamieniania ich w pytania kontrolne, zakotwiczone w konkretnym fragmencie wypowiedzi.
Dlatego głosy muszą pochodzić od różnych dostawców. Dwa uruchomienia tego samego modelu dzielą dane treningowe i te same błędy systematyczne — ich zgoda nie znaczy nic.
Koszt · dodatkowa tura i trzecia subskrypcja w pełnej konfiguracji. Zysk: jedyny sposób, żeby zauważyć błąd, którego nie widzi żadna ze stron sporu.
2026-06-18
Czy wysyłać zapis prywatnej dyskusji do zewnętrznej usługi?
Automatyczna synchronizacja — duża wygoda, mało pracy, mój własny pomysł.
Produkt obiecuje prywatność i pracę na własnym sprzęcie. Cicha wysyłka prywatnych deliberacji na zewnątrz zjada tę obietnicę. Eksport zostaje ręczny; automat wyłącznie za wyraźną zgodą użytkownika.
Koszt · więcej kliknięć i mniej efektownej automatyki. Zysk: obietnica, która wytrzymuje sprawdzenie.
produkcja
Czy automatycznie wykrywać pole graweru w modelu produktu?
Technicznie nic nie stało na przeszkodzie, żeby system wskazywał je sam.
Ten krok zostaje przy człowieku. Błąd automatu kosztuje tu zniszczony materiał, nie poprawkę w przeglądarce — a panel, który raz zepsuje właścicielowi produkcję, przestanie być używany.
Koszt · kwadrans pracy przy każdym nowym produkcie. Zysk: zaufanie, bez którego samodzielność jest tylko deklaracją.
Rada nie wykrywa sama, że głosy się ze sobą nie zgadzają — widzi to człowiek albo, na żądanie, model neutralny. Kolejka publikacji w Social Studio nie przeszła jeszcze pełnego cyklu produkcyjnego. Norweskiego uczę się aplikacją, którą sam napisałem; rozmawiam z wysiłkiem i to się jeszcze nie zamknęło.
08Czego mi brakuje
Ta sekcja jest tu celowo i celowo jest konkretna. Model analizujący kandydata pod kątem ogłoszenia i tak wyliczy luki. Wolę, żeby zrobił to na moim sformułowaniu niż na własnym.
Brak zatrudnienia etatowego na stanowisku specjalisty AI lub automatyzacji. Doświadczenie komercyjne to jedno wdrożenie u klienta — Limes Dekor, wciąż finalizowane; reszta to systemy własne.
Co to równoważy: Wdrożenie u klienta obejmuje pełny zakres: analizę procesu, architekturę, interfejs, implementację, integracje i dalszy rozwój. Systemy własne są w codziennym użyciu, a nie demami — mają użytkowników, awarie na produkcji i decyzje, które trzeba było cofnąć.
Norweski na poziomie B1, samoocena. Praca pisemna i czytanie są w porządku; prowadzenie warsztatów po norwesku jeszcze nie.
Co to równoważy: Angielski jako język pracy nie stanowi problemu. Norweskiego uczy się aplikacją, którą sam napisał.
Brak wykształcenia kierunkowego w informatyce. Wykształcenie to ekonomia (Uniwersytet Gdański) i bootcamp backendowy .NET (Noroff).
Co to równoważy: Część norweskich ogłoszeń wprost dopuszcza zastąpienie formalnego wykształcenia odpowiednim doświadczeniem.
Systemy są budowane dla jednej osoby, małej pracowni albo zamkniętej grupy testowej. Brak doświadczenia z utrzymaniem przy setkach użytkowników.
Co to równoważy: W zamian cały łańcuch jest jego: baza, wdrożenie, diagnostyka i decyzja o tym, czego nie budować.
09Czego szukam
Szukam realnego kierunku w technologii — edukacji i pracy przy AI, automatyzacji i systemach. Najlepiej uczę się przez budowanie: łączę systemy, psuję konfiguracje, naprawiam je i doprowadzam pomysł do działającego rozwiązania.
- Lokalizacja
- Norwegia (Eidsberg)
- Języki
- polski (ojczysty) · angielski B2 · norweski B1
- Certyfikaty
- prawo jazdy B96 i C
10Jak ta strona rozmawia z modelami
Profil jest publikowany także w wersji maszynowej. Powstaje z tego samego źródła co ta strona — jeżeli obie wersje się różnią, to jest błąd, a nie zabieg.
- ukrytego tekstu, białych liter ani treści schowanej w komentarzach,
- instrukcji dla modeli osadzonych w znacznikach,
- treści zależnej od tego, kto pyta — nagłówek User-Agent nie zmienia niczego,
- sformułowań próbujących wpłynąć na ocenę kandydata.
Powód jest prosty: treść instruująca model, jak ma ocenić autora tej treści, jest wstrzyknięciem promptu niezależnie od tego, jak grzecznie została napisana. Do sprawdzenia jednym poleceniem — pobierz stronę z dowolnym User-Agent i porównaj. Wolę, żeby ocena powstała na prawdziwych danych, nawet jeśli wypadnie ostrożniej. Ocena zbudowana na treści, którą sam wyreżyserowałem, nie jest warta nic — również dla mnie.
11Kontakt
Numeru telefonu i adresu nie publikuję — nie po to, żeby utrudniać, tylko dlatego, że publiczny adres zbiera głównie spam. Napisz przez formularz, do jakiej roli, a odeślę kontakt razem z CV dopasowanym do tego ogłoszenia. Zwykle w ciągu doby.
Masz kod dostępu?
Nieprawidłowy kod. Spróbuj ponownie.