Задача

Необходима постоянная помощь в доработке мобильного приложения (iOS / Android) и его серверной части. Мы используем современный стек и код должен быть чистым, производительным и готовым к масштабированию.

Технический стек

Flutter (фронтенд)

  • Flutter (Dart 3.0)
  • hooks_riverpod / flutter_hooks - для управления состоянием
  • go_router - для навигации
  • WebSocket (socket.io) - для взаимодействия в реальном времени
  • Firebase Cloud Messaging - для пуш-уведомлений
  • WebView / OAuth - для авторизации

Backend (Node.js Sails.js)

  • Sails.js 1.x
  • MySQL - база данных отношений
  • Redis - для сессий и shared-состояния Socket.io
  • Socket.io - для поддержки реалтаймовых функций
  • Joi - для валидации данных
  • Развитие и оптимизация REST API

Основные требования к выполнению

Передний план (Flutter)

  • Доработка интерфейса согласно ТЗ
  • Интеграция с бекенд-API через HTTP и WebSocket
  • Оптимизация отправки запросов: сокращение числа вызовов, useCatch и т.д.
  • Высокая производительность: асинхронность, отсутствие ненужных перестроений
  • Работа с пушами (Firebase Cloud Messaging)
  • Разделять логику: виджеты, про-виджеты(хуки), сервисы, view-отделения

Общая архитектура

  • Писать читаемый, краткий и оптимизированный код
  • Минимизировать дублирование и «лишнюю логику»
  • Придерживаться единого стиля и паттернов проекта (MVVM + Riverpod)
  • Код должен поддерживаться в состоянии, удобном для дальнейшего масштабирования