Подпишитесь на нашу рассылку и следите за самыми последними проектами, услугами и специальными предложениями!

Ru

Вы используете устаревшую версию Internet Explorer. Для лучшей работы сайта, пожалуйста, обновите ваш браузер.

Taxi Service

Сложность проекта
2017
Дата сдачи проекта:
  • Описание

Tab 1

Сервис Такси - это клиент-серверное приложение для поиска, вызова и оплаты такси, которое включает разработку мобильных приложений для водителей и пассажиров на Android и iOS, взаимодействующих с back-end через RESTful API.

Функциональность сервиса включает в себя множество опций, специфических для каждой пользовательской стороны. Интеграция с картографическими сервисами Google и Yandex позволяет пассажирам видеть на карте, есть ли в их местности доступные такси, и выбрать ближайший автомобиль с учетом пробок, а интеграция с системами обработки платежей обеспечивает возможность оплаты поездок банковскими карточками или наличными. Заказ такси «в одно нажатие» делает сервис очень простым в использовании. Приложение отображает время до прибытия такси и примерную стоимость поездки, которые рассчитываются на стороне сервера. Кроме этого, пассажиры могут увидеть рейтинг водителей, просматривать историю их поездок и отказаться от такси, если в нем больше нет необходимости.

Приложение для водителей позволяет им принимать заказы, указывать предпочтительный район заказа и выбирать заказы по местоположению. Благодаря разным вариантам работы, предусмотренным сервисом, они могут выходить на линию в любое удобное время. Также водители имеют возможность просматривать статистику времени работы, количества заказов и дохода за разные периоды, и управлять своим профилем. Сервис включает в себя систему бонусов и штрафов, и оптимальный алгоритм дополнительных платежей за короткие и длительные поездки, отказы. Приложение позволяет разделить районы на зоны и определить коэффициенты зон, которые зависят от нагрузки и влияют на стоимость поездок. Связь между водителями и пассажирами осуществляется посредством звонков и сообщений прямо из приложения.

Управление системой осуществляется через веб-доступ. Администраторы могут управлять профилями водителей, территориальными коэффициентами, финансовой частью сервиса, системой премий и штрафов, просматривать историю поездок.

Основные технические характеристики сервиса:

  • Оптимизация API с помощью long-pool запросов
  • Интеграция с картографическими сервисами Google и Yandex
  • Поддержка непрерывной работы в фоновом режиме
  • Взаимодействие с платежными системами через API
  • Собственный финансовый блок для обработки транзакций

Реализация этого проекта оказалась довольно сложной, и, работая над ним, наша команда столкнулась со многими задачами, которые потребовали высокого профессионализма и блестящих навыков работы каждого члена команды:

  • Высокая загрузка системы, связанная с постоянным подключением к серверу с использованием мобильного Интернета, потребовала разработки оптимальных алгоритмов и способов взаимодействия приложений с сервером;
  • Реализация финансового блока, интеграция с системами обработки платежей;
  • Оптимизация системы, чтобы она работала в фоновом режиме без перебоев;
  • Реализация большого количества кастомных элементов пользовательского интерфейса.

Платформа: Server, Web, Mobile

ОС: iOS, Android, Linux

Языки программирования: Java, JavaScript, Objective-C

Библиотеки / Фреймворки: Butterknife, CoreAnimation, CoreGraphics, CoreLocation, Crashlytics, Eventbus, Google API, Yandex API, Gradle, Gson, Hibernate, JAX-RS, Jersey, Mailgun API, OkHttp, Parceler, Picasso,  RestKit, Retrofit, Retrolambda, Spring Quartz, Spring Security

Технологии: Geo-location (Yandex, Google), Fin-tech,  High-load, Background mode, Push notifications, REST API

Команда:

  • 3 Java разработчика
  • 3 Android разработчика
  • 3 iOS разработчика
  • 1 JavaScript разработчик
  • 1 QA manager + 1 инженер автоматизированого тестирования + 1 инженер ручного тестирования
  • 1 PM + 1 Team Lead + 1 архитектор системы
  • 1 системный администратор

Технологии

JAVA
iOS
Android
JS

Услуги

Веб разработка
Мобильные приложения
Тестирование ПО
Разработка архитектуры системы