Case study

Z Excelu na web a zase zpátky.

Výchozí stav

Nejlepší hypoteční srovnávač na českém trhu žil v Excelu. Desítky listů, přes 2 500 vzorců, přes 5 200 konstant a rozhraní ve VBA. Týden co týden ho aktualizoval jeden expert, který není programátor, protože banky mění produkty. Klient chtěl webovou aplikaci, ale nechtěl přijít o možnost logiku dál editovat sám.

Co jsme zvažovali

  • Přepsat vzorce do Pythonu. Čisté, ale expert by o Excel přišel.
  • Ovládat Excel vzdáleně přes Google Sheets nebo Office 365 API. Jednoduchý výpočet trval 0,6 až 1,8 s. Příliš pomalé.
  • Ovládat Excel lokálně z Pythonu. Křehké a špatně škálovatelné.

Co jsme udělali

Excel zůstal zdrojem pravdy. Open-source knihovna Koala parsuje vzorce do stromu závislostí a přepočítává jen to, co se změnilo. Doplnili jsme chybějící excelové funkce a přepočet na serveru trvá 20 ms. Shodu s originálem ověřilo 20 000 scénářů vygenerovaných přímo v Excelu.

Prototyp vznikl za pět nocí, MVP za pár měsíců. Pak reporty, SSO, provoz pro více společností, napojení na CRM a kontroly proti bankovním kalkulačkám. Stovky požadavků za minutu ze srovnejto.cz zvládá pool předpočítaných instancí na Docker Swarmu.

Výsledek

Aplikace roku FINfest 2021. Šest let vývoje, přibližně 7 800 commitů. Expert dál edituje logiku v Excelu a web ji přebírá.

Co si odnášíme

  • Zásadní architektonické rozhodnutí prototypovat a změřit, ne odhadnout.
  • Excel je výborný na parametry a jejich vztahy. Není třeba ho za každou cenu nahrazovat.
  • Testy proti referenčním datům ukázaly každou odchylku dřív než uživatel.
„The company owner always made sure that the project was running smoothly.“
Místopředseda představenstva, Gepard Finance · Clutch

Všechny case studies

Další krok

Řešíte něco podobného?

Inženýr odpoví do dne. Do týdne máte poctivý pohled na rozsah, riziko a cenu.