License GitHub go.mod Go version

Внимание: я не являюсь ни автором задания, ни даже сотрудником компании автора. Я просто нашел ее на просторах github-а и, для обучения и тренировки, попробовал решить ее в меру своего понимания.

Тестовое задание для Golang разработчика

Тестовое задание для кандидата на должность Golang разработчика.

Описание

Есть внешний сервис, который обрабатывает некие абстрактные объекты батчами. Данный сервис может обрабатывать только определенное количество элементов n в заданный временной интервал p. При превышении ограничения, сервис блокирует последующую обработку на долгое время.

Задача заключается в реализации клиента к данному внешнему сервису, который позволит обрабатывать максимально возможное количество объектов без блокировки. Приводить реализацию внешнего сервиса необязательно!

Требования

  • решение должно быть в git-репозитории (можно прислать архив или опубликовать на github, gitlab, bitbucket...).

Пожелания

  • документирование кода;
  • тесты;
  • использование статического анализатора (конфигурацию положить в репозиторий).

Выполнение

make lint   // линтер
make test   // тесты
make run    // запуск

Перед реализацией методов добавлено описание (программа маленькая, незачем прикручивать большую доку вроде Swagger-а)