Igor MazurEN

Wszystkie projekty

Platforma promocji handlowych

Platforma mikroserwisowa, która planuje promocje w sieciach handlowych, budżetuje wydatki i księguje je. Przejęta od zewnętrznego zespołu bez przekazania wiedzy i uporządkowana.

Rola
Przejęta odpowiedzialność techniczna
Stack
React 18, TypeScript 5, Vite, Java 21, Spring Boot, Kafka, PostgreSQL, Docker, Kubernetes (GitOps)
Projekt
6 z 17
repozytoriów, z czego około dziesięciu to serwisy back-endowe
16

Problem

Platforma planuje promocje produktów producenta w sieciach handlowych: kto prowadzi jaką akcję, z jakim mechanizmem, w których sklepach, z czyjego budżetu i jak wynikający z niej koszt jest rozliczany w księgowości. Zbudował ją zewnętrzny zespół programistów, który już przy niej nie pracuje. Nie było przekazania wiedzy.

Właściciele biznesowi i product manager potrzebowali odpowiedzi na pytania o produkcyjny system finansowy (co robi, gdzie są zapisane reguły, co i jak trafia do księgowości), a nikt w firmie nie potrafił ich udzielić.

Co zrobiłem

Utrzymywałem system w działaniu i wdrażałem zmiany: funkcje front-endowe w interfejsie w React i TypeScript. Wśród nich jest pobieranie raportu dla mechanizmu rabatowego w dwóch kanałach klientów oraz zmiany terminologii obejmujące cały obszar funkcjonalny.

Większą częścią pracy była inżynieria wsteczna systemu, z użyciem narzędzi agentowych w procesie ze sprawdzanymi cytatami, do postaci dokumentacji referencyjnej, z której dziś korzystają product manager i właściciele biznesowi: mapa modułów, logika rozliczeń księgowych z macierzą pól oraz analiza bazy danych dla działu controllingu.

Decyzja i jej koszt

Ustalenia trafiły do product ownera i właścicieli biznesowych jako otwarte pytania, a nie lista defektów. Każdy punkt zawiera pytanie zamiast werdyktu, bo decyzja zewnętrznego zespołu, której powodów nie znam, nie jest znalezionym błędem.

Cytaty sprawiają, że dokumenty powstają wolniej i czyta się je mniej przyjemnie. W dokumencie, który firma traktuje jako źródło prawdy o systemie finansowym, ten wybór jest oczywisty: czytelnik, który wątpi w jakieś zdanie, może je sprawdzić w dziesięć sekund.

Co zrobiłbym inaczej

Mój produkcyjny wkład jest tu po stronie React i TypeScript; moja praca z Javą polegała na czytaniu kodu na tyle dokładnie, żeby opisać, jak się zachowuje. Gdybym to ja miał zmieniać platformę, najpierw poprosiłbym biznes o rozstrzygnięcie otwartych pytań, bo każda odpowiedź decyduje, czy dane ustalenie to defekt, czy zamierzony projekt, i dopiero potem zacząłbym zmieniać kod.

Kontakt

Warszawa
W biurze, hybrydowo lub zdalnie
Okres wypowiedzenia: trzy miesiące

[email protected]