Мобильный разработчик с 2017 года. Делал фото- и видеоредакторы, приложение для управления корпоративными финансами, e-commerce для сети магазинов одежды, бронирование спортивных площадок, чат с LLM, live-статистику киберспорта, медиатеку с синхронизацией через облака и детскую раскраску.
Веду приложения от первого коммита до релиза в сторах. Пишу нативный код на Swift, Objective-C и Kotlin, когда React Native не хватает, перевожу приложения с натива на React Native без остановки релизов, подхватываю застрявшие и legacy-проекты. Менторю разработчиков; с 2025 года работаю с AI-агентами, в основном с Claude Code и Cursor.
React NativeTypeScript · Expo · EAS · Expo Router · Reanimated · Skia · react-navigation · RTK Query · zustand · redux
iOSSwift · Objective-C · UIKit · Core Data · AVFoundation · Core Image · Core Graphics · Core ML · Vision · OpenCV · Mac Catalyst
AndroidKotlin · Java · android.graphics · TensorFlow
ПродуктRevenueCat · Firebase · AppMetrica · AppsFlyer · Apphud · Mindbox · AdMob
БэкендFastAPI · NestJS · Docker · nginx · Caddy · GitLab CI
2026–н. в.
Приложение сети магазинов модной одежды с сотнями тысяч клиентов. У компании были отдельные нативные приложения для iOS и Android; я заменил их одним приложением на React Native за 4 месяца.
- Выпустил его обновлением существующих приложений, с переносом данных пользователей
- Перевёл проект с bare React Native CLI на Expo
- Продолжал выпускать обновления старого нативного iOS-приложения, пока шла разработка нового
- Аналитика и атрибуция (Firebase, AppMetrica, Mindbox), push-уведомления и deep links
React Native · Expo CNG · Reanimated · Skia · react-navigation · RTK Query
2025–2026
Раскраска для маленьких детей: готовые картинки и новые, которые AI рисует по запросу ребёнка. Сделал full-stack за 5 недель: приложение, бэкенд и админку с аналитикой.
- Движок раскраски на Skia в JS: flood-fill по областям, отдельный GPU-канвас на каждую зону и кастомные шейдеры не дают краске выходить за контур
- Подписки, встроенные покупки и виртуальная валюта на RevenueCat; родительский контроль
- Написал и выпустил вручную; сейчас поддерживаю и развиваю в основном с AI-агентами
ПриложениеReact Native · Expo · Expo Router · Reanimated · Skia · zustand · RevenueCat
БэкендFastAPI · uv · Docker · Caddy · nginx · Gemini API
ВебReact · Vite
2024–2025
Один чат для многих LLM (ChatGPT, Gemini), плюс генерация и редактирование изображений (DALL·E, Imagen, Nano Banana). Пришёл сделать ревью кода первой команды, затем взял проект на себя.
- Выпустил iOS и Android за 2 месяца после того, как взял проект
- Стриминг ответов по SSE, который не умел встроенный fetch в React Native, и UI чата на Reanimated
- Подписки, виртуальная валюта и встроенные покупки на RevenueCat
- Аналитика и атрибуция (Firebase, AppMetrica, AppsFlyer, Apphud, Meta Ads), push-уведомления и deep links
- Также взял на себя бэкенд на NestJS с деплоем через GitLab CI
- Менторил джуниора, который присоединился позже
Самые сложные задачи: быстрый SSE-стриминг с рендерингом Markdown и интеграция множества рекламных и аналитических систем.
ПриложениеReact Native · Expo CNG · Reanimated · react-navigation · RTK · zustand
БэкендNestJS · GitLab CI
2024–2025
Live-статистика и аналитика матчей CS и Dota 2.
- С нуля: выбрал стек и архитектуру, выпустил iOS и Android за 2 месяца
- Статистика матчей и графики на Victory Native
- Кастомные анимации и переходы на Skia и Reanimated
- Монетизация: собственная баннерная система, AdMob и интеграции с букмекерами, которые дают коэффициенты на каждый матч
- Аналитика (Firebase, Apphud, AppMetrica), push-уведомления, deep links
React Native · Expo CNG · Reanimated · Skia · Victory Native · zustand
2019–2023
Фото- и видеоредактор на React Native.
- Поставлял React Native-приложение как Xcode-фреймворк внутри нативного iOS-приложения соцсети (brownfield)
- Перенёс редактор на Mac через Mac Catalyst
- Нативные iOS-фичи на AVFoundation, Core Image, Core Graphics, Vision и Core ML
- Графика на OpenCV, рендеринг и экспорт видео на Skia, когда react-native-skia ещё не существовало
- Разделил приложение на модули и репозитории, чтобы нативные фичи можно было тестировать и выпускать отдельно
- Портировал нативные iOS-фичи на Android на Kotlin и Java (TensorFlow, android.graphics)
Самая сложная задача: быстрый экспорт видео со стикерами, несколькими слоями видео, текстом и Lottie-анимациями. Понадобились шейдеры и эффекты на SkSL.
React Native · native iOS / Android modules · OpenCV · Core ML / TensorFlow · Skia · redux · App Center
2017–2019
Учёт финансовых операций бизнеса и их синхронизация с контрагентами. Внутреннее приложение, в сторах не публиковалось.
- Синхронизация всех транзакций между клиентами, основная логика на устройстве
- iOS и Android, когда React Native был ещё сырым: форкал и чинил нативный код во многих библиотеках
- Переработал приложение под планшеты
Самая сложная задача: сохранить скорость списков до сотен тысяч тяжёлых записей, когда FlatList и AsyncStorage перестали справляться (это был 2017 год).
React Native · redux · redux-saga · react-navigation · Jest
2017
Поиск спортивных площадок на карте и совместное бронирование с друзьями.
- Релиз iOS и Android через 3 месяца после первого коммита
- Приложение построено вокруг MapView из Expo, с Apple Maps и Google Maps
- Over-the-air обновления за годы до EAS и обходные решения для раннего Expo
React Native · redux · Expo SDK 21
2017–2019
Нативное iOS-приложение для хранения и синхронизации фото и видео в своих облачных хранилищах: Google Drive, Яндекс Диск, OneDrive, Dropbox, SMB.
- Взял на себя и отрефакторил legacy-приложение на 50 000+ строк Objective-C
- Синхронизация десятков тысяч фотографий между клиентами и всеми облачными сервисами выше
- Спроектировал новый API и перевёл приложение на него; писал UI- и behavior-тесты
Objective-C · Swift · UIKit · Core Data · CocoaPods