Предыдущий проект Следующий проект

TaskRunner app - платформа для заказа услуг

Индустрия Услуги
Расположение Швеция
Разработка 2019-по этот день

Джон часто видел, как отец обращался к соседу за помощью. Он задумался, почему не было других соседей, которые могли бы помочь, когда возникали иные проблемы. Это посеяло зерно, которое намного позже стало основой для создания TaskRunner.

Задача

TaskRunner — это онлайн-платформа для заказа услуг. В системе есть две основные роли: Runner/Раннер (исполнитель) и Poster/Постер (заказчик услуг). Постеры создают задание с описанием того, что необходимо сделать, и публикуют его на платформе TaskRunner. Раннеры отправляют заявки на выполнение задания, Постер выбирает исполнителя и вносит оплату за работу. После того, как Постер и Раннер подтвердят завершение задания, последний получает оплату. Также предусмотрена административная роль для управления и контроля системы.

Платформа TaskRunner включает в себя:

  • Мобильное приложение для Постеров (для платформ Android и iOS)
  • Мобильное приложение для Раннеров (на платформах Android и iOS)
  • Панель администратора (веб)

— Мы использовали подход, когда для двух разных приложений общая бизнес логика описана в едином модуле. Это позволило ускорить разработку и упростить поддержку приложений в будущем.

Антон Бевза, Android разработчик

Решение

Клиент пришел в Stfalcon уже с готовым продуктом. Однако пользователи постоянно жаловались на проблемы и сбои в работе как приложений, так и админ панели. После тщательного аудита старого проекта, оценки стоимости и рисков доработки, было решено переделать проект с нуля использовав при этом наиболее современные технологии.

Backend был реализован на платформе ASP.NET, в качестве СУБД использовался Microsoft SQL Server. В связи с высокой требовательностью данных продуктов к ресурсам, общая производительность системы была низкой. Плюс к этому - — высокие эксплуатационные расходы продуктов Microsoft. Новую систему решили разрабатывать на платформе Symfony, и использовать PostgreSQL в качестве СУБД. Мы написали несколько дополнительных утилит для переноса данных с Microsoft SQL Server на PostgreSQL.

Старые мобильные приложения были реализованы с помощью технологий Cordova и React. Так как главными требованиями к новым приложениям были стабильность и скорость работы, наши специалисты разработали нативные iOS и Android приложения.

Технологии

Backend реализует REST API для обмена данными с клиентскими мобильными приложениями, интегрирован с несколькими внешними сервисами для выполнения ряда операций: — оплата заказов, отправка email, SMS и PUSH-уведомлений. Работа в среде Kubernetes повышает надежность и отказоустойчивость серверной части продукта и системы в целом.

Android приложения соблюдают принципы Clean Architecture. Проект разделен на четыре независимых модуля: Poster, Runner, Domain, Data. Domain и Data модули общие для приложений Постера и Раннера, это позволило избавиться от дублирования бизнес-логики, схожей в двух приложениях, что значительно сэкономило время разработки.

В версии iOS мы использовали архитектуру как на Android, 4 модуля: Domain, Data, Runner Presentation и Poster Presentation. Для привязки данных мы применили RxSwift, так как для слоя Presentation была использована архитектура MVVM. Swinject, библиотека Dependency Injection, была использована нами для инициализации новый модулей. Это значительно упрощает их создание и повторное использование.

Для систем подобного типа важно иметь возможность анализировать действия пользователей. Для этого мы интегрировали два сервиса сбора аналитики — AppsFlyer и Segment.
Также для обеспечения обратной связи и реализации возможности пользователям обратится в тех. поддержу и получить немедленный ответ внутри приложения, мы интегрировали сервис Intercom.

Отзывы клиентов

Robin Szekely
Founder of TaskRunner - online platform for ordering services
Martin Dam
CEO at TaskRunner – online platform for ordering services
Мы переписывали продукт с нуля с командой Stfalcon. Я очень рад сотрудничеству. Отмечу приемлемые цены, хорошую комуникацию и качество продукта.
Robin Szekely
Основатель онлайн-платформы для заказа услуг “TaskRunner”

Результат

Мы переделали с нуля все компоненты системы, улучшили стабильность, скорость и удобство работы с приложениями и админ панелью, при этом сохранили 100% существующих пользователей платформы.



Над проектом работали:

  • Александр Арбузов
    Александр Арбузов

    Проектный менеджер

  • Татьяна
    Татьяна

    Дизайнер

  • Павел Попов
    Павел Попов

    Backend разработчик

  • Антон
    Антон

    Руководитель отдела Mobile

  • Андрей
    Андрей

    Android разработчик

  • Александр
    Александр

    IOS разработчик

  • Александра Битюк
    Александра Битюк

    QA инженер

  • Евгений
    Евгений

    DevOps

Наши проекты