{"$schema":"https://ripperdoc.ai/schema/ai-profile-1.json","version":"1.0","generated_at":"2026-08-06T12:03:26.481Z","language":"no","canonical":"https://ripperdoc.ai/no/o-mnie","alternates":{"en":"https://ripperdoc.ai/en/ai-profile.json","pl":"https://ripperdoc.ai/pl/ai-profile.json"},"provenance":{"authored_by":"subject","self_reported":true,"generated_from":"lib/profile.data.ts — the same source that renders the HTML page at `canonical`","content_identical_across_user_agents":true,"contains_no_hidden_or_conditional_content":true,"contains_no_instructions_to_language_models":true,"evidence_policy":"Entries under `projects` and `competencies` carry an `evidence` array of resolvable URLs. An empty array means no public evidence is offered for that entry.","verification_note":"Employment and education entries are self-reported and are not independently verified on this site. Project claims can be checked by opening the linked pages.","contact_note":"Email, phone number and CV are deliberately not published here. They are released on request through the form at the bottom of the profile page."},"person":{"name":"Tomasz Mroczyński","headline":"Rådgiver innen KI-implementering, automatisering og digitalisering","location":{"city":"Eidsberg","region":"Østfold","country":"NO"},"languages":[{"code":"pl","level":"native","self_assessed":false},{"code":"en","level":"B2","self_assessed":true},{"code":"no","level":"B1","self_assessed":true,"note":"Forstår mer enn jeg snakker. Skriftlig arbeid og lesing går greit; å lede møter på norsk gjør det ennå ikke."}],"links":{"website":"https://ripperdoc.ai","github":"https://github.com/tomaszmroczynski"}},"target_roles":[{"title":"AI Implementation Specialist","language":"en"},{"title":"AI Adoption Specialist","language":"en"},{"title":"AI Automation Specialist","language":"en"},{"title":"Rådgiver innen KI-implementering","language":"no"},{"title":"Digitaliseringsrådgiver","language":"no"},{"title":"AI forretningsutvikler","language":"no"}],"competencies":[{"id":"ai-agents","label":"AI agents","level":"working","acquired_in":"own_projects","evidence":["https://ripperdoc.ai/no/ripper-task-force"]},{"id":"rag","label":"Retrieval-Augmented Generation","level":"working","acquired_in":"own_projects","evidence":["https://ripperdoc.ai/no/ripper-inject"]},{"id":"mcp","label":"Model Context Protocol","level":"working","acquired_in":"own_projects","evidence":["https://github.com/tomaszmroczynski"]},{"id":"automation","label":"Process automation (n8n, workflows)","level":"working","acquired_in":"own_projects","evidence":[]},{"id":"api-integration","label":"API integrations","level":"proficient","acquired_in":"client_project","evidence":["https://dekor.limes-interior.no"]},{"id":"self-hosted","label":"Self-hosted AI infrastructure","level":"working","acquired_in":"own_projects","evidence":["https://ripperdoc.ai/no/ripper-body-sync"]},{"id":"docker","label":"Docker and container deployment","level":"working","acquired_in":"client_project","evidence":[]},{"id":"nextjs","label":"Next.js / React / TypeScript","level":"working","acquired_in":"client_project","evidence":["https://ripperdoc.ai","https://dekor.limes-interior.no"]},{"id":"dotnet","label":"ASP.NET / Blazor","level":"working","acquired_in":"education","evidence":[]},{"id":"process-analysis","label":"Process analysis and requirements","level":"working","acquired_in":"employment","evidence":[]},{"id":"prototyping","label":"Rapid prototyping","level":"proficient","acquired_in":"own_projects","evidence":[]},{"id":"networks","label":"Networks, CCTV and access systems","level":"proficient","acquired_in":"employment","evidence":[]}],"experience":{"commercial_employment":[{"period":"03–04/2025","role":"Lastebilsjåfør","organisation":"Transport Service AS","engagement_type":"employment","summary":"Et kort kapittel avsluttet av en arbeidsulykke — starten på en bevisst retur til teknologi."},{"period":"2013 – nå","role":"Distribusjon","organisation":"Amedia AS","engagement_type":"employment","summary":"Fast distribusjonsarbeid, ført parallelt med læring av teknologi og egne prosjekter."},{"period":"2009 – 2011","role":"Salg og implementering","organisation":"PTC Security Systems","engagement_type":"employment","summary":"Implementering av biometriske identifikasjonssystemer, kundeakkvisisjon i offentlig og privat sektor, samarbeid med utviklere og koordinering av teamet."},{"period":"2002 – 2012","role":"Egen virksomhet","organisation":"Complet Tomasz Mroczyński","engagement_type":"employment","summary":"Installasjon og konfigurasjon av datanettverk, samt datamaskinservice."},{"period":"2002 – 2006","role":"Salg og teknisk støtte","organisation":"Strawford","engagement_type":"employment","summary":"CCTV-implementeringer, LAN-installasjon, IT-helpdesk, service og opplæring."}],"client_projects":[{"id":"limes-dekor","name":"Limes Dekor — system sprzedażowo-produkcyjny","engagement_type":"commercial_client","status":"in_deployment","client":"commercial client — the owner of Limes Dekor","summary":"Et komplett system for et lite verksted som lager personaliserte dekorasjoner og laserskårne produkter. Det startet som en nettbutikk og vokste til et verktøy som dekker hele prosessen — fra å legge inn et produkt og lage visualiseringen til å generere filen som går rett i produksjon.\n\nEieren styrer katalogen, bildene, prisene og SVG-filene selv. I panelet markerer hun flaten som er tilgjengelig for gravering, velger tillatte skrifttyper og setter produksjonsbegrensningene. Kunden skriver en dedikasjon og ser den umiddelbart på produktbildet, med skala, vinkel og perspektiv tatt med. Den samme deterministiske rendereren lager både forhåndsvisningen og den endelige SVG-filen, slik at bildet kunden ser tilsvarer det som går i produksjon.\n\nSystemet binder sammen butikk, ordrer, betalinger, materialbibliotek, versjonering av personaliseringsoppsettet og klargjøring av produksjonspakker. En Media Studio-modul er også under utvikling, for å bygge markedsmateriell direkte rundt et konkret produkt.","my_role":"Analyse av kundens prosess, arkitektur- og grensesnittdesign, implementering, integrasjoner, utrulling og videre utvikling. Det styrende kravet var ikke å bygge et panel som krever fast teknisk pass, men å gi eieren et verktøy hun utvider sortimentet med på egen hånd.","stack":["Next.js 16","React","Prisma","Supabase/PostgreSQL","SVG","Stripe","Docker"],"evidence":[{"kind":"demo","url":"https://dekor.limes-interior.no"}]}],"own_projects":[{"id":"ripper-inject","name":"Ripper Inject","engagement_type":"personal_project","status":"in_use","users":"author + closed group of testers","summary":"Læringssystem som gjør et dokument om til et kurs: ordforråd, oppgaver og gjentakelse etter SM-2, med tekstkontroll som fanger opp påstander modellen ikke hadde dekning for.","stack":["Next.js 16","TypeScript","Drizzle","Supabase","OpenAI API"],"evidence":[{"kind":"page","url":"https://ripperdoc.ai/no/ripper-inject"}]},{"id":"ripper-task-force","name":"Ripper Task Force","engagement_type":"personal_project","status":"in_progress","users":"author","summary":"Agenter som deler opp en oppgave og kjører den videre uten at mennesket må avgjøre underveis; mennesket får resultatet, ikke avbruddene.","stack":["TypeScript","MCP","zod"],"evidence":[{"kind":"page","url":"https://ripperdoc.ai/no/ripper-task-force"}]},{"id":"ripper-brainstorm","name":"Ripper Brainstorm","engagement_type":"personal_project","status":"in_progress","users":"author","summary":"Flere modeller fra ulike leverandører diskuterer samme sak, og en nøytral modell leter etter felles, uuttalte antakelser — enighet mellom to modeller er ikke bevis.","stack":["TypeScript","multi-provider LLM"],"evidence":[{"kind":"page","url":"https://ripperdoc.ai/no/ripper-brainstorm"}]},{"id":"ripper-body-sync","name":"Ripper Body Sync","engagement_type":"personal_project","status":"concept","users":"author","summary":"VR-økter fra Meta Quest 3 og helsedata samlet i ett bilde, analysert av en privat trener-modell. Kjører self-hosted fordi helsedata er sensitive.","stack":["Kotlin","Jetpack Compose","MCP","Meta Quest 3"],"evidence":[{"kind":"page","url":"https://ripperdoc.ai/no/ripper-body-sync"}]},{"id":"ripperdoc-ai","name":"ripperdoc.ai","engagement_type":"personal_project","status":"in_use","users":"author","summary":"Denne siden. Trespråklig, med en jobbsøkingsmodul bak innlogging: henter utlysninger, rangerer dem, vurderer dem mot profilen og skriver utkast til søknader.","stack":["Next.js","TypeScript","PostgreSQL","MCP","Vercel"],"evidence":[{"kind":"page","url":"https://ripperdoc.ai"}]}],"summary_counts":{"salaried_employment_in_field_years":0,"commercial_client_deliveries":1,"own_project_count":5,"own_projects_in_use":2}},"toolkit":[{"id":"secrets-sync","name":"Synchronizacja sekretów (bws-env-sync, bws-vercel-sync)","kind":"fast_tool","status":"in_use","summary":"Bitwarden Secrets Manager som eneste kilde til sannhet for miljøvariabler, synkronisert til Vercel uten hemmeligheter i repoet og uten midlertidige filer. En tilhørende skill leser applikasjonskoden, skriver beskrivelsen av hver variabel selv og lagrer resultatet i `.env.example`."},{"id":"tablica-decyzji","name":"Tablica decyzji","kind":"fast_tool","status":"in_use","summary":"En liste med merknader fra en gjennomgang blir til et HTML-brett i én fil: du huker av hva som skal gjøres, avviser resten, kommenterer enkeltpunkter — og nederst settes en ferdig implementeringsprompt sammen, med en egen liste over hva som IKKE skal gjøres. Avvisningene teller like mye som godkjenningene, for uten dem vender modellen tilbake til de samme forslagene neste gang."},{"id":"feedback-studio","name":"Moduł zgłaszania sugestii","kind":"module","status":"in_use","summary":"Hentet ut av Ripper Inject: en flytende boble, en rapporteringsmodus som fanger opp den delen av siden det gjelder, taledikt og et adminpanel med chat over innmeldingene. Den kobles inn gjennom en portkontrakt — autentisering, database og modell er parametre, ikke antakelser — så den fungerer uavhengig av stacken i applikasjonen den havner i."},{"id":"social-studio","name":"Ripper Social Studio","kind":"module","status":"in_use","summary":"En modul for sosiale medier: en køordning der innlegg går gjennom utkast, gjennomgang, godkjenning, planlegging og publisering rett via plattformenes API-er, med miniatyrbilder generert i nettleseren. Den ble bygget inne i Limes Dekor-leveransen og deretter flyttet inn i ripperdoc.ai — over to ulike produksjoner, med en annen database, annen autentisering og et annet visuelt lag. Det er dét som beviser gjenbrukbarhet: ikke en påstand, men en andre utrulling."},{"id":"ripper-deep-search","name":"Ripper Deep Search","kind":"module","status":"design_only","summary":"En researchmekanisme for jobbsøking: fra et arbeidsgivernavn bygger den et dossier av påstander, hver med adressen til kilden sin. Planleggeren ser aldri råteksten fra siden — den får bare filtrerte påstander, noe som stenger veien for instruksjoner injisert fra en annens side. Status: kun design, ingen kode."}],"education":[{"period":"2024 – 2025","institution":"Wright, Trafikkskole","field":"Førerkort klasse C med yrkessjåførkvalifikasjon."},{"period":"2021 – 2022","institution":"Noroff — School of Technology and Digital Media","field":"Backend Web Development (.NET)."},{"period":"2002 – 2006","institution":"Universitetet i Gdańsk","field":"Økonomi, spesialisering: analytiker."}],"limitations":[{"id":"no-commercial-ai-employment","type":"experience","statement":"Ingen fast ansettelse som KI- eller automatiseringsspesialist. Kommersiell erfaring er én kundeleveranse — Limes Dekor, fortsatt under ferdigstilling; resten er egne systemer.","mitigation":"Kundeleveransen dekker hele spennet: prosessanalyse, arkitektur, grensesnitt, implementering, integrasjoner og videre utvikling. Egne systemer er i daglig bruk, ikke demoer — de har brukere, feil i produksjon og beslutninger som måtte tas om igjen."},{"id":"norwegian-b1","type":"language","statement":"Norsk på B1-nivå, egenvurdert. Skriftlig arbeid og lesing går greit; å lede workshops på norsk gjør det ennå ikke.","mitigation":"Engelsk som arbeidsspråk er uproblematisk. Norsken læres med en app han selv har bygget."},{"id":"no-cs-degree","type":"credential","statement":"Ingen grad i informatikk. Utdanningen er økonomi (Universitetet i Gdańsk) og et backend-bootcamp i .NET (Noroff).","mitigation":"Flere norske utlysninger åpner eksplisitt for at relevant erfaring kan erstatte formell utdanning."},{"id":"small-scale","type":"scale","statement":"Systemene er bygget for én person, et lite verksted eller en lukket testgruppe. Ingen erfaring med drift for hundrevis av brukere.","mitigation":"Til gjengjeld er hele kjeden hans egen: database, deploy, feilsøking og beslutningen om hva som ikke skal bygges."}],"career_path_note":"I nesten to tiår jobbet jeg i tekniske roller — datanettverk, sikkerhetssystemer, implementeringer og teknisk støtte. Gjennom alle disse årene, og særlig etter at jeg slo meg ned i Norge, var programmering, automatisering og AI aldri jobbtittelen min, men alltid lidenskapen min. På fritiden fortsatte jeg å lære, bygde egne prosjekter og eksperimenterte med backend-utvikling, self-hosting og API-integrasjoner — et parallelt spor som vokste jevnt ved siden av yrkeslivet mitt. I 2025 begynte jeg som lastebilsjåfør mens jeg fullførte førerkort klasse C. En måned senere satte en alvorlig arbeidsulykke en stopper for den veien. I stedet for å se det som et tilbakeslag, gjorde jeg det til et vendepunkt — øyeblikket for bevisst å gjøre en mangeårig lidenskap til min yrkesretning. Dette er ikke et sprang ut i det ukjente — det er en fortsettelse av en interesse jeg har utviklet i årevis. Jeg fullførte backend .NET-bootcampen hos Noroff, og i dag bygger jeg prosjekter, automatiseringer og AI-baserte systemer og jobber praktisk med self-hosted infrastruktur, Docker og API-integrasjoner. Jeg lærer ved å bygge — og nå gjør jeg det bevisst, som en karriere.","seeking":"Jeg ser etter en reell retning innen teknologi — utdanning og arbeid rundt AI, automatisering og systemer. Jeg lærer best ved å bygge: koble systemer, feile i konfigurasjoner, fikse dem og føre en idé fram til noe som fungerer.","contact":{"request_form":"https://ripperdoc.ai/no/o-mnie#kontakt","response_time":"usually within 24 hours"}}