Задача найдена в сервисе myte.me от компаний-резидентов Иннополиса.
Открыть код по ссылке: https://goplay.space/#hMh2XyixXRC (https://goplay.space/#hMh2XyixXRC),
Сделать код-ревью,
Всё.
То есть тебе нужно:
Внимательно ознакомиться с кодом и разобраться, как это работает,
Понять, какие ошибки и недоработки в нём есть,
Подумать ещё и найти замечания, которые не нашёл на предыдущем этапе,
Если свой список замечаний ты снабдишь фрагментами кода с исправленным вариантом - будет вообще идеально.
Всё это нужно прислать нам.
Исходник - список замечаний в нем.
Весь остальной проект в этой директории - мое видение как бы выглядел 1 этап рефакторинга.
Из основных изменений:
- Clean-architecture (handler - service - repository)
- Вынос конфигурации в отдельный .env файл
- Переделка использования пула соединений стандартными средствами библиотеки pgx/v4/pgxpool
- Избавление от panic и println
Покрыть код unit-тестами
Докинуть запуск линтеров с помощью Makefile
Настроить запуск сервиса с помощью docker-compose (БД + сервис)
Забенчмаркать с помощью wrk для проверки производительности
Отпрофилировать с помощью pprof и по-возможности, зарефакторить. А после снова забенчмаркать