Обо мне

Специализация и профессиональные навыки:
Технический директор.
Руководство, разработка, автоматизированное тестирование, эксплуатация.
Организация технического департамента (в том числе процессов разработки, тестирования и эксплуатации).

Языки программирования: Ruby, С, PHP, Python, С++, JavaScript, ActionScript 3, есть опыт разработки апплетов на Java, а также оконных приложений на C#.
Библиотеки и фреймворки:
Ruby: Ruby On Rails
PHP: Zend Framework, Smarty, Symfony, Horde Framework, PEAR
С++/C#: QT
Инструменты тестирования и отладки: Selenium, unittest, PHPUnit, jmeter, qtUnit, phpt, gdb, xdebug, strace, ltrace, tcpdump, valgrind, Apache Benchmark, PHP CodeSniffer, firebug
Базы данных: MySQL, PostgreSQL
Средства непрерывной интеграции: jenkins, cruisecontrol, phpUnderControl
Контроль версий: svn, git
Системы баг-трекинга: Trac, Jira

Доклады на конференциях SQAdays'2008, Highload++'2009, RichClient'2010, Highload++'2012, Форум Технологий Mail.Ru'2013

Профессиональные цели:
Безграничны

Награды, сертификаты, портфолио, проекты:
Медаль "За укрепление дружественности" от компании "Бегун".

Добавил в PHPEmbed поддержку бинарных строк: http://github.com/facebook/phpembed
Решил паззл: http://www.facebook.com/careers/puzzles.php?puzzle_id=1

Опыт работы
Ноябрь 2015 — по настоящее время (2 года и 1 месяц)
Contractor
Сан-Франциско и район залива
Июнь 2014 — Март 2015 (10 месяцев)
Импрув Медиа
CTO
Москва
Обязанности и достижения
Достижения: - Создана команда разработки (Ruby on Rails), производительность которой превышает производительность всех предыдущих команд. Команда под моим руководством и с моим непосредственным участием выпустила InMyRoom.Ru 2.0 и FamilyBoom.ru, - Организованы регулярные митинги и планирование итераций. Налажены системы таск-трекинга и документирования. Организован code-flow. Организована система непрерывной интеграции, починены unit-тесты, появились selenium-тесты. - Найден админ. Приняты на поддержку от удаленной команды эксплуатации продакшен-серверы. Код перенесен с публичного хостинга на серверы компании. Организованы бэкапы. Организован мониторинг. Налажена регулярная оплата хостинга и других платных сервисов
Сентябрь 2011 — Сентябрь 2013 (2 года и 1 месяц)
Руководитель тестирования
Москва
Обязанности и достижения
Достижения: - Построил автоматизированное тестирование, в котором интересно работать (супер-команда, инфраструктура, тестирование, автоматизация, непрерывная сборка, управление требованиями, взаимодействие с заказчиками, менеджерами, разработчиками, админами, HR и PR). - Создал общедоступный для всей компании стабильный многопоточный сервис Selenium Webdriver, который теперь используется в тестировании множества продуктов компании. - Нашей командой с нуля покрыты автоматизированными тестами на python'е сишные демоны проектов РБ и Таргет, основной модуль отдачи рекламы, общий для компании шаблонизатор и основные части веб-интерфейса target.mail.ru. - Создал доступную всей компании инфраструктуру (виртуализация xen с веб-интерфейсом convirt, управление конфигурациями chef, непрерывная интеграция jenkins), приютившую Continuous Integration совершенно разных проектов компании. - Написал и внедрил для тестируемых проектов инструмент управления миграциями БД.
Июнь 2011 — Сентябрь 2011 (4 месяца)
Руководитель управления разработки
Москва
Обязанности и достижения
Достижения: - Совмещал руководство управлением разработки с руководством отделами ruby-разработки и тестирования. - Активно участвовал в разработке в качестве основного ruby-программиста. - За это время внедрено подтверждение регистрации c помощью sms, добавлена возможность совершать обещанный платеж, исправлено огромное количество багов, ускорена работа javascript-кода в панели управления, выпущена первая стабильная версия облака (1.00). - Обучал коллег программированию на Ruby on Rails, JavaScript + JQuery, написанию тестов rspec. - Содействовал первой линии в решении технических проблем, бухгалтерии и другим отделам в создании отчетов. Участвовал в совещаниях, посвященных развитию продукта.
Октябрь 2010 — Май 2011 (8 месяцев)
Руководитель отдела тестирования
Москва
Обязанности и достижения
Достижения: - Наладил процессы тестирования в условиях острой нехватки ресурсов. - Взаимодействовал с отделами разработки, эксплуатации и техподдержки, донося до программистов жалобы пользователей и ускоряя доведение задач до готовности. Участвовал в обсуждении архитектуры функционала по задачам. - Тестировал программные разработки компании (как прикладные, так и системные) с помощью автоматизированных, полуавтоматизированных (с использованием ruby, rspec, с, netperf, netpipe, litmus, iozone, средств unix и т.п.) и ручных тестов. - Составлял планы тестирования и написания автотестов. Проверял функциональные и нагрузочные требования. Ставил задачи на исправление дефектов и развитие системы мониторинга. - Обучал коллег написанию selenium-тестов на cucumber. - Восстановил браузерные selenium-тесты (сucumber, ruby, selenium-rc). Внедрил их запуск в систему непрерывной интеграции. Наладил параллельный прогон selenium-тестов в различных браузерах (в том числе с помощью патча в selenium-rc).
Март 2010 — Апрель 2010 (2 месяца)
РИТ++'2010
Руководитель секции "Качество"
Москва
Обязанности и достижения
Достижения: - Сильная секция "Качество", именитые докладчики, интересные доклады - Пригласил хедлайнера конференции из Facebook
Сентябрь 2007 — Июль 2010 (2 года и 11 месяцев)
руководитель отдела тестирования
Москва
Обязанности и достижения
Организовал отдел тестирования, занимался наймом персонала и руководил отделом, организовал автоматизированное тестирование веб-интерфейсов (PHP), демонов (C++), js-блоков, ActionScript VPAID библиотеки и т.п. на PHPUnit, а также Selenium-RC и Zend Framework. Внедрил систему непрерывной интеграции на основе phpUnderControl. Также я разработал инструмент для публикации формализованных отчетов об ошибке в Trac. Планировал работу команды, создал фреймворк автоматизированного тестирования и настройки тестовой среды, взаимодействовал с отделами разработки, системного администрирования и менеджерами проектов и бизнес-заказчиками. Принимал активное участие во введении стандартов кодирования компании, разделил репозиторий с кодом на текущую и стабильную ветки, организовал выкладку новых продуктов. Также обучал сотрудников приемам тестирования, тонкостям программирования высоконагруженных систем и оптимизации работы с базами данных. Кроме того, придумал и провел через весь жизненный цикл (от обсуждения с бизнес- заказчиками через разработку, тестирование до внедрения в эксплуатацию) проект, приносящий компании несколько тысяч $ в день. Также создал расширение для PHP (extension) для внутреннего использования в проектах компании. Внес заметное количество исправлений в расширение runkit и PHPUnit.
Июнь 2006 — Сентябрь 2007 (1 год и 4 месяца)
ведущий программист
Москва
Обязанности и достижения
Проект Почта.Ру (массовый веб-сервис) + Правильное отображение в веб-интерфейсе всех типов писем + Правильное формирование писем + Поддержка множества комбинаций MIME и кодировок + "Почта на своем домене" + Оптимизировал веб-интерфейс по скорости + Устранил множество XSS- и SQL-уязвимостей в проекте. + Разработал клиентскую часть прототипа онлайн-мессенджера XMPP + Спроектировал и разработал каталог ссылок Почты.Ру + Сделал поддержку OpenId и RSS
Сентябрь 2003 — Январь 2006 (2 года и 5 месяцев)
Дизайн студия «АртАлл»
программист, проектировщик баз данных, системный администратор
Москва
Обязанности и достижения
Создал более 40-а сайтов и административных интерфейсов к ним на основе собственных библиотек классов PHP; Проектировал базы данных (MySQL), исправлял ошибки верстки HTML; Администрировал Linux и FreeBSD, уставливал и настроивал Apache, PHP, MySQL, vsFTPd, Samba, VPN (pptpd); Занимался поисковой оптимизацией.
Август 2001 — Май 2002 (10 месяцев)
renew.ru
программист
Москва
Обязанности и достижения
Программировал на PHP + PHPLib + MySQL + XSLT (Sablotron): быстро доработал сайт trainings.ru (перевел статику в динамику, добавил 16 новых разделов‚ включая форум и поиск по сайту), запрограммировал 6 сайтов. В кратчайшие сроки созданил универсальный административный интерфейс для всех сайтов.
Рекомендательные письма
samsonov-ivan
Бэкенд инженер • знакомый

Багоискатель #1

Письмо написано 03 июня 2014 в 10:03