devShark
Výuková platforma pro vývojáře postavená jako skutečný produkt, ne pouze jako UI ukázka. Propojuje strukturovaný vzdělávací obsah, kvízy, sledování pokroku a multiplayer ve spravovatelné architektuře nad Reactem a Supabase.
- Kontext
- Nezávislý výukový produkt
- Role
- Vlastník produktu a full-stack vývojář
- Stav
- Aktivní produkt
- Platforma
- React a Supabase
Problém
Nástroje pro výuku vývojářů často oddělují obsah, procvičování, pokrok a soutěžení do nespojených prostředí.
Produkt potřeboval architekturu, která zvládne tematické cesty, denní výzvy, pokrok, žebříčky a multiplayer v reálném čase bez zbytečně složitého rozšiřování.
Omezení
U samostatně vedeného produktu sdílejí produktová rozhodnutí, implementace, nasazení a údržba stejnou omezenou pozornost.
Realtime funkce a uživatelská data vyžadují jasnou autorizaci a vlastnictví dat.
Moje odpovědnost
Definoval jsem strukturu produktu a výukové mechanismy.
Navrhl jsem React aplikaci a datový model v Supabase.
Implementoval jsem autentizaci, autorizaci, sledování pokroku a kvízové flow.
Vytvořil jsem realtime multiplayer a žebříčky.
Zodpovídám za nasazení, údržbu a další produktová rozhodnutí.
Přístup
Oddělil jsem výukový obsah, pokusy, pokrok a multiplayer stav do účelových modelů.
Hranice funkcí jsem udržel explicitní, aby bylo možné přidávat nová témata a typy výzev bez přepisování základního flow.
Supabase používám pro data, autentizaci a realtime chování, zatímco aplikační pravidla zůstávají viditelná v codebase.
Klíčová technická rozhodnutí
Oddělit pokrok ve výuce od obsahu
Obsah se v čase mění, zatímco pokusy a pokrok uživatele musí zachovat stabilní význam.
Držet strukturu obsahu a uživatelský pokrok jako oddělené oblasti propojené stabilními identifikátory.
Výukový model se může vyvíjet bez směšování obsahových záznamů a uživatelského stavu.
Přistupovat k multiplayeru jako k produktovému flow
Samotný realtime přenos nedefinuje stav místnosti, přechody, opětovné připojení ani výsledky.
Modelovat multiplayer pomocí explicitních stavů místnosti a hry, které se přenášejí realtime aktualizacemi.
Výsledky
Spustil jsem a provozuji živý produkt na devshark.app.
Propojil jsem strukturovanou výuku, kvízy, pokrok, žebříčky a multiplayer v jedné produktové architektuře.
Vytvořil jsem základ pro další rozvoj produktu a obsahu.
Reflexe
Vlastnictví produktu mění vývojářské priority. Udržovatelnost, provozní jednoduchost a rozhodnutí, co nepostavit, jsou stejně důležité jako dodávání funkcí.
Související práce
Hledáte někoho, kdo převezme odpovědnost za systémové hranice?
Jsem otevřený vybrané produktové práci a budoucím seniorním vývojářským příležitostem.
Kontaktovat