Sobre la vacante
Нужно развивать мобильное приложение для специалистов, работающих с оборудованием на объектах, включая офлайн-сценарии и нативные возможности устройств. Разработчик войдёт в существующий Vue 3 + Capacitor проект и будет поддерживать его стабильность на iOS и Android.
О продукте
Мобильный клиент платформы для управления техобслуживанием оборудования. Мастера и сервисные специалисты используют приложение на объекте для работы с заявками, оборудованием, фотографиями, статусами и чатом даже без стабильного интернета.
Условия
- Полная удалёнка
- Занятость part-time
- Часовая ставка — 1300 руб./час
- Оформление через самозанятость РФ/РБ или ИП РФ/РБ
Технологии
- Монорепозиторий
- Vue 3 и TypeScript
- Capacitor и WebView
- Офлайн-синхронизация
- Push-уведомления
- Камера и сканер штрихкодов
- Работа с файлами
Что предстоит делать
- Писать новый функционал и дорабатывать существующий: экраны, бизнес-логику и интеграцию с API
- Развивать офлайн-режим и синхронизацию
- Работать с нативными возможностями устройства: камерой, файлами и сканером
- Поддерживать стабильность и качество приложения на реальных iOS и Android
- Следить за UX и реагировать на изменения бэкенда и API-контрактов
Обязательные требования
- Уверенное владение Vue 3, Composition API и TypeScript в продакшене: компоненты, роутинг, состояние и типизация API-контрактов
- Опыт разработки мобильного фронтенда: адаптивность, safe area, клавиатура, жесты, производительность списков и скролла, ограничения WebView
- Опыт работы с Capacitor или сильный опыт с Cordova или Ionic и готовность быстро перейти на Capacitor
- Знание cap sync, жизненного цикла приложения, работы с нативными плагинами и отладки на реальных iOS и Android
Будет большим плюсом
- SignalR или real-time поверх REST
- Офлайн-first, SQLite на мобильных устройствах, PowerSync или похожий sync-слой
- Drizzle ORM
- Нативная отладка в Xcode, Android Studio и Gradle
- Понимание FCM; в проекте используются Firebase и Google Services на обеих платформах
- Sentry, включая mobile- и Capacitor-контекст
Как откликнуться
По всем вопросам: @giveyourtears