Привет!
Я — Денис Аникин

Работаю в Райффайзенбанке.

Пишу на python и typescript. Я teamlead или techlead (как вам удобнее), и fullstack программист. Так же я построил и развиваю корпоративное python сообщество.

Обо мне

Обычный программист, ординарный человек.

Сейчас я тимлид в трёх командах. Они пишут сложного AI чат-бота, омниканальную чат-систему и CRM. Все проекты написаны всего на 2 языках — python и typescript. Все проекты спроектированы и много лет разрабатываются с нуля. Чат и бот давно в продакшене. Чат уже выместил старую legacy систему, а CRM мы только начинаем.

Люблю fullstack разработку, а так же выступаю техническим лидером в командах, декомпозирую, рисую стрелочки в архитектурных схемах, провожу CR, фасилитирую встречи, пишу бекенд, фронтенд, верстаю, занимаюсь DevOps (day 1/day 2 активности), делаю командные автоматизации, организую и улучшаю процессы.

Так же я основал и очень активно развиваю python сообщество в банке. Сейчас активно собеседую людей, регулярно провожу разные мероприятия (митапы, обсуждения, воркшопы, обучение, онбординг), занимаюсь ассессментами и всем, что помогает делать сообщество больше, умнее, быстрее и технологичнее.

Python — мой любимый язык, на котором я могу написать сервис произвольной сложности. Мне нравится go (и у меня есть опыт вывода в продакшн сервисов на нём). Я положительно отношусь к rust, строгой типизации, теории типов вообще, элементам ФП и монадам в меру своего неглубокого понимания.

Кроме этого, смотрю ютуб, netflix, читаю мангу, смотрю аниме, люблю быстро ездить на машине и много работать. Плохо отношусь к авторитетам и апелляции к ним, считаю, что ошибаться — нужно. В еде предпочитаю rib eye, малину и cola zero. Ставлю лайки котам, смешным и, особенно, тупым шуткам.
В общем, я обычный low-key персонаж 👋

Мои навыки

Кроме того, на linkedin есть множество пройденных тестов и подтверждений навыков. И, конечно же, в моём профиле на github видно применение многого из описанного.
  • Python 3.12+
    • Очень много опыта
    • Хорошие знания современных трендов и нюансов работы python
    • Хорошо разбираюсь в инфраструктуре python и отличаю pypy, mypy, pyenv, pipenv, cython, cpython, cythonize, pypa, pypi друг от друга :)
    • FastAPI, Litestar
    • Django и основные распостранённые батарейки, Falcon, Flask, Asyncio, Sanic, Aiohttp
    • Celery, RQ
    • Threading, Multiprocessing, Subprocess (всякие разные супервизоры, CLI, CI/CD и прочие сценарии)
    • Typing, включая протоколы и прочие интересные новые штуки
    • PyTest, Faker, Hypothesis, Schemathesis
    • Pipenv, Poetry, PDM
    • Fabric
    • MyPy, Ruff, Black
    • Typer
  • Golang
    • Некоторое количество опыта
    • Опыт разработки системных и инфраструктурных микросервисов
  • MySQL, PostgreSQL
    • ACID, CAP
    • Транзакции
    • Сложные запросы
    • Профилирование
    • Репликация (row, statement, mixed, master-slave, master-master, sync, async)
    • Индексы (Btree, Hash, Gin, Gist, Brin)
    • Триггеры
    • Переход на 4x байтовый юникод и прочие нюансы жизни с mysql
  • PHP 8 (последнее время редко)
    • Много опыта
    • Zend
    • Symfony
    • Laravel
    • Yii
    • Phalcon
  • Redis
  • Node, Express, Fastify, Next.js
  • MQ
    • RabbitMQ
    • Kafka
  • HTML, CSS
    • HTML5
    • CSS3 (flexbox, grid, float, inlineblock, table и так далее)
    • Sass, Compass, PostCSS
    • БЭМ
    • Семантичность, Валидность, Кроссбраузерность (caniuse, browser market share etc.)
    • Профилирование, Отладка скорости рендеринга (Reflow/Repaint)
    • SVG, WEBP
  • TypeScript
  • PWA
  • JavaScript
    • Vanilla ES2018
    • React: axios, router, mobx и т. п.
    • Styled components/аналоги
    • Vue — поверхностно
    • SSR (react, django + node + react)
    • Gulp, Webpack
    • NPM
    • Websocket
    • Service Workers (пуши, оффлайн версии)
    • Разное всякое из прошлого: Backbone, Underscore
  • JQuery
  • ExtJS/Sencha
  • Ionic (Angular)
  • DevOps
  • REST, RPC, SOAP, Websocket
  • Docker
    • Очень много опыта
    • Оптимизация образов: builder pattern, one layer, multistage, squash
    • Безопасность образов
    • Версионирование, повторяемые сборки, идемпотентность
    • Hadolint, ИБ статический анализ
    • Разработка в docker, hotreload
    • Docker Compose
    • DockerHub
    • Buildah, Kaniko
    • Podman
  • Kubernetes
    • Ванильный k8s
    • Защита кластера, вопросы ИБ
    • Helm
    • Kubelint
    • Разработка в k8s — skaffold, tilt
    • Ambassador/Emissary
  • Day 2
    • Логгирование: структурные логи, stdout
    • ELK стек
    • Opentracing, APM, Jaeger
    • Exception tracking: sentry
  • CI/CD
    • Gitlab CI
    • GitHub Actions
    • Bamboo
    • Jenkins
    • TeamCity
    • TravisCI
  • Построение SDLC любой сложности
  • Nginx
  • TCP/IP, UDP, HTTP, HTTPS, HTTP/2
  • LetsEncrypt
  • Bash, Zsh, Coreutils
  • Экспериментирую: kata, cri-o
  • CNCF landscape
  • Так же выступаю лидом DevOps инженеров
  • Техническое лидерство
  • Управление разработкой
  • Управление техдолгом
  • Развитие разработчиков, DevOps инженеров. Пример карты развития: https://miro.com/app/­board/o9J_ko1axf8=/
  • Фасилитация встреч: проведение daily, pbr, retro
  • Груминг беклога
  • Проведение 121/one-to-one/тет-а-тет
  • Найм
    • (много опыта)
    • проведение собеседований с сохранением артефактов
    • построение системы найма
    • подготовка нанимающих
  • Проведение ассессментов
  • Computer science
    • Алгоритмы
    • Структуры данных
    • Решаю задачи: вот тут я качаюсь на CodeWars, а тут ещё медленнее на HackerRank
      Codewars badge
  • Архитектура
    • Микросервисная
    • Монолитная
    • DB per service
    • Service discovery
    • Sidecar
    • Circuit breaker
    • CQRS
    • API gateway
    • Exception tracking
    • Health check API
    • Service per container
    • JWT, access, refresh
  • GIT, SVN
  • Изредка контрибьючу в опенсорс, когда хватает времени — GitHub
  • Юнит, интеграционное, регрессионное тестирование, e2e тестирование — cypress
  • A/B тестирование
  • CMS
    • Drupal
    • Joomla
    • Wordpress
    • Bitrix (средне)
    • Sbuilder
    • PhpShop (средне)
    • Modx (хорошо) (и стыжусь этого)
  • MacOS (рабочая система) / Debian (сервера) / Ubuntu (рабочая система, сервера) / Centos (сервера)
  • GRASP, SOLID, KISS, YAGNI, DRY
  • OWASP (кое-что)
  • Экспериментирую: Nim, Crystal, Elixir, Rust
  • SEO
  • Photoshop/AvoCode/Zeplin/Figma etc.

GitHub

Мой гитхаб профиль можно посмотреть вот тут. Ниже расположена некая автоматическая экстракция (кешируемая) отсортированных по звездам репозиториев, которые не совсем уж стыдно показать.

Публичная активность

Иногда я пишу статьи:

Я часто выступаю на конференциях и митапах. За прошедшие 4 года я выступил не менее чем на 30 внутренних мероприятиях, а так же более чем на 15 внешних. Презентации к моим выступлениям можно посмотреть онлайн на speakerdeck или в виде исходников (некоторые) в github репозитории.

А ещё можно посмотреть видео моих выступлений:

Показать больше видео

Некоторые проекты, над которыми я работал

Здесь предоставлены некоторые проекты, с которыми я работал или которые я полностью разрабатывал, а так же которые я имею возможность продемонстрировать (так уж вышло, продемонстрировать можно в основном сайты). Некоторые работают на django, некоторые на современных асинхронных python фреймворках, некоторые и вовсе на php.

Я не владелец этих ресурсов и не отвечаю за их работопособность. Просьба относиться с пониманием, если что-то не работает.

Список составлен в случайном порядке. Все ссылки открываются в новом окне.

Предупреждение: увы, под ваш браузер сайт не адаптирован и может работать некорректно. Вы можете обновиться, взять другой браузер или просто использовать как есть. Решать вам