About.me
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)