Telegram bot на golang, с помощью которого можно играть с другими пользователями в пошаговые игры. Бот состоит из 3ех микросервисов, которые общаются через gRPC. Как базу данных я использую Redis. При написании кода сильно помогало пользоваться TDD. Бот запущен на AWS с помощью docker compose.
Я использую Evolutionary Algorithm. Определим, насколько подходит любое трезвучие к ноте мелодии, как попарную сумму по весам интервалов между нотами. Веса определяются по таблице консонансов и диссонансов. Такая фитнесс функция имеет много плюсов, например, с ней аккомпанемент может подстраиваться даже под изменяющуюся тональность и работать онлайн.
Проводил лекции и практики в летних лагерях и на региональных сборах университета.