Skip to content

apfirsov/interview-service

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

interview-service

Задача №1:

Починить баги по порядку

Баг №1:

Починить запуск приложения

Баг №2:

Не отображается документация по http://localhost:9099/docs/index.html

Баг №3:

Запрос по http://localhost:9099/api/v2/client/user/get-loss не найден

Ожидаемый результат: запрос выполняется
Фактический результат:  404 Not Found

Баг №4

Запрос по http://localhost:9099/api/v2/client/user/get-loss возвращает некорректные данные

Ожидаемый результат: { "loss": -1000 }
Фактический результат: { "Loss": -1000 }

Баг №5

Не проходит валидация при создании ордера на продажу (side: "ask") http://localhost:8085/api/v2/client/order/create

Ожидаемый результат: { "orderId": "идентификатор созданного ордера" }
Фактический результат: Key: 'CreateOrderRequestDto.Side' Error:Field validation for 'Side' failed on the 'side' tag

Баг №6

Ожидаемый результат: Возвращает массив топиков через запятую ["command.topic", "confirm.topic"]
Фактический результат: 500 Internal Server Error

Баг №7

На продакшене произошло ЧП, удалились все пользователи, необходимо просмотреть код и найти уязвимости

Баг №8

При создании инструмента ошибки логики приложения http://localhost:8085/api/v2/client/instrument/create

Ожидаемый результат:
            1. Должен создаваться Kafka-топик для инструмента.
            2. Должен создаваться баланс инструмента.
            3. На баланс инструмента должно начисляться 100 000 000 рублей.
            4. Должен возвращать идентификатор указаный при создании инструмента
            5. При повторном вызове создания инструмента с тем же идентификатором, баланс не обнуляется, возвращается ошибка "Баланс создан для инструмента с идентификатором"
            6. Балансы начисляются быстро и не потребляют память
Фактический результат: 
            1: Отсутствуют созданный топик по инструменту в массиве по запросу:
                GET http://localhost:8085/api/v2/client/kafka/topics
            2: Баланс создаётся (работает корректно).
            3: Деньги начисляются непредсказуемо, сервис периодически падает с ошибкой и перезапускается в Kubernetes.
            4. Возвращается идентификатор инструмента не тот который был указан при создании
            5. При повторном вызове создания инструмента с тем же идентификатором, обнуляется баланс
            6. Большое потребление памяти при пополнении баланса инструмента и пополнение занимает много времени 

Задача №2:

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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 99.9%
  • Makefile 0.1%