Активно программирую микросервисы, пакеты, инструменты и ботов на Go с 2016г. В свободное время занимаюсь разработкой различных проектов на Go и прототипов игр на Godot Engine. Пишу среднего качества синглы и саундтреки. Верстаю доступные, адаптивные и иногда реактивные шаблоны. Не стесняюсь пересылать мемы в рабочие чаты. Умеренно разговорчив. Готов учиться новому, особенно в кооперации с напарником. Запрашиваю помощь только после активного поиска решения самостоятельно. Пью не больше чашки кофе в день. Сова.
Мало что смыслю в алгоритмах из-за среднего уровня математики. Не в курсе о большинстве паттернов, отчасти потому что многие из них не применимы с учётом особенностей языка, отчасти потому, что я могу применять их даже не зная о том что они паттерны. Хитрые участки кода (aka “gotcha’s”) ищу через применение линтеров, т.к. человеческий взгляд и память не очень надёжны. Изучаю тонкую работу с памятью, специфические протоколы и новые технологии в основном когда это необходимо в рамках решения задачи, иначе я забываю о них в пользу чего-то более интересного. В своих проектах стараюсь хранить минимум данных, так что я не углублялся в архитектуры баз данных и особенности PostgreSQL/MongoDB, предпочитая файловые (SQLite3), встроенные (BoltDB) и упрощённые до “ключ-значение”.
Набил руку на REST API и Web-серверах. Часто рефакторю, покрывая тестами ранее написанный код. Читаю профильные блоги в поисках новых практик и решений. Пользуюсь генерацией кода где это возможно. Собираю небольшие Docker-контейнеры для сборки и деплоя собственных проектов вручную. Пользуюсь не более одного эмодзи в коммитах и комментариях для быстрой визуальной идентификации контекста и повышения читаемости. Терпеть не могу дырявые и глючные Zoom или Skype предпочитая Basecamp и Discord для коммуникаций с командой.
Наличие этого резюме говорит об очевидном интересе в поиске работы, предпочтительно – удалённой. Зарплатные ожидания обсуждаю в последнюю очередь. Трейдинг, блокчейны и прочие, основанные на манипуляциях с финансами стартапы не интересуют. Принципиально не работаю с гос. структурами.
Опыт работыНачинал с переписывания веб-сервера со сложной логикой c Python на Go.
Параллельно учился запросам SQLite3 и внедрял применение линтеров. Сильно
позже через рефакторинг добился прироста производительности и упрощения
вёрстки шаблонов.
Рефакторил жуткий и большой legacy-продукт на Go для провайдеров,
избавившись от устаревшей Redis-зависимости в пользу актуальной. Внимал
методологию TDD и чистой архитектуры, которых стараюсь придерживаться до сих
пор. Параллельно изучал вёрстку и доступность, переписывая админку продукта
с непонятного React на доступный Sapper. Пробовал впилить интеграцию с
продуктом партнёров, но всё довольно быстро стухло из-за сомнительной и
сильно устаревшей SOAP API, проблем с документацией и грустного будущего
ручных костылей.
За месяц создал небольшого Telegram-бота для анализа ссылок в сообщениях на
предмет угроз. Сейчас он отключён и-за низкого интереса его дальнейшей
поддержки.
Дважды участвовал в корпоративных хакатонах и один раз даже занимал первое
место.
Начинал с переписывания веб-сервера со сложной логикой c Python на Go. Параллельно учился запросам SQLite3 и внедрял применение линтеров. Сильно позже через рефакторинг добился прироста производительности и упрощения вёрстки шаблонов.
Рефакторил жуткий и большой legacy-продукт на Go для провайдеров, избавившись от устаревшей Redis-зависимости в пользу актуальной. Внимал методологию TDD и чистой архитектуры, которых стараюсь придерживаться до сих пор. Параллельно изучал вёрстку и доступность, переписывая админку продукта с непонятного React на доступный Sapper. Пробовал впилить интеграцию с продуктом партнёров, но всё довольно быстро стухло из-за сомнительной и сильно устаревшей SOAP API, проблем с документацией и грустного будущего ручных костылей.
За месяц создал небольшого Telegram-бота для анализа ссылок в сообщениях на предмет угроз. Сейчас он отключён и-за низкого интереса его дальнейшей поддержки.
Дважды участвовал в корпоративных хакатонах и один раз даже занимал первое место.
ОбразованиеБросил обучение на втором курсе из-за отсутствия интереса к направлению.
ПроектыTelegram-бот для стикеров. Собирает бесконечные коллекции стикеров в обход ограничений на 200 активных наборов, позволяет убрать мусорные/рекламные/дублирующие стикеры и ищет по нескольким эмодзи сразу. +5000 пользователей. Сейчас временно недоступен из-за мажорного обновления платформы требующего рефакторинга.
Golang-пакет для работы с Telegram Bot API с применением пакета valyala/fasthttp. Содержит много вспомогательных утилит и регулярно обновляется. Активно применяю его в разработке собственных ботов.
Экстремально простой Golang-пакет для работы с Telegraph API с применением пакета valyala/fasthttp. Просто работает.
Telegram-бот для стикеров. Собирает бесконечные коллекции стикеров в обход ограничений на 200 активных наборов, позволяет убрать мусорные/рекламные/дублирующие стикеры и ищет по нескольким эмодзи сразу. +5000 пользователей. Сейчас временно недоступен из-за мажорного обновления платформы требующего рефакторинга.
Golang-пакет для работы с Telegram Bot API с применением пакета valyala/fasthttp. Содержит много вспомогательных утилит и регулярно обновляется. Активно применяю его в разработке собственных ботов.
Экстремально простой Golang-пакет для работы с Telegraph API с применением пакета valyala/fasthttp. Просто работает.