Skip to main content

Product Engineering — od dewelopera do budowniczego produktów

TL;DR: Product Engineering to naturalne rozszerzenie roli fullstack developera o kompetencje produktowe: rozumienie użytkowników, analizę feedbacku, pricing i strategię. AI dramatycznie obniża próg wejścia, a zasada 80/20 pozwala szybko nabywać nowe umiejętności bez głębokiej specjalizacji. W materiale trzy konkretne umiejętności AI: radar na pomysły (agenci skanujący Reddit), AI code review i Notebook LM do feedbacku.

TL;DR

Product Engineering to naturalne rozszerzenie roli fullstack developera o kompetencje produktowe: rozumienie użytkowników, analiza feedbacku, pricing, strategia. AI dramatycznie obniża prog wejścia -- zasada 80/20 pozwala szybko nabywać nowe umiejętności bez głębokiego specjalizowania się. (Staff TLM w Waymo, ex-Allegro, founder Couple Room ze 150K instalacji) pokazuje trzy konkretne AI skille: radar na pomysły (agenci skanujący Reddit), AI code review i Notebook LM do feedbacku.

Kluczowe koncepcje

Kim jest Product Engineer?

Tradycyjny inżynier fokusuje się na kodzie -- skalowalność, architektura, algorytmy, frameworki. Product Engineer robi to wszystko, ale DODATKOWO:

"Fokusuje się na użytkownikach, dostarcza value. Kod jest narzędziem, ale nie jest celem samym w sobie. Rozumie w ogóle dlaczego my to budujemy. To bardzo zmniejsza szanse, że zbudujemy coś, co nie jest nikomu potrzebne." -- Kluczowe kompetencje Product Engineera poza kodem:

  • Analiza danych -- nie tylko metryki techniczne, ale analiza feedbacku od ludzi
  • Rozumienie strategii produktowej -- pricing, pozycjonowanie, roadmapa
  • Rozumienie biznesu -- dlaczego budujemy, dla kogo, jaki jest ROI
  • Rozmowa z użytkownikami -- wywiady, ankiety, analiza opinii

"Analiza danych jest w spektrum inżynieringu, ale na przykład analiza feedbacku od ludzi już mniej. Albo rozumienie pricingu -- to są rzeczy, które nie są oczywiste, a są krytyczne w product engineeringu." -- ### Trzy AI skille Product Engineera

Skill 1: Radar na pomysły -- agent skanujący Reddit (LangChain)

Sebastian zbudował agenta w LangChain do researchu rynku dla swojej aplikacji Couple Room (gra dla par, 150K instalacji):

"Naszym problemem było to, że chcieliśmy jak najlepiej dostosować content do par -- odkryć jakie te pary mogą mieć problemy, jakie mogą mieć chęci o czym rozmawiać. Naturalnym miejscem, gdzie dużo osób zadaje pytania często anonimowe, jest Reddit."

Jak działa agent:


# 1. Definiujemy model LLM
llm = ChatOpenAI(model="gpt-4")

# 2. Definiujemy narzędzia (tools)
tools = [
 DuckDuckGoSearchTool, # wyszukiwarka (darmowa)
 FileWriteTool # zapis wyników
]

# 3. System prompt
prompt = """Jesteś doświadczonym analitykiem rynku SaaS 
i ekspertem w wyszukiwaniu innowacyjnych pomysłów.
Przeszukaj Reddita, szukaj startup ideas,
skup się na realnych problemach."""

# 4. Budujemy agenta z executorem
agent = create_agent(llm, tools, prompt)
executor = AgentExecutor(agent=agent, tools=tools)

Jak to działa w praktyce:

  • Agent sam decyduje jakie zapytania wpisać w wyszukiwarkę
  • Np. "personal finance problems reddit", "small business challenges"
  • Przeszukuje internet aż uzna, że ma wystarczająco contentu
  • Generuje listę pomysłów/inspiracji
  • Output: lista powtarzających się problemów i wzorców

"Przeczesywaliśmy duże zbiory danych i staraliśmy się z tego wyłuszczać jakieś powtarzające się wzorce." -- Use case'y dla inżynierów:

  • Skanowanie issues/discussions na GitHubie dla konkretnych frameworków
  • Szukanie problemów w ekosystemie React/state management
  • Walidacja pomysłów: "Fajnie, jeśli ten swój problem też jest potwierdzony, że 100 innych osób zadało to samo pytanie na Reddicie"

LangChain -- platforma do budowania agentów:

  • Gotowe konektory (tools) do: wyszukiwarek, GitHuba, Gmaila, baz danych, MCP
  • Wektorowe bazy danych do embeddingów
  • LangSmith do observability i monitorowania agentów
  • Agent loop: cel -> planowanie kroków -> wykonanie -> obserwacja -> powtórz/zakończ

Skill 2: AI Code Review -- kursor/Code Rabbit w CI/CD

Problem solo foundera/małego zespołu:

"W momencie kiedy jesteś jedyna osoba, która widzi kod i chcesz szybko iterować, często zdarza się debug code w repo, zakomentowany kod, który nie powinien być komitowany. Normalnie adresujemy to w zespołach code review, ale czekanie na code review tygodniami to duży problem." -- Narzędzia:

  • Cursor Bot -- aplikacja GitHub, automatyczny review po każdym PR
  • Code Rabbit -- alternatywa, też dobre rezultaty
  • Integracja w pipeline CI/CD -- ten sam step co testy unitowe

Co wyłapuje AI code review:

  • Hasła zapisane plain text w local storage
  • Bypass login method (obejście autentykacji)
  • Zakomentowany/odkomentowany debug code
  • Race conditions w useEffect
  • Odwołania do null
  • Nieprawidłowe użycie API (np. Firebase signup)

"W przypadku Cursor Bot, w komentarzach jest link, który otwiera Cursora z promptem do naprawienia tego błędu."

Ważne zastrzeżenie:

"Nie wiem, czy bym się odważył [merdzyowac bez ludzkiego review]. W momencie kiedy to jest jedyna opcja, to uważam że lepszy jest AI code review niż zero code review. Ale traktuję to jako tylko dodatek." -- Przykład z Couple Room:

  • Kilka razy spadki konwersji z powodu błędów, które AI code review wyłapałby
  • Przy aplikacjach mobilnych dodatkowy review Google/Apple, ale na to nie można polegać

Skill 3: Notebook LM -- jedno źródło prawdy z feedbacku

Problem: feedback jest rozproszony i chaotyczny:

  • Reviewsy na Apple Store i Google Store
  • DM-y na Facebooku
  • Maile
  • Wywiady z użytkownikami
  • Ankiety i eventowe dane z aplikacji (BigQuery)
  • Recency bias -- negatywny komentarz powoduje, że chcesz rzucić wszystko i naprawiać

"Coś co najbardziej mnie przeszkadzało to był trochę recency bias. Jak widzę negatywny komentarz, to nagle chcę rzucić wszystko i naprawiać te jedna rzecz. Wykorzystanie LLMów do szerszego rozumienia różnych źródeł feedbacku pozwala to wypłaszczyć." -- Jak Sebastian używa Notebook LM:

  • Źródła danych:
  • Apple Store reviewsy -- link do podstrony z opiniami (always green, aktualne)
  • Google Store -- zeskrapowane przez API, wklejone copy-paste
  • Eventy z aplikacji -- zrzut z BigQuery, nawet w surowej formie
  • Notatki z wywiadów z użytkownikami
  • Kluczowa różnica vs ChatGPT:
  • Notebook LM odpowiada TYLKO z wrzuconych źródeł
  • Każda odpowiedź jest zlinkowana z konkretnym komentarzem/źródłem
  • Brak halucynacji -- nie wymyśla feedbacku
  • Przykładowe prompty:
  • "Jaki ogólny sentyment użytkowników? Zacytuj dwa najbardziej entuzjastyczne i dwie najbardziej krytyczne opinie"
  • "Jakie są powtarzające się problemy?"
  • "Co użytkownicy mówią o pricingu?"
  • Ważny insight z Couple Room:
  • Feedback z wywiadów jest raczej pozytywny (ludzie chcą pomoc)
  • Komentarze w Google/Apple są raczej negatywne z definicji
  • Notebook LM pomaga zbalansować te perspektywy

"LLMy są też calkiem dobre w impersonifikowaniu, wcielaniu się w użytkownika i mówieniu w jego imieniu. Oczywiście wywiady są niezastąpione i musimy je robić." -- Biznesowy impact w Couple Room:

  • 150 000 instalacji w 2 lata
  • MRR przekraczający 10 000 PLN w piku
  • Kluczowa decyzja produktowa wyciągnięta z feedbacku: ludzie chcą GRY, nie terapii par

"Im dalej analizowaliśmy ten feedback, tym bardziej nam wychodziło, że ludzie chcą po prostu gry. Więc to chyba był taki największy moment." -- ### Ścieżka kariery: od juniora do Product Engineera

Piotr z eksperci zmapował ścieżkę rozwoju inżyniera:


Junior -> Mid -> Senior -> [rozwidlenie]
 |
 +---------+---------+
 | |
 Specjalistyczna Menedżerska
 (Staff, Principal) (EM, Head, VP, CTO)

Kluczowy insight: Kompetencje produktowe ("zielone mięśnie") są przydatne na KAŻDEJ ścieżce od poziomu Senior wzwyż:

"Niezależnie od tego, która ścieżkę wybierzemy, te mięśnie produktowe są mniej lub bardziej przydatne i nie są uniwersalnie dostępne na rynku. Wcale nie jest ich tak łatwo dostać." -- Piotr (eksperci)

Product Engineering w big tech:

"Inżynierowie, którzy są bliżej produktu, naturalnie stają się coraz bardziej -- dawane im są coraz bardziej odpowiedzialne rzeczy, coraz bardziej wchodzą w rolę lidowania, a nie tylko followowania." -- Sebastian potwierdził to z doświadczenia w Waymo, Allegro, GOGU -- te skille były kluczowe w każdym miejscu.

Cursor -- pro-tipy dla Product Engineerów

Pro-tip 1: Nie deleguj architektury

"Miałem bardzo źle doświadczenia, kiedy delegowałem wszystko. Kiedy miałem puste repo i powiedziałem mu 'zrób mi API' -- bardzo szybko dochodziłem do momentu, kiedy sam nie wiedziałem co się dzieje w repo. I LLM nie wiedział." -- Zasada: Ty nadajesz wizje i architekturę, AI pomaga w implementacji.

Pro-tip 2: Cursor Rules = onboarding dla LLM


# .cursorrules
- Używaj spacji zamiast tabów
- TanStack Query do requestów HTTP
- Zustand do state management
- Komentarze po angielsku

"Jak coś mi nie pasuje w danym outputcie, to bardzo często dodaję do rules: hej, nie rób mi tego w ten sposób. I następnym razem się nie powtarza." -- Repozytorium z gotowymi rules: awesome-cursor-rules na GitHubie.

Pro-tip 3: Dodawaj kontekst biznesowy

"Duży boost w jakości generowanych rzeczy miałem, kiedy byłem też PMem i dodawałem kontekst biznesowy. Zamiast 'zaimplementuj dark mode' -- 'Mam użytkowników, którzy chcą grać wieczorem i chcą mieć dark mode'." -- ## Jak to wdrożyć

  • Zbudować agenta LangChain do skanowania Reddit/GitHub Issues pod potencjalne produkty SaaS dla e-commerce
  • Wdrożyć AI code review (Code Rabbit lub Cursor Bot) w pipeline CI/CD dla wszystkich repozytoriów
  • Stworzyć Notebook LM z feedbackiem klientów zespole -- opinie, tickety, notatki z callov
  • Dodać Cursor Rules do każdego projektu z kontekstem stacku i standardów zespole
  • Promować ścieżkę Product Engineera w zespole -- warsztaty z Product Discovery dla devów
  • Zachęcać developerów do uczestnictwa w wywiadach z klientami (pair interviews z PMem)

Narzędzia i komendy

NarzędzieZastosowaniePoziom trudności
**LangChain** (Python)Budowanie agentów do researchuŚredni (wymaga Pythona)
**DuckDuckGo Search Tool**Darmowa wyszukiwarka dla agentówNiski
**Notebook LM** (Google)Agregacja feedbacku, rozmowa z danymiNiski
**Cursor + Rules**AI-assisted coding z kontekstem projektuNiski
**Code Rabbit**Automatyczny code review na PRNiski (integracja GitHub)
**Cursor Bot**Code review + linki do fixów w CursorzeNiski (integracja GitHub)
**awesome-cursor-rules**Gotowe cursor rules dla różnych stacków--

LangChain -- szybki start


pip install langchain langchain-openai duckduckgo-search

# Wymagane: OPENAI_API_KEY w .env

Konfiguracja Code Rabbit

  • Dodaj aplikację Code Rabbit do repozytorium GitHub
  • Każdy PR automatycznie otrzymuje AI review
  • Komentarze z linkami do problematycznych linii kodu

Powiązane tematy

  • 01-ai-product-sprint -- Pełny workflow AI Product Sprint
  • 03-feedback-i-walidacja -- Szczegóły zbierania feedbacku z AI
  • langchain-agenci -- Budowanie agentów w LangChain
  • cursor-rules -- Zaawansowane Cursor Rules
  • role-w-zespole -- Product Builder vs tradycyjne role