👣 Тестовое задание на позицию стажёра-бэкендера + разбор



🟡Задача:

Необходимо реализовать микросервис для работы с балансом пользователей (зачисление средств, списание средств, перевод средств от пользователя к пользователю, а также метод получения баланса пользователя). Сервис должен предоставлять HTTP API и принимать/отдавать запросы/ответы в формате JSON.



🟡Требования к сервису:

1. Сервис должен предоставлять HTTP API с форматом JSON как при отправке запроса, так и при получении результата.

2. Язык разработки: Go.

3. Фреймворки и библиотеки можно использовать любые.

4. Реляционная СУБД: MySQL или PostgreSQL.

5. Использование docker и docker-compose для поднятия и развертывания dev-среды.

6. Весь код должен быть выложен на Github с Readme файлом с инструкцией по запуску и примерами запросов/ответов (можно просто описать в Readme методы, можно через Postman, можно в Readme curl запросы скопировать, и так далее).

7. Если есть потребность в асинхронных сценариях, то использование любых систем очередей - допускается.

8. При возникновении вопросов по ТЗ оставляем принятие решения за кандидатом.

9. Разработка интерфейса в браузере не требуется. Взаимодействие с API предполагается посредством запросов из кода другого сервиса. Для тестирования можно использовать любой удобный инструмент. Например: в терминале через curl или Postman.



🖥 GitHub с решением



@golang_interview