Кто такой наставник и какими гибкими навыками он должен обладать. Читать исследование Хабр Карьеры
Обо мне

В сфере IT с 2007 года.

За все время работы в этой индустрии довелось побывать на многих, и очень разных ролях (что описано в моем "опыте работы"). Сейчас позиционирую себя как Backend разработчик, без привязки к какому-либо конкретному языку или технологии.

В свободное от работы время стараюсь принимать участие в различного рода митапах и конференциях.

Профессиональные навыки
PHPSymfonyDoctrine2PostgreSQLMongoDBRedisGolangGitLinux
Опыт работы
Ключевой технологический партнер лидеров российского бизнеса и государственных структур
Tech lead
Июнь 2019 — По настоящее время (9 месяцев)

Руководитель разработки внутреннего HR-tech проекта

Заработал.Ру
Москва
Backend developer
Январь 2019 — Май 2019 (5 месяцев)

Сервис подбора персонала.

Роль в проекте: Backend developer.

По мимо стандартных рутинных задач (фичи, баги, рефакторинг) был спроектирован сервис взаимодействия с инфраструктурой партнеров компании (Integration API). В его основу легли: DDD, CQRS и гексагональная архитектура, а так же конвеерная архитектура (для организации процесса обработки полученых данных).

PHPLaravelSymfonyGolangNode.jsPostgreSQLMongoDBRedisRabbitmq
Unitemp.ru
Москва
Backend developer
Ноябрь 2017 — Декабрь 2018 (1 год и 2 месяца)

Сервис подбора персонала.

Роль в проекте: Backend developer.

Занимался разработкой Backend сервисов.

По мимо стандартных рутинных задач (фичи, баги, рефакторинг) был задуман, спроектирован и реализован распределенный файловый сервис, который получил название Kraken (https://github.com/russell-kvashnin/kraken). В основу сервиса легли такие идеи как: работа с файлами посредством Memory mapping (linux kernel mmap syscall) и зеркалированием файлов вместо их бэкапирования.

PHPLaravelSymfonyGolangNode.jsPostgreSQLRabbitmqRedisDocker
Свободное плавание
Тирасполь
PHP Backend developer
Июнь 2012 — Ноябрь 2017 (5 лет и 6 месяцев)

После суровой корпоративной разработки захотелось больше свободны, и я отправился в "свободное плавание" (Freelance).

После Java не составило особого труда переквалифицироваться на PHP разработку. Тем более что к этому времени в мире PHP появились такие фреймворки как Symfony2 и Doctrine (идеологические последователи Spring и Hibernate в PHP мире), которые я и использую по сей день, и считаю лучшим тулсетом backend разработки на PHP.

Так же интересовался frontend разработкой. Изучил JavaScript(CofeeScript/TypeScript) и сопутствующие инструменты для разработки SPA: Backbone, AngularJS. В некоторых проектах принимал участие на позиции fullstack разработчика.

Учавствовал в разработке таких стартапов как:

OctoBird: https://octobird.com/en/

Рекламная баннерная сеть.

Роль в проекте: PHP Backend developer. 

За время участия в проекте был разработан механизм агрегации данных из различных источников (RDB, NoSQL DB) и сохранения его в хранилище. Весь процесс агрегации настраиваем с помощью yaml (источники данных, сам процесс и формулы агрегирования, хранилище). В процессе реализации данной задачи получилось довольно плотно поработать с Symfony Config Component и кодогенерацией.

AwardBird: https://awardbird.com/

Сервис подбора авиабилетов за бонусные мили. Ориентирован на западную аудиторию.

Роль в проекте: PHP Backend developer. Разработка механизма поиска оптимального маршрута (прямого либо составного) основываясь на вводе пользователем кол-ва бонусов (по различным программам авиакомпаний или банков).

В разработке использовались Symfony2+Doctrine, в качестве СУБД - PostgreSQL.

Участие в этом проекте помогло очень хорошо познакомится с PostgreSQL, составлением и оптимизацией сложных запросов (табличные выражения, рекурсивные запросы, json/jsonb)

TurboParser: https://turboparser.ru/

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

Роль в проекте: PHP Backend developer, backend architect. Разработка серверной архитектуры приложения, рефакторинг legacy кода, портирование его на новую платформу.

В основу приложения легла конвеерная архитектура и ее реализация с помощью: Gearman, Symfony components, Doctrine2, MongoDB, Redis.

Министерство юстиции ПМР
Тирасполь
Главный специалист отдела разработки программного обеспечения
Июнь 2007 — Июнь 2012 (5 лет и 1 месяц)

Первое знакомство с enterprise разработкой.
Изучение ООП и шаблонов проектирования, аспектно-ориентированного программирования, технологий MVC и ORM совместно с языком Java и СУБД Oracle.
Разработка интранет приложений при помощи таких инструментов как: Spring Framework, Hibernate.

Первое знакомство с документо-ориентированной БД, и всей экосистемой IBM Lotus Notes/Domino. Разработка и сопровождение систем документооборота на этой платформе.

Совместно с разработкой - знакомство с устройством и администрированем *nix операционных систем (FreeBSD, RHEL).
В последствии создание и поддержка отказоустойчивого шлюза на FreeBSD (CARP, Packet filter), Lotus/Domino сервера на RHEL.