Vývoj softwaru na míru
Služby a integrace na míru v TypeScriptu, dodané do vašeho repozitáře a zdokumentované pro předání.
Ne každé zadání lze pokrýt e-commerce platformou. Když je zadáním vlastní služba, integrační vrstva, interní nástroj nebo backend pro marketplace, stavíme jej od základů v TypeScriptu, s písemně dohodnutým rozsahem, dodaný do vašeho repozitáře a zdokumentovaný pro pozdější předání.
Co stavíme
- Vlastní integrace mezi e-commerce a systémy ERP / PIM / WMS pro případy, kdy hotový konektor pokrývá většinu toku a to, co nepokrývá, tvoří jádro vašeho podnikání
- Interní nástroje, které do administrace e-shopu nepatří: cenové enginy, vyřizování vratek, skladové dashboardy, konzole pro zákaznickou podporu
- Marketplaces, multi-tenant SaaS backendy a doménové služby, kde je produktem samotná doménová logika
- Migrace ze starých zakázkových systémů, kde je polovina požadavků zdokumentovaná a druhá polovina existuje jen jako znalost jednotlivých pracovníků. První dodávkou je pak písemný popis toho, co starý systém skutečně dělá
Několik projektů tohoto typu z deseti let inženýrské práce v e-commerce, na kterých tato praxe stojí, anonymizovaně. Prvním byl automatický přeceňovací engine pro katalog se 123 000 produkty, řízený predikcí dnů do vyprodání z dat ERP, s pásmy pravidel, auditní stopou a pojistkami pro případy, kdy se automatický výpočet liší od rozhodnutí člověka. Druhým byl přepočet prodejní historie zkrácený paralelizací ze 14 hodin na 2,5 hodiny, který zpracovává naposledy prodané produkty jako první, aby nejčerstvější čísla byla k dispozici nejdříve. Třetím byla migrace zákazníků mezi platformami, při které nikomu nepřišel e-mail na reset hesla, protože se heslo při prvním přihlášení ověřilo proti starému hashi a transparentně přehashovalo do nového formátu. Plaintext se nikdy nikam neukládal.
Jak stavíme
Každý backend, který dodáme, má stejnou základní strukturu:
- strukturované moduly s explicitně deklarovanými závislostmi,
- dependency injection, kterou lze přepsat pro testy nebo pro chování specifické pro dané prostředí,
- lifecycle hooky, aby subsystémy startovaly i končily ve správném pořadí,
- validace kontraktů při startu: pokud je zapojení neúplné, aplikace se odmítne spustit. Chyba v konfiguraci se tak projeví během několika sekund při startu, a ne jako TypeError nad nedefinovanou závislostí tři týdny po nasazení.
Na této struktuře trváme, protože drží předpoklady kódu na očích a protože chceme software, který je srozumitelný i rok po spuštění.
Jak vypadá dodávka
- Práce probíhá ve vašem repozitáři a ve vaší organizaci a zaplacením získáte výhradní licenci ke kódu, konfiguraci a dokumentaci, které jste zaplatili
- Testy a kontroly kontraktů běží v CI od prvního týdne, ne až jako stabilizační fáze na konci
- Nasazujeme tak, aby šlo novou verzi vrátit zpět, a systém se dodává s napojenými logy, metrikami a alerty (jak provozujeme, co postavíme, popisuje stránka DevOps a infrastruktura)
- Předávací dokumentace je běžná součást dodávky: runbooky, poznámka k architektuře a záznam rozhodnutí
Pokud je obtížnější rozhodnout, co postavit, než samotná realizace, jde o návrh systémů a architekturu. Obě služby poskytujeme společně i samostatně. Každá realizace má pevnou cenu, domluvenou písemně před začátkem prací. Systémy s delším životem pak pokračují na měsíčním paušálu.
Související služby
- Integrace (ERP, PIM, WMS, platby)Propojíme e-shop se systémy, které skutečně řídí byznys. Idempotentně, s observabilitou a s odolností vůči výpadkům API třetích stran.
- Návrh systémů a architekturaRozhodnutí, která se později draze mění: hranice služeb, tok dat, volba platforem a scénáře selhání, se kterými nikdo nepočítal.
- DevOps a infrastrukturaPragmatická infrastruktura, CI/CD, observabilita a pohotovostní služba, dimenzované na e-commerce, stavěné tak, aby ubylo incidentů v produkci.