Fitofan
Спорт платформасы: веб, мобильді қолданбалар және олардың артындағы бэкенд
Спортшылар, жаттықтырушылар, клубтар мен жанкүйерлерге арналған бір платформа: 11 тілдегі веб-қолданба, iOS және Android қолданбалары және басынан аяғына дейін өзім жауап беретін бір бэкенд.
- Рөл
- Senior Full-Stack & Mobile Engineer
- Кезең
- 2024 – 2026


Контекст
Fitofan спортшыларға, жаттықтырушыларға, ата-аналарға, клубтар мен лигаларға Next.js веб-қолданбасы, iOS және Android үшін Flutter қолданбалары және NestJS бэкенді арқылы қызмет етеді. Мен бүкіл стек бойынша жеткізуге жауап беремін: архитектура, API-лар, деректер, инфрақұрылым және релиздер, ал 2026 жылдан бері мобильді қолданбаны жалғыз өзім қолдап келемін.
Міндет
Үш кодтық база мен 11 тілде бір өнімнің тұтастығын сақтау және релиздерді баяулатпай тікелей спорт деректерін, төлемдерді, әлеуметтік желілерге жариялауды және AI функцияларын қосу.
Бүкіл стек бойынша құрылған
- Feature-Sliced Design негізіндегі Next.js 16 веб-қолданбасы: 140+ бет, 11 локаль, шамамен 10 000 аударма кілті, паритеті CI-да тексеріледі
- 90+ модулі бар NestJS бэкенді, PostgreSQL және 290+ миграция, Swagger және health check-тер
- RabbitMQ арқылы оқиғаға негізделген синхрондау: идемпотентті консьюмерлер, dead-letter кезегі және корреляция идентификаторлары
- Декораторлар арқылы инвалидацияланатын Redis кэші; комментарийлер мен тікелей сессиялар үшін Socket.IO шлюздері
- Sportmonks және API-Football-дан тікелей матч кестесі, нәтижелер мен коэффициенттер; Meta, TikTok, LinkedIn және YouTube-қа жариялау
- Finix жазылымдары және Stripe, Square, PayPal, LiqPay, Mercado Pago, GCash және Monopay үшін төлем верификаторлары
- Құралдарды шақыратын OpenAI ассистенті, Whisper транскрипциясы және Replicate арқылы сурет генерациясы
- Flutter қолданбасы: BLoC, Hive офлайн кэші, Socket.IO, push-хабарландырулар, AdMob, iOS Live Activities, 12 локаль, 360+ тест
- CI/CD: lint және i18n тексерулері, Jest, көпсатылы Docker, контейнер реестрі, SSH арқылы деплой; веб Vercel-де
- Тіркелу және клуб құру ортақ пакеттерін GymTeam инъекцияланатын хост контракты арқылы қайта қолданады
- Сол экожүйедегі AI және компьютерлік көру зерттеулері: Flutter-де құрылғының өзінде дене қалпын анықтайтын және қолданба ішінде жазылымы бар балалар спорт бағалау қолданбасы, сонымен қатар MediaPipe мен TensorFlow.js арқылы браузерде таеквондо техникасын талдау
Инженерлік акценттер
- Идемпотентті оқиға консьюмерлері: әр хабарлама расталмас бұрын жазылады, сондықтан қайталау мен қайта ойнату ешқашан екі рет қолданылмайды
- Архитектураны құралдар қадағалайды: қабат ережелері, тек кішірейе алатын бекітілген lint базасы, тәуелділік циклдерін тексеру және әр pull request-те i18n паритеті
- Flutter-ден method-channel көпірі арқылы басқарылатын нативті iOS Live Activities
- Хост контрактының артына пакеттелген және екі өнім қолданатын бір тіркелу сценарийі
Не береді
Функциялар веб, мобиль және бэкендке бір өзгерісте шығады, ал платформа GymTeam-мен клуб деректерін нақты уақытта алмасады.