Skip to content

goandval/calculator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ТЗ

Описание задания

Необходимо разработать API калькулятора обменного курса между крипто и фиатными валютами. В API отправляем исходную и целевую валюты с суммой, ожидаем увидеть результат конвертации в реальном времени. Курсы должны обновляться каждую минуту через фоновую задачу.

Доступные курсы для обмена необходимо брать из БД (Postgresql). Достаточно указать название валюты, код валюты/токена и его доступность (доступен или нет). Если валюта недоступна для обмена, то возвращать при вызове API ошибку.

Технические требования

  • Код должен быть написан на Go не ниже 1.20
  • Для логирования можно использовать zerolog
  • Хранение валютных пар должно быть в структурах данных Go
  • Для API использовать Go Fiber
  • Скорость работы API не должна превышать 100мс
  • Для получения курсов валютных пар использовать https://www.fastforex.io/
  • Поддерживать следующие валюты: EUR, USD, CNY, USDT, USDC, ETH
  • Курсы обновляются в фоне каждую минуту
  • Задание должно быть сдано посредством платформы GitHub или GitLab

Особое внимание обращаем на:

  • Качество кода - код должен быть понятным, читаемым и соответствовать https://go.dev/doc/effective_go
  • Обработку ошибок. Никаких Panic!
  • Расширяемость. Например, добавление новой валюты через БД
  • Документацию с использованием https://github.com/swaggo/swag

Особенности области

Расчет может происходить только между крипто-валютами и фиатными валютами. То есть, допустимые кейсы обмена: крипто-фиат (C2F) и фиат-крипто (F2C), Не допустимые: крипто-крипто (C2C) и фиат-фиат (F2F).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages