28 ноября приходите на новый хабрасеминар. В этот раз мы поговорим про HR-бренд, создающий образ компании, привлекательный для будущих сотрудников. Подробности и регистрация
Обо мне

Опыт тимлида:

  • Создание историй и декомпозиция на задачи
  • Составление roadmap и планов
  • Ввод стажеров в цикл разработки продукта
  • Code Review проектов Python (анализ решений с точки зрения ООП)
  • Автоматизация Code Review
  • Перевод разработки с JavaScript на TypeScript

Опыт работы на Serverside: 

  • Pyramid 
  • Symfony 2 
  • Yii 
  • Sdf 
  • WS
  • Express

Опыт работы во Clientside:

  • React
  • KnockoutJS
  • jQuery

Использовал способы построения приложения:

  • MVC
  • MVP
  • Синхронная серверная верстка
  • Асинхронная серверная верстка с оживлением страницы на клиенте
  • Подписка на события от сервера

Любимые ЯП:

  • TypeScript
  • Python
  • C#

Писал сервис подписки на события от сервера в браузере. Использовал serviceworker, sharedworker, websocket и indexeddb для работы на 1 000 000+ пользователей с  логированием отказов. 
Пришлось эмулировать SockJS из-за очень большого количества лишнего кода в библиотеке (280кб), что негативно влияет на загрузку страницы.

Помимо создания индекса/среза базы PostgreSQL в MongoDB, создавал абстракцию для существующей ORM к MongoDB

Испробовал множество IDE, такие как Eclipse, Netbeans, VSPHP. Но остановился на PHPStorm и PyCharm + Visual Studio Code.

Из систем контроля версий, больше всех понравился Mercurial. На мой взгляд, это самая продуманная и удобная VSC.

SVN - устарел морально.

Git - очень неудобный, не продуманный. Абсолютно не подходящий инструмент для использования merge стратегии для поддержания продукта имеющего несколько поддерживаемых версий.

Считаю что смысл ООП в том, что бы код сам себя документировал и показывал единственный путь его использования.

Паттерны - всего лишь способ сокращения затрат времени при общения программистов друг с другом.

Профессиональные цели: Реализация highload проекта с минималистичным функционалом, но очень удобным для пользователя.

Жить решил в Казани, на ближайшие 10-15 лет

Профессиональные навыки
Участие в профессиональных сообществах
Опыт работы
Разработка системы деловых коммуникаций и электронного документооборота с >1 млн. компаний-пользователей
Ведущий программист
Январь 2015 — По настоящее время (4 года и 11 месяцев)
Программист
Февраль 2012 — Декабрь 2013 (1 год и 11 месяцев)
Обязанности: - Выбор подходов для разработки системы - Декомпозиция user story - Распределение задач
Информационные технологии, системная интеграция, интернет Интернет-компания
Программист
Июнь 2011 — Сентябрь 2011 (4 месяца)
Обязанности: - Разработка корпоративного софта Достижения: - Разработан граббер, использующий правила задаваемые пользователем
ООО "Платформа ЮТИНЕТ.РУ"
Москва
Программист
Май 2010 — Июнь 2011 (1 год и 2 месяца)
Достижения: - http://note.utinet.ru/ - Разработка поиска понимающего человеческий язык - Разработан сложный client-side
Nicko Tour
Казань
Разработчик интернет решений
Март 2010 — Сентябрь 2010 (7 месяцев)
Обязанности: - Разработка и поддержка web-регистрации и административной части Достижения: - http://congress.phys.msu.ru/registration/Registration-online/
ООО "Стереокиллер"
Москва
Программист
Август 2008 — Январь 2010 (1 год и 6 месяцев)
Достижения: - music.golden.ru - beat2b.ru - muzyka.ru - style-records.ru - music.paparazzi.ru
Высшее образование
Казанский национальный исследовательский технический университет (бывший КГТУ) им. А. Н. Туполева
Казань
Факультет: Технической кибернетики и информатики
Январь 2003—Январь 2008 (5 лет)