AI Engineer · forward deployed Forward Deployed AI Engineer

PiotrSobczak

Poznaję proces firmy od środka i zostawiam system, na którym zespół pracuje codziennie.

I get to know a company's process from the inside and leave a system the team uses every day.

Od rozmowy z zespołem, zdalnie albo na miejscu, przez spec i prototyp, do aplikacji w produkcji i szkolenia ludzi. Pracuję spec-driven i agentowo, w Claude Code z własnymi agentami, ze specem z kryteriami odbioru, testami i pomiarem na prawdziwych danych. Ostatnio zbudowałem aplikację dla zespołu handlowego importera aut z USA, dziś w produkcji.

From a conversation with the team, remote or on site, through spec and prototype, to an application in production and a trained team. I work spec-driven and agentically, in Claude Code with my own agents, with a spec with acceptance criteria, tests and measurement on real data. Most recently I built an application for a US car importer's sales team, now in production.

Piotr Sobczak

Jak pracujęHow I work

01 Discovery. Dzień z zespołem, zdalnie albo na miejscu. Mapa procesu i przepływu danych, tak jak wygląda naprawdę.Discovery. A day with the team, remote or on site. A map of the process and the data flow, the way it really works.
02 Spec. Problem, zakres i czego nie robimy, kryteria odbioru, decyzja, gdzie potrzebny jest model, a gdzie wystarczy reguła.Spec. The problem, the scope and what we don't do, acceptance criteria, and the decision where a model is needed and where a rule will do.
03 Prototyp na prawdziwych danych. W tygodniach, nie miesiącach. Zespół pracuje na nim od pierwszego dnia, ja mierzę, co działa.Prototype on real data. Weeks, not months. The team works on it from day one, I measure what works.
04 Produkcja etapami. Pierwsza wersja trafia do zespołu szybko, kolejne wydania wynikają z pomiaru i rozmów z użytkownikami, aż system pokryje cały zakres ze specu.Production in stages. The first version reaches the team quickly, further releases come from measurement and user conversations, until the system covers the full scope of the spec.
05 Przekazanie. Dokumentacja, szkolenie zespołu, opieka po wdrożeniu.Handover. Documentation, team training, support after go-live.

Ten proces opisuję krok po kroku w serii na LinkedIn: Wdrożenie AI od A do Z, siedem części.

I describe this process step by step in a LinkedIn series: AI deployment from A to Z, seven parts.

A jak wygląda mój system pracy z agentem od środka, z plikami, rolami modeli i strażnikami: Drugi mózg.

And how my system of working with an agent looks from the inside, with files, model roles and guards: Second brain.

System ofertowy dla importera aut z USAOffer system for a US car importer

2026 · dla klienta · w produkcji2026 · client project · in production

W praktyce CRM handlowca zbudowany wokół ofert z aukcji, nie wokół notatek.

In practice a salesperson's CRM built around auction offers, not around notes.

Problem

Każdą ofertę składano ręcznie. Wyszukać pozycje, policzyć, opisać, skleić wiadomość. Razy każdy klient, razy każdy dzień. Handlowiec spędzał dzień na sklejaniu, nie na rozmowie z klientem.

Every offer was assembled by hand. Search, calculate, describe, paste into a message. Times every client, times every day. Salespeople spent the day assembling, not talking to clients.

RozwiązanieSolution

Zapytanie klienta zamienia się w warianty kryteriów. Pasujące pozycje z aukcji podpinają się same. Handlowiec selekcjonuje je jedna po drugiej i jednym kliknięciem w panelu wysyła ofertę mailem albo WhatsAppem z firmowej skrzynki. Panel pokazuje, kto kliknął i kiedy, a rytm kolejnych ofert pilnuje się sam. Człowiek decyduje, system składa.

A client request becomes search variants. Matching auction listings attach themselves. The salesperson reviews them one by one and with one click in the panel sends the offer by e-mail or WhatsApp from the company mailbox. A panel shows who clicked and when, and the cadence of follow-up offers takes care of itself. The human decides, the system assembles.

Co system robiWhat the system does

Własna aplikacja klienta, pod jego marką. Zapytanie zamienia się w warianty kryteriów, auta z Copart i IAAI podpinają się same, system czyta uszkodzenia i dokumenty i odrzuca kasacje, zanim trafią do oferty. Handlowiec ma kolejkę ofert do zatwierdzenia i kartę każdego klienta, wysyła jednym kliknięciem z firmowej skrzynki albo WhatsAppem, klient nie loguje się nigdzie. Panel pokazuje, kto kliknął i kiedy, a kolejne oferty idą w ustalonym rytmie. Kryteria, szablony, źródła zapytań i konta zespołu ustawione pod klienta.

The client's own application, under its own brand. A request becomes search variants, cars from Copart and IAAI attach themselves, the system reads damage and documents and rejects salvage cases before they reach an offer. The salesperson has a queue of offers to approve and a card for every client, sends with one click from the company mailbox or via WhatsApp, and the client never logs in anywhere. A panel shows who clicked and when, and follow-up offers go out on a set cadence. Criteria, templates, request sources and team accounts configured for the client.

Pod maskąUnder the hood
  • Dane. Aukcje Copart i IAAI po API dostawcy, pull co godzinę, idempotentny upsert i wygaszanie ofert, które zniknęły. Bez scrapingu.
  • Dopasowanie. Deterministyczne reguły w SQL na wariantach kryteriów: marka, model, rocznik, dokument, uszkodzenia, odsiew kasacji i tytułów nienaprawialnych. Skalibrowane pomiarem na tysiącach realnych aut.
  • AI w jednym miejscu. Model czyta zapytanie klienta i zamienia je w strukturalne kryteria. Structured output, model wymienny, benchmark na 200 prawdziwych zapytaniach, dane osobowe usuwane przed wysłaniem do modelu.
  • Wysyłka i kliknięcia. Mail przez SMTP z firmowej skrzynki klienta, szablony pod etap relacji, WhatsApp przez link z tokenem. Każda pozycja ma własny token, kliknięcie to przekierowanie z zapisem czasu, stąd panel. Scheduler buduje kolejne oferty w rytmie per odbiorca, tylko z nowych aut.
  • Architektura heksagonalna. Rdzeń bez zależności od zewnętrznych API, adaptery na źródło aukcji, mail, WhatsApp, CRM, model i scheduler. Po to, żeby wymienić dostawcę danych albo kanał bez ruszania rdzenia i testować rdzeń bez sieci. Instancja per klient z własną konfiguracją, sekretami i bazą.
  • Deployment i jakość. Jeden obraz floty, osobny kontener i Postgres per klient, migracje Alembic, CI z lintem, typami, testami i kontrolą dryfu schematu na prawdziwym Postgresie, E2E w Playwright, monitoring anomalii biznesowych (brak dopasowań, cisza w wysyłce, spadek puli) z alertami, konta imienne z rolami, opt-out w każdej wiadomości.
  • Data. Copart and IAAI auctions via the provider's API, hourly pull, idempotent upsert and expiry of listings that disappeared. No scraping.
  • Matching. Deterministic SQL rules on criteria variants: make, model, year, document, damage, filtering out salvage and non-repairable titles. Calibrated by measurement on thousands of real cars.
  • AI in one place. A model reads the client's request and turns it into structured criteria. Structured output, replaceable model, benchmarked on 200 real requests, personal data stripped before anything reaches the model.
  • Sending and clicks. E-mail over SMTP from the client's own mailbox, templates per stage of the relationship, WhatsApp via a tokenised link. Every listing carries its own token, a click is a redirect with a timestamp, which feeds the panel. A scheduler builds follow-up offers on a per-recipient cadence, from new cars only.
  • Hexagonal architecture. A core with no dependency on external APIs, adapters for the auction source, e-mail, WhatsApp, CRM, model and scheduler. So that a data provider or a channel can be swapped without touching the core, and the core can be tested without the network. One instance per client with its own configuration, secrets and database.
  • Deployment and quality. One fleet image, a separate container and Postgres per client, Alembic migrations, CI with lint, types, tests and schema drift checks on a real Postgres, Playwright E2E, business anomaly monitoring (no matches, silence in sending, shrinking pool) with alerts, named accounts with roles, opt-out in every message.
ZapytanieRequest
→
Warianty kryteriówSearch variants
→
Dopasowania z aukcjiAuction matches
→
Selekcja przez handlowcaSalesperson review
→
Wysyłka (mail / WhatsApp)Send (e-mail / WhatsApp)
→
Panel kliknięćClick panel
→
Kolejne oferty w rytmieNext offers on cadence
1 000+
ofert miesięcznie w zespole 3 osóboffers a month in a team of 3
36 min
mediana do pierwszego kliknięciamedian to first click
~70
klientów naraz na osobęclients per person at once
Python FastAPI SQLAlchemy Alembic PostgreSQL Docker Gemini

Systemy dedykowane buduję pod marką Procesograf I build dedicated systems under the Procesograf brand

TeleRecepcja.pl

2026 · własny produkt2026 · own product

Voice-first CRM dla warsztatów samochodowych. Mechanik mówi, system robi resztę.

Voice-first CRM for auto repair shops. The mechanic talks, the system does the rest.

Problem

Mechanik pod autem, ręce w oleju, telefon dzwoni. Albo nie odbierze, albo zapomni szczegóły. Po godzinach pracy nie odbiera nikt. Połowa informacji ginie.

Mechanic under the car, hands in oil, phone ringing. Either the call is missed or the details are forgotten. After hours, nobody picks up. Half the information is lost.

RozwiązanieSolution

System nagrywa rozmowę, AI wyciąga dane klienta i auta, a SMS z podsumowaniem trafia do mechanika i klienta. Zero karteczek.

The system records the call, AI extracts customer and car data, and an SMS summary goes to both mechanic and customer. Zero sticky notes.

Co system robiWhat the system does

Warsztat dostaje własny numer. W godzinach pracy rozmowa idzie do mechanika i jest nagrywana, po godzinach klient zostawia wiadomość. System transkrybuje nagranie, wyciąga dane klienta, auta i usterki, odsiewa spam i w minutę wysyła mechanikowi SMS ze skrótem i linkiem do zlecenia. Panel warsztatu: lista zleceń ze statusami, karta klienta i auta z historią, zdjęcia z odczytem tablicy, wycena i termin dyktowane głosem, a klient potwierdza SMS-em. Klient ma stronę statusu zlecenia, bez logowania. Do tego poranna odprawa SMS-em, kilka warsztatów na jednej instalacji z rozdzielonymi danymi, nagrania trzymane lokalnie i kasowane po terminie. Zbudowany w całości i sprawdzony na prawdziwych rozmowach testowych, wiosna 2026.

The workshop gets its own phone number. During opening hours the call goes to the mechanic and is recorded, after hours the customer leaves a message. The system transcribes the recording, extracts the customer, car and fault details, filters out spam and within a minute texts the mechanic a summary with a link to the job. Workshop panel: job list with statuses, customer and car cards with history, photos with plate recognition, quotes and appointments dictated by voice, and the customer confirms by SMS. The customer has a job status page, no login. On top of that a morning briefing by SMS, several workshops on one installation with separated data, recordings stored locally and deleted after the retention period. Built in full and checked on real test calls, spring 2026.

Szczegóły i opis przepływu: telerecepcja.pl.

Details and the flow description: telerecepcja.pl.

Nagranie rozmowyCall recording
→
TranskrypcjaTranscription
→
EkstrakcjaExtraction
→
SMS z magic linkiemSMS with magic link
→
PanelPanel

Architektura, backend, frontend, pipeline AI i integracje zaprojektowane i zbudowane przeze mnie.

Architecture, backend, frontend, AI pipeline and integrations designed and built by me.

Python FastAPI React TypeScript PostgreSQL Twilio Gemini ElevenLabs Docker

Piotr Sobczak, Bielsko-BiałaPiotr Sobczak, Bielsko-Biała, Poland

Zanim coś zbuduję, muszę to zrozumieć do końca. Stąd mapa procesu przed kodem i decyzje na liczbach, nie na przeczuciu.

Before I build anything, I need to understand it completely. Hence the process map before the code, and decisions based on numbers rather than gut feeling.

Wcześniej prowadziłem własny e-commerce, 15 osób. Sam układałem procesy całej firmy, od magazynu po obsługę klienta, wdrażałem automatyzacje i integracje między systemami. Jeszcze wcześniej logistyka B2B. Dlatego proces widzę od strony właściciela, nie tylko od strony kodu.

Before that I ran my own e-commerce business, 15 people. I designed the processes of the whole company myself, from the warehouse to customer service, and implemented automations and integrations between systems. Earlier, B2B logistics. That is why I see a process from the owner's side, not only from the code.

Poza pracą: historia, geopolityka, góry (Beskidy), rower, szachy Outside work: history, geopolitics, mountains (Beskidy), cycling, chess

Czym pracujęWhat I work with

· Buduję w: Python, FastAPI, PostgreSQL, Docker; frontend w React i TypeScript. Język i narzędzia dobieram do architektury, nie odwrotnie.I build in: Python, FastAPI, PostgreSQL, Docker; frontend in React and TypeScript. I pick the language and tools for the architecture, not the other way round.
· Pracuję z: Claude Code z własnymi skillami, agentami i hookami, MCP, API Claude / Gemini / OpenAI oraz modele open source, gdy dane mają zostać u klienta. Model dobrany do zadania, sprawdzony na prawdziwych danych, wymienny.I work with: Claude Code with my own skills, agents and hooks, MCP, Claude / Gemini / OpenAI APIs and open source models when the data has to stay with the client. Model picked per task, checked on real data, replaceable.

PorozmawiajmyLet's talk

LokalizacjaLocation
Bielsko-Biała / RemoteBielsko-Biała, Poland / Remote
FirmaCompany