Available for advisory rolesDostępny doradczo

I build agentic systems that survive production.Buduję systemy agentowe, które wytrzymują produkcję.

Tech lead and solutions architect in Poznań. I work the messy middle where product meets engineering.Tech lead i architekt rozwiązań z Poznania. Pracuję tam, gdzie produkt spotyka się z inżynierią.

Mikołaj Szpakowski

Latest podcastOstatni podcast

Is local AI good enough yet?Czy lokalne AI jest już wystarczająco dobre?

Value Builders TalksValue Builders Talks, episodeodcinek 17. 55m, in Polishpo polsku.

What we coveredO czym rozmawialiśmy

  1. Vendor-agnostic AI: no model lock-inAgnostyczne AI: bez vendor lock-in
  2. Open models catching flagship LLMsOtwarte modele doganiają flagowce
  3. Engineering your company into contextTwoja firma jako kontekst dla LLM
  4. Why models confidently get math wrongDlaczego modele mylą się w matematyce
  5. Prompt injection: how it really landsPrompt injection: jak naprawdę wygląda
  6. Agents that draft but never sendAgent szkicuje, ale nigdy nie wysyła
  7. Vibe coding: where the line actually isVibe coding: gdzie naprawdę jest granica

Selected workWybrane projekty

Project management agentAgent do zarządzania projektami

Runs in a continuous loop across email, meeting transcripts, ClickUp and more. It advances the pipeline and drafts follow-ups. Humans approve, the agent handles everything else.Działa w ciągłej pętli na mailach, transkrypcjach spotkań i ClickUpie. Przesuwa lejek sprzedaży i szkicuje follow-upy. Ludzie zatwierdzają; agent robi resztę.

PersonitPersonit
2025
150+ hrs/wkautomatedzautomatyzowane

OverviewOpis

A headless AI agent that eliminates manual CRM work for the agency's sales and project management pipeline. It runs in a continuous loop: it polls the shared inbox every 5 minutes, responding to webhooks from Fillout booking forms and tl;dv meeting recordings, and monitoring ClickUp for stale tasks, GitHub for commits. Each trigger kicks off the same cycle: gather full context from all connected sources, decide what changed, act.Headless agent AI, który usuwa ręczną pracę z CRM w lejku sprzedażowym agencji. Działa w ciągłej pętli: co 5 minut sprawdza współdzieloną skrzynkę, reaguje na webhooki z formularzy Fillout i nagrań tl;dv, a do tego monitoruje ClickUp pod kątem zaległych zadań. Każdy trigger uruchamia ten sam cykl: zbierz pełny kontekst ze wszystkich źródeł, zdecyduj, co się zmieniło, wykonaj akcję.

ChallengesWyzwania

A sales inbox at a growing agency is noisy. Emails arrive from different stages of the same pipeline; context is scattered across ClickUp, Gmail threads, meeting notes, and booking forms. Automation that misreads context corrupts the CRM, and a corrupted CRM is harder to recover from than a manual one.Skrzynka sprzedażowa w rosnącej agencji szybko robi się chaotyczna. Maile wpadają z różnych etapów tego samego procesu, a kontekst leży osobno w ClickUpie, wątkach Gmaila, notatkach ze spotkań i formularzach. Automatyzacja, która źle odczyta kontekst, psuje CRM, a popsuty CRM trudniej odkręcić niż ręczną pracę.

SolutionRozwiązanie

Built an agent loop that reads everything relevant before acting: ClickUp task history, Gmail thread, form submissions, and meeting transcripts assembled into one context window. CRM mutations are gated by a human-only status list. Email sending is never invoked by the agent; a deterministic Slack handler sends only when the PM clicks approve.Zbudowałem ograniczoną pętlę agenta z limitem 30 kroków, która czyta wszystko przed działaniem: historię zadania w ClickUpie, wątek Gmaila, formularze i transkrypcje spotkań w jednym oknie kontekstu. Mutacje w CRM są ograniczone do statusów przeznaczonych dla człowieka. Agent nigdy nie wysyła maili; deterministyczny handler Slacka robi to dopiero po kliknięciu approve przez PM-a.

OutcomeEfekt

The CRM stays current without anyone touching it. PMs open Slack, see a draft follow-up with full context already attached, and click send or dismiss. Routine pipeline overhead dropped to near-zero for standard stages.CRM pozostaje aktualny bez ręcznego klikania. PM otwiera Slacka, widzi szkic follow-upu z pełnym kontekstem i klika send albo dismiss. Rutynowy narzut operacyjny w standardowych etapach spadł prawie do zera.

Low-code → production platformOd low-code do platformy produkcyjnej

Rearchitected an accommodation marketplace from a Bubble MVP to a hybrid stack. It kept its velocity and gained reliability.Przebudowałem marketplace zakwaterowań z MVP w Bubble do hybrydowego stacku. Tempo zostało, a niezawodność wzrosła.

RentLitoRentLito
2023-2025
35k+ nightsacross 8,000 bedsna 8 000 miejsc noclegowych

OverviewOpis

RentLito is a B2B/B2C accommodation marketplace that facilitated over 35,000 nights across 8,000+ available beds. We ran as a full product team of developers, designers, a PO and QA. My role grew from full-stack delivery of core features to full Tech Lead accountability inside a corporate business unit with startup-level autonomy.RentLito to marketplace zakwaterowań B2B/B2C, który obsłużył ponad 35 000 noclegów na 8 000 dostępnych miejsc. Pracowaliśmy jako pełny zespół produktowy: developerzy, designerzy, PO i QA. Moja rola urosła od full-stack delivery core funkcji do pełnej odpowiedzialności Tech Leada w korporacyjnej jednostce działającej z autonomią startupu.

ChallengesWyzwania

The platform was built full-code from the start, causing slow iteration cycles and high infrastructure costs. The team was shipping features that missed what users actually needed.Platforma od początku była budowana full-code, co spowalniało iteracje i podnosiło koszty infrastruktury. Zespół dowoził funkcje, które nie zawsze odpowiadały temu, czego użytkownicy naprawdę potrzebowali.

SolutionRozwiązanie

Introduced Bubble + Xano + n8n as the delivery stack, enabling fast iteration without sacrificing complex booking and inventory logic. Built direct relationships between the team and real users, turning raw feedback into actionable specs.Wprowadziłem Bubble + Xano + n8n jako stack dostarczania, który pozwolił szybko iterować bez rezygnacji ze złożonej logiki bookingowej i inventory. Zbudowałem bezpośrednią relację między zespołem a realnymi użytkownikami, zamieniając surowy feedback w konkretne specyfikacje.

OutcomeEfekt

Reduced time to market by 80%+ versus the previous full-code approach. RentLito became the go-to platform for employment agencies and property owners in the temporary housing market.Time to market spadł o 80%+ względem poprzedniego podejścia full-code. RentLito stało się główną platformą dla agencji pracy i właścicieli nieruchomości w rynku zakwaterowań tymczasowych.

Startup product deliveryDostarczanie produktów startupowych

Product, technology and business, held together from day one. Fifty-plus engagements with founders who needed one person at the intersection of all three.Produkt, technologia i biznes trzymane razem od pierwszego dnia. Ponad 50 współprac z founderami, którzy potrzebowali jednej osoby na styku tych trzech obszarów.

50+ founders50+ founderów
2024-2025
50+ MVPsshippeddostarczonych

OverviewOpis

Startup product delivery spanning education, legal, finance, healthcare, hospitality, real estate, gaming, HR, media, sports, and events. Each engagement began with a founder's fuzzy brief: a problem half-understood and a deadline already slipping. The work was never purely technical: product discovery, stakeholder alignment, and architecture happened in the same conversation.Dostarczanie produktów startupowych w edukacji, legalu, finansach, healthcare, hospitality, real estate, gamingu, HR, mediach, sporcie i eventach. Każda współpraca zaczynała się od mglistego briefu foundera: problem częściowo nazwany, a deadline już się przesuwa. Praca nigdy nie była wyłącznie techniczna: discovery produktu, alignment stakeholderów i architektura działy się w tej samej rozmowie.

ChallengesWyzwania

Every domain brings different compliance surfaces, user mental models, and integration landscapes: government APIs in legal, real-time inventory in hospitality, AI pipelines in finance, multi-role access in HR. Consistent constraint: scope early enough to prevent overbuilding, ship fast enough to keep founders solvent.Każda domena ma inne ryzyka compliance, modele mentalne użytkowników i krajobraz integracji: rządowe API w legalu, inventory w czasie rzeczywistym w hospitality, pipeline'y AI w finansach, wielorole dostępów w HR. Stałe ograniczenie: zakresować wystarczająco wcześnie, żeby nie przeinwestować, i dowozić wystarczająco szybko, żeby founder nie stracił paliwa.

SolutionRozwiązanie

A consistent delivery playbook: domain discovery first, architecture spike second, then pragmatic stack selection. React + Supabase for the data layer and auth; n8n or custom agent pipelines when automation is the core value; AI-assisted development to compress iteration cycles.Powtarzalny playbook delivery: najpierw discovery domeny, potem spike architektoniczny, a dopiero później pragmatyczny dobór stacku. React + Supabase dla danych i auth; n8n albo customowe pipeline'y agentowe, gdy automatyzacja była rdzeniem wartości; AI-assisted development, żeby skrócić cykle iteracji.

OutcomeEfekt

50+ MVPs shipped, most in under 3 months per engagement. Multiple clients went on to raise funding or expand teams. Recurring pattern: founders who couldn't articulate their problem at kickoff had a clear product spec by end of week one.Dostarczone 50+ MVP, większość w mniej niż 3 miesiące na współpracę. Kilku klientów później pozyskało finansowanie albo rozbudowało zespoły. Powtarzalny wzorzec: founderzy, którzy na kickoffie nie umieli nazwać problemu, pod koniec pierwszego tygodnia mieli klarowną specyfikację produktu.

Accommodation ops platformPlatforma operacyjna dla zakwaterowań

Built an internal tool for RentLito's accommodation specialists that wires invoicing, e-signatures and gov.pl APIs into one compliance workflow beside the main marketplace.Zbudowałem wewnętrzne narzędzie rozszerzające RentLito dla specjalistów zakwaterowań. Spina faktury, e-podpisy i API gov.pl w jeden workflow compliance obok głównego marketplace'u.

EWL GroupEWL Group
2024
4+ servicesunifiedujednolicone

OverviewOpis

RentLito handled thousands of bookings but running it at scale required specialist work the marketplace UI never covered: invoicing, compliance documentation, and Polish government API interactions. We built a dedicated internal tool for accommodation specialists: a separate interface extending the marketplace's data model without touching the end-user product.RentLito obsługiwało tysiące rezerwacji, ale praca na takiej skali wymagała specjalistycznych procesów, których UI marketplace'u nigdy nie obejmował: fakturowania, dokumentacji compliance i interakcji z polskimi API rządowymi. Zbudowaliśmy dedykowane narzędzie wewnętrzne dla specjalistów zakwaterowań: osobny interfejs rozszerzający model danych marketplace'u bez ruszania produktu dla użytkowników końcowych.

ChallengesWyzwania

Polish government APIs are poorly documented and prone to silent failures. E-signature flows with Autenti introduced async state to manage across multiple parties. Specialists needed the tool to feel continuous with their existing RentLito workflow, with no separate system to switch to.Polskie API rządowe są słabo udokumentowane i potrafią psuć się po cichu. Flow e-podpisów z Autenti wprowadził asynchroniczny stan między kilkoma stronami. Specjaliści potrzebowali narzędzia, które czuje się jak część ich pracy w RentLito, a nie osobny system, między którym trzeba się przełączać.

SolutionRozwiązanie

Built an orchestration layer in Xano handling Autenti e-signatures, invoicing flows, and gov.pl API calls. A Bubble interface surfaced the right operations to accommodation specialists at the right workflow stage. It used the main marketplace data, so context was always in one place.Zbudowałem warstwę orkiestracji w Xano obsługującą e-podpisy Autenti, fakturowanie i wywołania API gov.pl. Interfejs w Bubble pokazywał właściwe operacje specjalistom na właściwym etapie workflow. Korzystał z danych głównego marketplace'u, więc kontekst zawsze był w jednym miejscu.

OutcomeEfekt

Specialists went from manual document handling and cross-tool tab-switching to a single interface covering their full operational workflow. The marketplace stayed clean for end users; the internal tool handled the compliance and invoicing complexity that specialists needed daily.Specjaliści przeszli z ręcznej obsługi dokumentów i przełączania kart między narzędziami do jednego interfejsu obejmującego cały workflow operacyjny. Marketplace pozostał czysty dla użytkowników końcowych, a narzędzie wewnętrzne wzięło na siebie codzienną złożoność compliance i fakturowania.

AI & tech leadership forumForum przywództwa AI i technologii

Designed and run a weekly cross-team meeting that keeps a 15-person agency ahead of the AI shift. It turns model releases and tooling changes into process improvements before they become blockers.Zaprojektowałem i prowadzę cotygodniowe spotkanie cross-teamowe, które trzyma 15-osobową agencję przed zmianą AI. Zamienia premiery modeli i zmiany w narzędziach na usprawnienia procesu, zanim staną się blockerami.

PersonitPersonit
2025
weekly cadenceteam alignmentalignment zespołu

OverviewOpis

As AI tooling shifted fast, the gap between what the team knew and what they needed to know widened weekly. I designed and run a standing internal meeting where engineers, delivery leads and PMs sit in one room and discuss what changed in AI and tech and what it means for how we work. Part briefing, part retrospective, part structured synthesis into process changes.Gdy narzędzia AI zaczęły zmieniać się bardzo szybko, luka między tym, co zespół wiedział, a tym, co musiał wiedzieć, rosła z tygodnia na tydzień. Zaprojektowałem i prowadzę stałe spotkanie wewnętrzne: inżynierowie, delivery leads i PM-owie w jednym pokoju, rozmawiający o tym, co zmieniło się w AI i technologii oraz co to znaczy dla naszej pracy. Częściowo briefing, częściowo retrospektywa, częściowo strukturalna synteza w zmiany procesu.

ChallengesWyzwania

Getting a busy agency team to treat a weekly meeting as high-value rather than overhead. AI noise is high. Telling signal from hype requires domain knowledge most teams don't have time to build independently. Without a forcing function, improvements from individual discoveries never propagate to the whole team.Sprawić, żeby zajęty zespół agencyjny traktował cotygodniowe spotkanie jako wysoką wartość, a nie narzut. Szum wokół AI jest ogromny. Odróżnienie sygnału od hype'u wymaga wiedzy domenowej, której większość zespołów nie ma kiedy budować samodzielnie. Bez stałego mechanizmu usprawnienia odkryte przez pojedyncze osoby nie rozchodzą się po całym zespole.

SolutionRozwiązanie

Structured the meeting in three parts: an external AI/tech briefing (what shipped, what matters for our work), an internal retrospective (what's slowing us down), and a commitments block (one process change before next week). I moderate and interpret. I do not lecture. The team does the thinking; I make sure it converts to action.Ułożyłem spotkanie w trzech częściach: zewnętrzny briefing AI/tech (co wyszło i co ma znaczenie dla naszej pracy), retrospektywa wewnętrzna (co nas spowalnia) i blok zobowiązań (jedna zmiana procesu przed kolejnym tygodniem). Moderuję i tłumaczę kontekst. Nie prowadzę wykładu. Zespół myśli; ja dbam, żeby myślenie zamieniało się w działanie.

OutcomeEfekt

Process changes that used to take quarters to propagate now move in weeks. The team has shared context on AI capabilities and a standing habit of acting on it. Multiple tooling improvements and delivery shortcuts emerged directly from the forum. It's now a fixed part of the sprint calendar.Zmiany procesowe, które wcześniej rozchodziły się kwartałami, teraz dzieją się w tygodniach. Zespół ma wspólny kontekst wokół możliwości AI i stały nawyk działania na tej podstawie. Kilka usprawnień narzędziowych i skrótów delivery wyszło bezpośrednio z forum. Dziś to stały element kalendarza sprintu.

From business case to shipped codeOd biznesu do działającego kodu

On the business sidePo stronie biznesu

I scope, price and run the workshops myself. What the system is worth decides what gets built first.Sam ustalam zakres, wyceniam i prowadzę warsztaty. To, ile system jest wart, decyduje, co budujemy najpierw.

On the engineering sidePo stronie inżynierii

I design the architecture and run coding agents in parallel. Tests and review decide what ships.Projektuję architekturę i prowadzę równolegle agentów, którzy piszą kod. O tym, co trafia na produkcję, decydują testy i review.

ServicesUsługi

Four ways to work together.Cztery sposoby współpracy.

Business Automation & Web ApplicationsAutomatyzacje biznesowe i aplikacje webowe

Project-basedProjektowo

Ship automations, internal tools, and customer-facing web apps on React and n8n, when that stack is the right fit.Dostarczanie automatyzacji, narzędzi wewnętrznych i aplikacji dla klientów na React i n8n, wtedy gdy ten stack ma sens.

AI Agent ArchitectureArchitektura agentów AI

2-6 weeks2-6 tygodni

Design and scope agentic systems that actually ship. From prototype to production, with the humans still in the loop.Projektowanie i doprecyzowanie systemów agentowych, które faktycznie trafiają na produkcję. Od prototypu do stabilnego wdrożenia, z ludźmi nadal w pętli.

Team Leadership & MentoringPrzywództwo techniczne i mentoring

Currently fullObecnie brak miejsc

Coach your tech lead, mentor mid-level devs, or run sprint rituals while you hire. Leadership capacity on demand.Wsparcie dla tech leada, mentoring mid-level developerów albo prowadzenie rytuałów sprintowych, gdy dopiero budujesz zespół. Dojrzałość techniczna na żądanie.

Technical ConsultingKonsulting techniczny

OngoingStała współpraca

Broad technical advisory for founders and product teams. Architecture, tooling, hiring, and the decisions you'd rather not make alone.Szerokie doradztwo techniczne dla founderów i zespołów produktowych. Architektura, narzędzia, hiring i decyzje, których lepiej nie podejmować w pojedynkę.

Mar 2025 - Presentmar 2025 - obecnie

Personit, software & AI agencyagencja software & AI

  • Tech LeadTech LeadNov 2025 - Presentlis 2025 - obecnie
  • Solutions Architect & Low-code DeveloperArchitekt rozwiązań i low-code developerMar 2025 - Presentmar 2025 - obecnie
What I didCzym się zajmowałem
  • Driving technical direction and team coordination in a fast-paced agile environment.Prowadzę kierunek techniczny i koordynację zespołu w szybkim środowisku agile.
  • Trusted technical advisor during pre-sales, shaping scopes and platform strategies.Wspieram pre-sales jako zaufany doradca techniczny. Kształtuję zakresy i strategie platformowe.
  • Designing scalable data structures and integration logic across third-party systems.Projektuję skalowalne struktury danych i logikę integracji między zewnętrznymi systemami.
  • Delivering production-ready solutions using React, Supabase, TypeScript, and n8n.Dostarczam rozwiązania produkcyjne w React, Supabase, TypeScript i n8n.
  • Shipped 30+ client products across EdTech, LegalTech, FinTech, Healthcare, Hospitality, and HR, from scoping call to production.Dostarczyłem 30+ produktów klienckich w EdTech, LegalTech, FinTech, Healthcare, Hospitality i HR, od rozmowy scopingowej do produkcji.

Oct 2023 - Mar 2025paź 2023 - mar 2025

EWL Group, enterpriseenterprise

  • Technical LeadLider technicznyJul 2024 - Mar 2025lip 2024 - mar 2025
  • Bubble DeveloperBubble DeveloperOct 2023 - Mar 2025paź 2023 - mar 2025
What I didCzym się zajmowałem
  • Directed technical strategy and served as tech consultant to the business owner.Prowadziłem strategię techniczną i wspierałem business ownera jako konsultant techniczny.
  • Led business process discovery with users and stakeholders.Prowadziłem discovery procesów biznesowych z użytkownikami i stakeholderami.
  • Designed system architecture: components, data flows, integrations with corporate services.Projektowałem architekturę systemu: komponenty, przepływy danych i integracje z usługami korporacyjnymi.
  • Mentored junior/regular devs and set development best practices.Mentorowałem juniorów i regularów oraz ustawiałem dobre praktyki developerskie.

Jan 2023 - May 2023sty 2023 - maj 2023

MountainSoft, low-code agencyagencja low-code

  • Junior Bubble DeveloperJunior Bubble DeveloperJan 2023 - May 2023sty 2023 - maj 2023
What I didCzym się zajmowałem
  • Independently led development of a key web application end-to-end.Samodzielnie poprowadziłem development kluczowej aplikacji webowej end-to-end.
  • Translated business needs into feature requirements.Przekładałem potrzeby biznesowe na wymagania funkcjonalne.
  • Designed UI and implemented core functionality under minimal supervision.Projektowałem UI i wdrażałem core functionality przy minimalnym nadzorze.

TalksWystąpienia

  • 2026

    Build fast, break fasterBuduj szybko, psuj szybciej

    AI Product Heroes PoznańAI Product Heroes Poznań

    TalkPrelekcja
  • 2026

    AI Coding with ClaudeKodowanie z AI w Claude

    Poznań University of Economics and BusinessUniwersytet Ekonomiczny w Poznaniu

    WorkshopWarsztat
  • 2026

    Implement OpenClaw that doesn't biteWdróż OpenClaw tak, żeby nie ugryzł

    AI_devs PoznańAI_devs Poznań

    TalkPrelekcja
  • 2026

    How to build digital product in 2026Jak budować produkt cyfrowy w 2026

    Laboratorium Innowatora, UAM PoznańLaboratorium Innowatora, UAM Poznań

    TalkPrelekcja
  • 2025

    Are no-code tools enterprise ready?Czy narzędzia no-code są gotowe na enterprise?

    EWL Group, Internal Tech ConferenceEWL Group, wewnętrzna konferencja technologiczna

    TalkPrelekcja

NowTeraz

  • Leading a 5-person development team at Personit.Prowadzę 5-osobowy zespół developerski w Personit.
  • Speaking on AI agents at the seam where tech meets product.Mówię o agentach AI w miejscu, gdzie technologia spotyka się z produktem.
  • Exploring how agent handoffs break down in long-running ops workflows.Sprawdzam, gdzie handoffy między agentami rozpadają się w długich workflow operacyjnych.
  • Prepping a podcast appearance on AI agents.Przygotowuję występ podcastowy o agentach AI.
  • Mentoring students on finding a first job in IT.Mentoruję studentów szukających pierwszej pracy w IT.

Prefer a shell?Wolisz terminal?

Everything on this page, as a filesystem. Type help to start.Cała ta strona jako system plików. Wpisz help, żeby zacząć.

Open it full screen from anywhere withOtwórz na pełnym ekranie z dowolnego miejsca: ` orlub ⌘K

~/mszp
$
TrySpróbuj

Got a project? Let's talk.Masz projekt? Porozmawiajmy.

Tell me who you are, what feels stuck, and what a good next month would look like. I reply within 48 hours.Napisz, kim jesteś, co stoi w miejscu i jak wyglądałby dobry kolejny miesiąc. Odpowiadam w ciągu 48 godzin.