← Ripperdoc
Dossier · Tomasz Mroczyński

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.

  1. in deployment
    Pierwszy 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

    Użytkownicy: commercial client — the owner of Limes Dekor · Dowód: dekor.limes-interior.no

  2. 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

    Użytkownicy: author + closed group of testers · Dowód: ripperdoc.ai/no/ripper-inject

  3. 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

    Użytkownicy: author · Dowód: ripperdoc.ai/no/ripper-task-force

  4. 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

    Użytkownicy: author · Dowód: ripperdoc.ai/no/ripper-brainstorm

  5. 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

    Użytkownicy: author · Dowód: ripperdoc.ai/no/ripper-body-sync

  6. 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

    Użytkownicy: author · Dowód: ripperdoc.ai

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.

ASP.NETNext.jsReact.jsBlazorAI workflowsAutomatyzacjaSelf-hostedDockerIntegracje APIRAG / bazy wiedzyModelowanie i druk 3DGrafika

05Doświadczenie

  1. 03–04/2025

    Kierowca ciężarówki · Transport Service AS

    Krótki rozdział zakończony wypadkiem przy pracy — początek świadomego zwrotu ku technologii.

  2. 2013 – dziś

    Dystrybucja · Amedia AS

    Stała praca przy dystrybucji, prowadzona równolegle z nauką technologii i własnymi projektami.

  3. 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.

  4. 2002 – 2012

    Własna działalność · Complet Tomasz Mroczyński

    Instalacja i konfiguracja sieci komputerowych oraz serwis komputerowy.

  5. 2002 – 2006

    Sprzedaż i wsparcie techniczne · Strawford

    Wdrożenia CCTV, instalacja sieci LAN, IT helpdesk, serwis i szkolenia.

06Wykształcenie

  1. 2024 – 2025

    Wright, Trafikkskole

    Prawo jazdy kat. C z kwalifikacją wstępną (yrkessjåfør).

  2. 2021 – 2022

    Noroff — szkoła technologii i mediów cyfrowych

    Backend Web Development (.NET).

  3. 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.

Z zapisu rady projektowej, 18 czerwca 2026 — korekta własnego założenia
Protokół decyzji4 wpisy · prowadzący: TM
PytanieRipper Brainstorm
2026-06-18

Co należy do rdzenia produktu, a co jest dodatkiem?

Spór

Przy każdej propozycji rozbudowy wracała ta sama dyskusja, rozstrzygana za każdym razem od nowa.

Pytam

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.

KorektaRipper Brainstorm
2026-06-18

Czy zgoda dwóch modeli jest dowodem, że mają rację?

Założenie domyślne

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.

Koryguję

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.

Konsekwencja

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.

SprzeciwRipper Brainstorm
2026-06-18

Czy wysyłać zapis prywatnej dyskusji do zewnętrznej usługi?

Na stole

Automatyczna synchronizacja — duża wygoda, mało pracy, mój własny pomysł.

Odmawiam

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.

PowściągliwośćLimes Dekor
produkcja

Czy automatycznie wykrywać pole graweru w modelu produktu?

Możliwe

Technicznie nic nie stało na przeszkodzie, żeby system wskazywał je sam.

Rozstrzygam

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ą.

Wpisy otwarte

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.

Wersja maszynowa (JSON)

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?