Kihagyás

Epic Product Engineer. Tedd fel a „miért”-et minden PR-ben — product engineering Erin Fox-szel (2026-09-09)

Epizód: Epic Product Engineer (Erin Fox epizód) • Cím: Ask why in every PR - product engineering with Erin Fox • Dátum: 2026-09-09 (az epizód megjelenési dátuma az RSS pubDate alapján: Wed, 09 Sep 2026; a korábbi 2026-08-24 a honlap payload createdAt mezőjéből származott, ami a belső szerkesztés ideje) • Házigazda: Kent C. Dodds (Epic Product Engineer podcast) • Vendég: Erin Fox (full-stack product engineer, korábban React Native MLS soccer app, email marketing kampányok, creator-focused design systems; Hawaii Pacific University, kommunikáció mesterszak) Forrás: Honlap • MP3 (36.8 MB, ~40 perc) Transcript: OpenAI Whisper ggml-medium.en.bin (whisper.cpp, Metal GPU, M4), saját futtatás 2026-09-09 (~40 perc audió → 6949 szó, 0 hallucináció, ~4 perc wall-time, ~10× realtime). A vendég neve az ASR kimenetben „Aaron Fox / Aaron Fuchs with two X's” formában jelenik meg (a „Fuchs” a német szó a „fox”-ra, az „Erin” gyakran „Aaron”-ná torzul); a summary-ban a kanonikus „Erin Fox” név használatos.

A lényeg

Az Epic Product Engineer podcast Erin Fox-szel arról szól, hogyan menthető meg a bizalmi szerződés, amit a coding agent-ek „halkan eltörtek”: a „miért” kérdését minden feature-nél, minden PR-nél, minden stakeholder-beszélgetésnél kötelezően fel kell tenni. A product engineer szerep lényege Erin szerint, hogy minden új feature-et új termékként kezel: listát ír, meghatározza a miértet, az adatokat, a timeline-ot, és stakeholder-narratívát épít, nem csak egy migration-t becsül. Az AI generálta PR-eket „beautiful but untrusted” módon kezeli: az emberi kolléga PR-jét korábban automatikusan megbízhatónak tekintette (a shared working history miatt), de az agent kimeneteinél ez a contract megszakadt, és a why hiányzik. A megoldás: a PR template-ben explicit why szekció, a stakeholder-eknél a „communication accommodation” (a kommunikáció stílusát a partnerhez igazítani), a közösségi Slack csatornák aktív olvasása mint feedback loop, a metrikák köré épített rendszeres visszacsatolás, és az agent-ekkel való lassú, szándékos munka (ne nyissa ki a Claude-ot egy „fix this bug” prompt-tal, mert az „megőrül és egy millió dolgot megváltoztat”). Erin a grad school-i kommunikáció-tanulmányaiból merit: a bizalom, a személyes kapcsolat, a „no fences make good neighbors” szemlélet, és a managernek feltett egyszerű kérdés: „what are your goals this quarter?”. A product engineer / product manager határ szerinte most fúziós fázisban van: a domain knowledge és a rendszer-architektúra ismerete a kódot nem író PM-ek legnagyobb hiányossága. A vendég végső tanácsa: „ask why” — akár toddler módon is, akár a saját PR-edre is, mert ha nem tudod elmagyarázni a why-t, akkor „bad, bad news”.


Bevezetés: az AI PR-ek bizalmi szerződésének csődje

Kent a beszélgetést a vendég kontextusának felépítésével indítja: Erin Fox 7-8 éve ír kódot az internetre, full-stack (React Native, web, most Rails), és a termék-kommunikáció, a stakeholder-narratíva, a kóddal való kommunikáció a specialitása, különösen az AI- és a remote/async korában. Az epizód alcíme a honlapról: „If you are merging beautiful AI PRs without being able to say why the change exists, this episode is for you.” Ez a központi dilemma, és a beszélgetés nagy része ennek a problémának a feloldásáról szól.

Erin az első percekben egy személyes kontraszttal nyit: a nem-AI kollégák PR-jeit korábban automatikusan megbízhatónak tekintette, a közös munkatörténet, a közös kódbázis-ismeret, az edge-case-ek átnézésének bizalma mind a contract része volt. Az AI-ágens PR-jei ezzel szemben „look great, tests pass, beautiful”, de a why hiányzik:

"I immediately trust their code and trust them that they know their code their tests are passing it's working as expected they checked all the edge cases because I'm on a team I've worked with them and I trust them and now it's so different with all these PRs coming in from support that know how to code now and like half of your code is written by AI and half of it's like your teammate."

Kent ezt kiegészíti egy filozófiai megjegyzéssel: a nyelv „lossy format” — az ötletek a fejünkben tökéletesen élnek, de a szavakba konvertáláskor információ vész el, és ez a large language model alapja is. Az agent csak annyit tud a why-ról, amennyit a prompt explicitté tett. Ez a „lostness” a nyelv természete, nem az agent hibája, és ezért kell a why-t explicitten a PR-be, a stakeholder-beszélgetésbe, a kód mellé írni.

A „minden feature = új termék” framing

Erin kérésre elmagyarázza a korábbi megjegyzését, miszerint minden új feature egy új termék. A gyakorlatban ez így működik nála: amikor kap egy új feladatot, „azonnal pánikba esik”, listát ír, meghatározza a miértet, az adatokat, a timeline-ot, a várható kimenetet. A „product” nála nem egyetlen nagy umbrella, hanem sok kisebb, team-szintű termék, az email editor, az API, a design system mind külön termék a szervezeten belül. A közös pont: minden terméknek van egy dedikált termékmenedzsere, egy specifikus irányvonala, és a mérnöknek ebben a szűk scope-ban kell end-to-end gondolkodnia.

Kent egyetért, és hozzáteszi: a feature-ök együttesen alkotják a terméket, mint system és subsystem-ek, minden egyes feature egy-egy „job to be done” egy bizonyos felhasználónak. Erin konkrét példát hoz: egy platform-feature analytics-szel kimutatta, hogy senki nem használja. A user research kiderítette, hogy a felhasználók nem tudtak képet feltölteni (margins-off bug). A „megoldás” eredetileg egy egész új feature lett volna, de a valódi megoldás egy 2 órás margin-javítás volt, és ez revenue-t hozott azonnal, az új feature-building helyett.

"Just to go in and change the margins could be a two hour change or a two day change from start to merge but I think having those conversations in the beginning of like why are we creating a whole new product or a whole new feature when we could just change the margins here and like get revenue that way."

Az insight: a „miért” kérdés feltevése a feature-tervezés legelején megspórolhat hónapnyi fejlesztést, és megtalálhatja a revenue-impactot azonnal. Ez különösen fontos az AI-korban, ahol az agent „generál problémákat” vagy „mondja, hogy van probléma”, és a mérnök hajlamos az agent sugalmazásait feature-ként átvenni.

Honnan jön a „why” — stakeholder-ek, designerek, product mannerek

Erin a why feltárásának forrásait sorolja fel:

  1. Stakeholder-ek és designerek: a why kérdést a legelején, velük együtt kell feltenni, nem a feature-re vonatkozó epic/story átvételekor.
  2. Product manager-ek user research-e: a PM-ek calls-on látják, hogyan használják a userek a terméket. Erin a klasszikus Henry Ford-idézetet hozza: „ha megkérdeztem volna az embereket, mit akarnak, azt mondták volna, hogy egy gyorsabb lovat, de én adtam nekik egy autót” — a PM és a mérnök együttesen tudja jobban, hogy a user mit akar, mint maguk a userek.
  3. Community Slack channel: a felhasználók pain point-jainak közvetlen olvasása.
  4. Metrikák: a feature bevezetése utáni viselkedés kvantitatív mérése.

Erin személyes konfessziót tesz: karrierje első háromnegyed részében soha nem nézte meg a metrikákat, amiket a saját kódja gyűjtött. „Beépítettem az analytics-t, de nem néztem meg soha.” Ma már másképp látja: egy szín megváltoztatása, egy copy átírása, egy gomb áthelyezése az oldalon — ezek mind mérhető impact-ok, és a metrikákra való visszacsatolás az, ami megkülönbözteti a „full stack” mérnököt a „fuller stack” mérnöktől. A teljes stack ma már nem csak a kódszintű stack (backend, frontend, infra), hanem a metrikák, a user research, a kommunikáció.

Kent a saját PayPal-emlékével kontráz: ő is beépítette az analytics-t, de sosem nézte meg, és ez szerinte „óriási pazarlás” volt. A mai szoftverfejlesztő, aki kitűnik a tömegből, „az a fajta, aki ismeri ezeket a számokat, és érti az akciói impact-ját”.

A community Slack mint feedback loop

Erin elmagyarázza a community Slack channel-jeinek működését:

"A lot of it is ran by our by the product designer or the product manager to be able to say oh you should create a support ticket or you should do this or just tally up and like remember the metrics there that have been most popular and it's also just nice for us to see it like see actual users and just get reminded that yeah there are people using your things."

Két konkrét Slack típust említ:

  • Általános community support Slack: a PM és a product designer kezeli, de a mérnök is be van kapcsolva, és a leggyakoribb pain point-okat listázza.
  • Accessibility Slack: a rejtett fogyatékossággal élő userek itt jelzik a problémáikat (margins, color contrast, screen reader inkompatibilitás). Erin szerint ez „hatalmas rész of users”, akik általában „elfeledődnek”, és a közvetlen párbeszéd a mérnök és a user között „incredible”.

Kent rákérdez: hogyan csapódik le ez a visszacsatolás a mindennapi munkába? Erin válasza:

  • Stakeholder meeting-ek: case study-t ír a support-ból jött issue-k gyakoriságáról, és az időbecsléshez hozzáteszi a user-impact-ot („ez a user képviseli a userek X%-át, akiknek ugyanaz a problémájuk”).
  • Sprint / quarter tervezés: minden sprinthoz vagy quarter-hez „egy maroknyi dolog” support-ból, aminek javítva kell lennie.
  • Hack day back-backup lista: a nem-akut javítások listája a hack day-ekre.
  • Aktív twitt-polás / blogírás: a user-pain-ok nyilvánossá tétele.

A legfontosabb: a stakeholder-rel való kommunikáció nyelvezete. Erin gyakori hibaként említi, hogy a mérnökök túl technikai nyelven kommunikálnak („we need to do this migration, it'll take a quarter”), és a stakeholder ezt automatikusan lefordítja „nincs revenue ebben, nem akarjuk”. A jobb megközelítés: „ha ezt csináljuk, akkor revenue-hatás X, Y, Z, és ezt fogja eredményezni”. A story-telling, a migration-estimate mögé épített user-impact-narratíva az, ami áthidalja a szakadékot.

A communication accommodation elmélete és a bizalom építése

Erin elmagyarázza a saját kommunikációs készségének eredetét. A Hawaii Pacific University-n masterfokozatot szerzett kommunikáció szakon, és az egyik legfontosabb tanulság a „communication accommodation” volt:

"A big thing that I studied in grad school was communication accommodation so you change the way that you communicate depending on who you're talking to. And so that could be whether you're like identify as a man or identify as a woman or like a junior engineer versus a staff engineer CEO versus like the designer."

A gyakorlatban: megtanulni a másik ember céljait, kontextusát, nevét, családi helyzetét. A Zoom-call-okon a „kids name” ismerete nem irreleváns — ez a bizalomépítés alapja. A bizalom nélkül nincs hatékony kommunikáció: ha a stakeholder nem bízik benned, a legjobb érvet sem hallgatja meg. Ha bízik, akkor egy „no, szerintem ezt a céget így kell csinálni” mondat is működik.

Kent egyetért, és a bizalom filozófiáját kiegészíti: a bizalom nem csak a munkafelületen épül, hanem a személyes kapcsolaton („open and trust filled relationship”). És az ilyen alapú kommunikáció az, ami a legnehezebb, legértékesebb munkahelyi készség.

Kent egy másik kontraszttal él: „az az idő, amikor a szoftverfejlesztő lement a pincébe, és feltalált egy zseniális megoldást, rég elmúlt, ez nem a jövő, amire izgatott vagyok, de ez a valóság”. Erin egyetért, és hozzáteszi: az AI-kor különösen fontossá teszi ezt a készséget, mert az agent-ek „nem tudnak mindent megcsinálni”, a magasabb szintű architektúrális és systems design gondolkodás továbbra is emberi feladat.

Hogyan építsünk bizalmat a manager-rel, „no fences make good neighbors”

Erin praktikus receptje: egyszerűen kérdezz rá.

"I just asked I said hey boss what are your goals this quarter like I'm here I'm here to make your job easier and so what can I do to help you."

A „not all people are scared to say that” megjegyzés a lényeg: sokan félnek megkérdezni a manager-t, hogy „mit akar elérni”, de a bizalom építése pont ezzel a kérdéssel indul. Ha a manager bízik benned, akkor szabad kezet ad a saját projektekben, és tudsz hatni az ő céljaira is.

Kent egy metaforát hoz be: „segíteni a másikat megérteni, hogy ő már a te oldaladon áll, és nincsenek kerítések”. Erre Erin válaszol egy szófordulattal: „no fences make good neighbors”, és elmeséli, hogy neki van egy óriási kerítése a szomszédjával, akit egyébként nagyon kedvel, de néha örül neki.

A lényeg: a „te oldaladon vagyok” attitűd ritka a szoftvermérnökök között, akik hajlamosak a „pet project”-jeikbe zárkózni („make working at this company more bearable”). Az attitude-váltás („I'm not here to take things from you, I'm here to give things to you”) kulturális változáshoz vezet: „we are all at the same company, on the same team, with the same goals”.

Kent rákérdez a „rockstar” / „superstar” szemléletre. Erin szerint ez „works for some, de nem mindenkinek”. A „let's work together towards the same team” szemlélet Erin szerint hatékonyabb a hosszú távú szoftver-építésben.

Az agent-ekkel való munka: lassan, szándékosan, pattern-eket megőrizve

A beszélgetés második felében Kent rákérdez az agent-ek használatára. Erin válasza:

"I think it's the way that you communicate your setup agent if you just open up Claude and say hey fix this bug for me they're gonna go crazy and change a million things when you only probably needed one thing changed so I think going slower with your agents when you're building them out..."

A kulcsszó: szándékosság. Ha az agent nem tudja, hogy a repository-ban az adatletöltés egységes pattern szerint történik (minden fájlban ugyanúgy), akkor a saját ötleteit fogja használni, és a kódbázis pattern-eltolódik. Ha a csapat tervezi, hogy Angular-ról React-ra migrál, de ezt nem kommunikálja az agent felé, akkor az agent Angular kódot fog írni a React-os kontextusban is. A magasabb szintű engineering célok (patterns, technologies, testing philosophy) explicitten kell, hogy megjelenjenek az agent promptjaiban, különben „repül a gép, miközben landolunk, és nem épül jó dolog”.

Erin itt egy fontos distinkciót hoz be a „vibe coding”-gal kapcsolatban: az agent-ek „time to market” szempontjából fantasztikusak, de a hosszú távú maintainability-t tekintve az architectúrális intent a mérnökön múlik. A klasszikus „don't repeat yourself” elv most is érvényes: ha a bug öt helyen van jelen, akár az agent, akár a mérnök javítja, azt mind az öt helyen kell.

Kent egy saját történettel kontráz: az Angular JS projektben kapott egy bug reportot, kijavította egy helyen, a bug visszajött, mert a bug négy másik helyen is jelen volt. „We could have a whole another conversation about these solid principles... but the basic thing here is that like this doesn't necessarily change with agents.” A SOLID elvek, a rendszerszintű intentionalitás a product engineer megkülönböztető jegye.

Product engineer vs product manager, a határ fúziója

Kent és Erin a product engineer / product manager határvonalról beszélgetnek a beszélgetés utolsó negyedében. Erin szerint a két szerep „lassan fúzionál”:

"I do see them fusing a lot but not like why not with like who I know today I think they will slowly emerge I think it would be an engineer into a product engineer like a product or and wasn't there something a title name that crosses between them already..."

A jövőbeli fejlődési út: software engineer → product engineer → product manager, de a klasszikus PM-szerepnek komoly hiányossága van a domain knowledge-ban. Sok PM nem kódolt soha, nem ismeri a legacy rendszereket, nem tudja milyen adatok érhetők el, és ez a különbség a mai AI-korban, ahol a kód olcsó, de a rendszer-architektúra ismerete nem.

Erin személyes ambíciója: „I always wanted to be a product manager eventually after being an engineer”, de a jelenlegi PM-szerep leírását „át kellene írni” a technológiai domain ismerettel. A baseline tudás (versioning, deprecated technológiák, domain pattern-ök) a PM-szerep újradefiniálásának része kell, hogy legyen.

Kent kiegészíti: a product engineer a „people side of the product” és a „software actual solution” között helyezkedik el. Ez a „valóban értékes hely” — a mai AI-eszközöket egy nem-technikai ember kezébe adni nem járható út hosszú távú minőségi szoftver építésére.

Kent idézi a saját korábbi mondását: „building fast in the wrong direction”. Erin a másik irányt említi: „a right direction-ban építkezünk, de a solution idővel degradálódik”, ez a „vibe coding” jelensége, ahol a kód először működik, aztán „concrete-tá válik”, és még egy jobb modell sem tudja már rendbe tenni. Az utolsó menedék: „rip it all and start over with a smarter model”.

A beszélgetés itt kapcsolódik vissza a why-témához: a „building fast in the wrong direction” elkerülésének egyetlen módja a why kérdés folyamatos feltevése, mert anélkül a solution-fit kérdéses marad.

A „homework” — tedd fel a why-t minden PR-nél

A beszélgetés végén Erin a hallgatók számára egy konkrét, azonnal végrehajtható feladatot ad:

"Easy to actually do it it's when you put up a PR or whenever you're reviewing a PR say why is this important just say oh this was written by this was written all by Claude why are we doing this or this was written half by Claude or half my teammate why you know like why is this change needed why is this code need to be changed just yeah awesome just put it in the PR description and make sure that people read it and they know why."

A lényeg: ne csak a saját PR-ed legyen „why”-val ellátva, hanem a review-zott PR-eknél is kérdezd meg a why-t. Lehet, hogy a válasz „nem tudom” lesz, és pont ez az, ami a tanulási folyamatot elindítja.

Kent kiegészíti a „homework”-ot: „especially your own PR if you can't explain the why then I don't know yeah that's that's bad bad news”. A saját PR-ed a legszigorúbb tükör: ha nem tudod elmagyarázni, miért írtad meg, akkor valami nincs rendben.

A why-n túl Erin a metrikákra is felhívja a figyelmet: „what are the metrics on this and why are those metrics important”. A why nem elég — a metrikák a „how do you know it worked” kérdését válaszolják meg, és ha a metrikák nem javulnak, akkor a why nem volt elég mély.

A vendég elérhetősége és a beszélgetés lezárása

Erin a X / Twitter platformon érhető el („Aaron Fox” / „Erin Fuchs with two X's”, a Whisper ASR itt két helyen is torzítja a nevet; a kanonikus név Erin Fox). DM-re válaszol. Kent a szokásos módon zárja az epizódot: like, comment, subscribe, share, és köszönet a beszélgetésért.

Összegzés

Az Epic Product Engineer ezen epizódja Erin Fox-szel a „why” kérdés köré szervezte a product engineering alapelveit. A why nem egy egyszer felteendő kérdés, hanem egy folyamatosan alkalmazandó szűrő: feature-tervezéskor, PR-íráskor, stakeholder-beszélgetéskor, agent-prompt-íráskor. A bizalmi szerződés, amit az AI coding agent-ek eltörtek, csak ezzel a fegyelmezett why-kultúrával állítható vissza. A kommunikáció accommodation-je (a másik ember nyelvezetéhez, kontextusához, céljaihoz való alkalmazkodás), a metrikákra való visszacsatolás, a community Slack mint feedback loop, és a manager-rel való „no fences” bizalomépítés együttesen alkotják azt a product engineer skill-setet, ami 2026-ban megkülönbözteti a fejlesztőt a tömegtől. A lassabb, szándékosabb agent-használat, a pattern-ek megőrzése, a SOLID elvek fenntartása a hosszú távú szoftver-minőség záloga. A „building fast in the wrong direction” elkerülésének egyetlen módja a why kérdés folyamatos feltevése — és ha a saját PR-edre nem tudod elmagyarázni, „bad, bad news”.


Forrás

  • Epizód weboldal: https://www.epicproduct.engineer/ask-why-in-every-pr-product-engineering-with-erin-fox~lu7s6
  • MP3: https://media.transistor.fm/3516e64a/164f8e85.mp3 (36.8 MB, 40:07, 128 kbps)
  • Vendég: Erin Fox (full-stack product engineer, korábban React Native MLS soccer app, email marketing kampányok, creator-focused design systems; Hawaii Pacific University, kommunikáció mesterszak; X/Twitter: „Erin Fox” / „Erin Fuchs with two X's”, a Whisper ASR itt „Aaron Fox”-szá torzítja a nevet)
  • Házigazda: Kent C. Dodds (Epic Product Engineer podcast, https://www.epicproduct.engineer/)
  • Epizód kulcsszavak: Erin Fox, product engineer, why question, trust contract, AI PR, stakeholder communication, communication accommodation, community Slack, accessibility, metrics feedback loop, agent velocity, pattern alignment, SOLID, building fast in wrong direction, vibe coding, product engineer vs product manager, Henry Ford faster horse
  • Transcript forrása: OpenAI Whisper ggml-medium.en.bin (whisper.cpp, Metal GPU, M4), saját futtatás 2026-09-09 (~40 perc audió → 6949 szó, 0 hallucináció, ~4 perc wall-time, ~10× realtime, 1 rész self-write a transcript hossz alapján)
  • Feldolgozás: Henky-pipeline (1-chunk self-write a 5000–7000 szó tartomány miatt; chunk-size döntési tábla: 5,000–7,000 → 1 chunk, 0 subagent, 60–90 mp self-write; 2026-09-09, ~12 perc wall-time a Whisper-rel együtt)
  • Megjegyzés: A honlapon a transcript mező a React Server Components payloadban null értékű (a Next.js RSC payloadban "transcript":null mintát ad vissza), és a Transistor.fm transcription.txt/transcription.json variáns 404 — ezért Whisper-rel készült ez a feldolgozás. ⚠️ A „Whisper az egyetlen járható út” állítás TÉVES volt (javítva 2026-09-30): a feed <item>-jében ott a <podcast:transcript url="https://share.transistor.fm/s/3516e64a/transcript.txt" type="text/plain"/>, és az URL ma is 200-at ad 7261 szóval. A hiba oka, hogy a /transcription.* fájlnév-előtagot próbáltuk, holott ennél a shownál /transcript.* a helyes — a feed tag URL-jét kellett volna szó szerint megnyitni. A nyers transcript megmaradt, ezért a feldolgozás érvényes; a tanulság a következő epizódra szól. Az MP3 URL a media.transistor.fm/3516e64a/164f8e85.mp3 redirect láncon keresztül audio.transistor.fm-re irányít. Az ASR két kritikus név-torzítása: „Erin Fox” → „Aaron Fox” és „Fuchs with two X's” (utóbbi a vendég saját Twitter-handle-jének félrehallása: „@erinfox_” vagy hasonló). Az epizód a 26. publikált epizód az Epic Product Engineer podcaston a Cloudinary asset path (epic-product-engineer/podcast/26-erin-fox/guest-avatar) alapján.
Vissza a tetejére