Перейти до вмісту

Керувала full‑stack‑розробкою GIS‑карт, наглядаючи за роботою з PostgreSQL, Mapbox, ReactJS та NodeJS, щоб створити інтегроване рішення.

full‑stack‑картографія — від бази даних до браузера

Ситуація. На цьому етапі GIS‑карта перестала бути просто функцією і стала тим, заради чого клієнти взагалі заходили в систему. Проблема полягала в тому, що вона розросталася частинами. Просторові дані зберігалися в PostgreSQL, саму карту малював Mapbox, а застосунок навколо неї складався з ReactJS на фронтенді та NodeJS на бекенді. Кожна частина працювала сама по собі. Просто їх не будували так, щоб вони пасували одна до одної, і шви вже почали розходитися.

Завдання. Роль охоплювала full‑stack‑розробку карти та пов’язане з нею технічне керівництво: модель даних, рендеринг, API та React‑фронтенд. Метою було перетворити чотири речі, які випадково опинилися в одному репозиторії, на єдиний продукт, за який не соромно.

Дія. Спочатку визначено архітектуру, а далі робота точилася безпосередньо в коді, а не через керування здалеку. З боку даних просторову модель у PostgreSQL підтримували в порядку, щоб запити не починали ледве повзти, коли набори даних зростали. Mapbox відповідав за малювання; завдання полягало в тому, щоб подавати йому потрібні дані на потрібних рівнях масштабування, а не все одразу. З боку застосунку код на ReactJS і NodeJS проходив рев’ю, команду підштовхували до спільних конвенцій, а обов’язки щоразу повертали на той рівень, де їм місце, щойно якийсь із них починав просочуватися в сусідній. Значна частина цієї роботи була непоказною: вчасно помічати дрібні неузгодженості, перш ніж вони встигали затвердіти в архітектурі.

Результат. Підсумок — єдиний інтегрований картографічний застосунок, у якому дані, рендеринг та інтерфейс нарешті тягнули в один бік. Він став ключовою частиною платформи — тим, що команда могла й далі розширювати, не побоюючись, що все ламатиметься щоразу, коли додається новий шар.

Одна частина довшого переліку — і він увесь на цьому сайті.

Кожен запис написано однаково: ситуація, завдання, що ми зробили і що змінилося.

Переглянути весь перелік