API расписания автобусов

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

Задача

API расписания автобусов

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

Автобусы двигаются по маршрутам от конечной до конечной в прямом и обратном направлении. В разных направлениях может быть разный набор остановочных пунктов.

Фронтенд приложения получает данные с сервера через REST API, необходимо реализовать следующие методы этого API:

  • /api/find-bus

Описание: Возвращает автобусы, маршрут которых включает отрезок от одной остановки к другой, с тремя ближайшими к текущему времени вариантами времени прибытия на исходную остановку.

Параметры запроса:

  • from: id исходной остановки.
  • to: id конечной остановки.

Пример ответа:

Методы (или метод) предоставляющие механизм редактирования маршрутов, т.е. набора остановок на пути следования автобуса (без указания времени). Входные параметры и формат ответа продумать самостоятельно.

Требования к реализации:

  • Язык программирования: PHP (версия 7+).
  • Использование фреймворка: допускается использование фреймворка на выбор: Laravel, Symfony, Yii2 или чистый PHP.
  • База данных: PostgreSQL.
  • Использование подхода ООП

Оцениваться будут архитектура решения, качество кода, соответствие REST принципам и тестируемость.

Будет плюсом если проект будет запускаться в docker.

Результат представить в виде ссылки на публичный репозиторий на bitbucket.org. Он должен включать в себя php файлы проекта, sql дамп базы, схему структуры базы данных в виде изображения и инструкцию по запуску проекта.

Опубликовано 23 апреля 2026