GitHub: https://github.com/Intey

Hard skills

Общий опыт работы в по техстекам (не считая github, личные увлечения).

  • 3 года: С++, Qt, Cmake, GTest Могу с нуля начать проект на Cmake, сделать разбивку на библиотеки/исполняемые/тесты. Умею в указатели “голые”, знаю зачем weak_ptr/shared_ptr. знаю как дебажить, когда-то пользовался PRAGMA OMP для распараллеливания, если надо в потоки - буду гуглить, разберусь. Могу делать UI на QT, понимаю MVC их, могу связывать QT модели с QML. Тесты на GoogleTestFramework.

  • 3 года: Python(3), Django, ReactJS+Redux

Имею опыт разработки web-backend’а на python(Django+RestFramework, Flask). Для frontend предпочитаю ReactJS в связке с Redux.

  • 2 года: DDD, Clean Architecture В разработке имею сильный уклон в DDD и прочие. В одном из проектов, мы с этого получили огромные бонусы через пару лет как начали. Понимаю SOLID, стараюсь использовать, осторожно отношусь к DRY(объединял то, что не стоило, как потом оказалось). Но стараюсь всегда трезво оценивать roadmap проекта, и применять более подходящее решение. Для write-only или short-living (< 2 лет) не беру DDD.

Other

Умею и люблю рисовать диаграммы, VisualParadigm, DrawIO, лист бумаги (the est) и т.п. Почти разобрался в Haskell, монадах, трансформерах и т.п. в ООП они не нужны =) Пишу документацию в asciidoc, markdown. Есть опыт написания диаграмм в plantUML. Когда-то готовил XSLT+XML, в том числе работа с DocBook.

DevOps

Опыт работы с Docker-контейнерами и оркестрацией:

  • создание образов, понимаю почему Go так популярен в контейнерах, а не Python или C++
  • немного умею работать с OpenShift: подготовка “спек” на развертывание приложения, состоящего из нескольких сервисов, знаю про readness/liveness probe.

Tooling

ОС Linux(Debian, ArchLinux). Предпочитаю терминальные команды графическим утилитам - мне так удобнее, к тому же умею писать скрипты.

Уверенный пользователь Vim.

Часто использую VSCode.

Свободно работаю в QtCreator, PyCharm.

Soft skills

Не чураюсь аналитики, общения с заказчиком, формализации требований.

Стараюсь решать задачи самостоятельно. Если приходится искать готовое решение, то как правило стараюсь понять принцип работы хотябы ориентировочно, а не просто скопировать.

Стараюсь писать самодокументированный код или оставляю комментарии при необходимости. Люблю документировать то, что делаю: описываю в Confluence какие решения и когда принимались, если есть время.

Стрессоустойчив, но при затяжных(более 1 месяца) авралах обновляю резюме =)

Free time

В свободное время увлекаюсь создание pet-проектов которые никода не будут доведены до конца. Достаточно взглянуть на github =)

Направления:

  • Gamedev
  • рабочие вопросы, эксперименты и быстрые “тупые” архитектурные наброски
  • новые языки (Red, Haskell)