Немного о себе

Зовут меня Дмитрий.
Меня привлекают сложные и интересные проекты.
Из языков программирования интересуют больше всего python и javascript.
Для взаимодействия с коллегами нравится SCRUM и особенно парное программирование.
Найти меня можно:
в твиттере - https://twitter.com/#!/bullgare,
в facebook - http://www.facebook.com/bullgare,
в LinkedIn - http://www.linkedin.com/pub/дмитрий-болгов/42/106/506,
в МойКруг - http://dbolgov.moikrug.ru/.
А ещё у меня есть блог.

Навыки

Опыт работы web-разработчиком (PHP, Python, MySQL, PostgreSQL, javascript (в том числе jQuery), apache, nginx, memcached, CouchDB) от стадии написания ТЗ до реализации проекта.
Участие в разработке интерфейсов, unit-тестирование.
Использование сторонних библиотек и API, а также написание собственных.
Разработка сайтов с оптимизацией под высокую посещаемость (оптимизация и клиентская, и серверная).
Опыт работы в команде (в частности, по SCRUM), в том числе в качестве ведущего разработчика. Постановка задач, контроль сроков и качества выполнения работы. Соблюдение стандартов кодирования.
Работа с системами контроля версий: SVN и Mercurial.
Опыт работы с баг-трэкерами: Trac, Redmine, Acunote, JIRA.
Опыт работы с zabbix, cacti и другими инструментами мониторинга работоспособности системы.
Опыт администрирования Linux/FreeBSD.
Ведение разработки в Linux/Windows 7/Mac OS.
Владею техническим и разговорным английским.

Образование

1999-2005 факультет ЭТФ МИФИ (ГУ)
2005-2008 аспирантура в УНЦ ОИЯИ

Опыт работы

Март 2003 — май 2007
ОИЯИ
инженер
программирование, обработка данных, HTML, CSS, PHP, C, Assembler, Delphi, Fortran, Root
Март 2006 — июнь 2009
АртПро
php-программист (удалённая работа)
php, mySQL, xHTML, dHTML, JavaScript, разработка проектов от написания ТЗ до кодирования и первичного наполнения базы.
Создание систем автоматизации, управления (CMS), разработка и написание интерфейсов для пользователей, администраторов, клиентов.
Май 2007 — октябрь 2009
Эф-Си Про
web-программист, ведущий разработчик
Разработка, модернизация и поддержка сайта Мой компас (социальная база знаний).
Весь спектр работ по разработке проекта - от постановки задач и выбора архитектуры до реализации, а также unit-тестирование, формулирование задач сотрудникам, контроль выполнения работы.
Работа с языками и технологиями: PHP, mySQL, javascript, apache, nginx, memcached, APC, CouchDB, ajax, jQuery, SVN
Ноябрь 2009 — Май 2011
ООО "Мегаплан"
разработчик
Разработка и сопровождение модулей системы управления проектами Мегаплан с использованием PHP, javascript (jQuery), postgreSQL. Отдельные разработки на python.
Участие в проектировании системы. Программирование, вёрстка, соблюдение бизнес-требований, качества и сроков выполнения.
Работа по XP и SCRUM (в том числе, в роли скрам-мастера). Взаимодействие с членами команды и с другими командами разработки.
Соблюдение стандартов кодирования. Использование сторонних библиотек и написание собственных.
Использование распределённой системы контроля версий (mecurial).
Разработка в ОС Linux.
Май 2011 — по настоящее время
Undev
разработчик
Развитие сайта moskva.fm. PHP, javascript (jQuery, jQuery-UI, jQuery-template, Underscore.js), MS SQL Server, SVN -> git.
Программирование, вёрстка, выявление узких мест и оптимизация под большую нагрузку.
Сбор и анализ статистики использования ресурсов серверов и сети, помощь в администрировании системы.
Достижения
Serverside
  1. Сделал систему пригодной для unit-тестирования и внедрил тесты для части критичного функционала
  2. Разработал расширяемую систему исключений и внедрил её в систему (+логирование)
  3. Внедрил систему логирования нетривиальных ошибок, возникающих на production-окружении
  4. Внедрил Pheanstalk, после чего разработал новую систему отправки почты (статистика, оповещение о сбоях как при генерации сообщений, так и при оправке)
  5. Сделал удобный интерфейс для просмотра запросов к серверам (к базам данных, к кэшу: количество (+одинаковых) запросов, время выполнения и объём передаваемых данных по каждому)
  6. Систему для контроля за запуском заданий через cron с блокированием запусков напрямую и контролем за исполнением заданий, в том числе, по расходуемой памяти
  7. Инициировал внедрение logwatch
Clientside
  1. Логирование ошибок на клиенте в базу данных для последующего анализа
  2. Внедрение системы автономных виджетов-шаблонов
  3. Перевод javascript-кода на jquery-ui виджеты (с наследованием и некоторым расширением функционала виджетов jquery-ui)
  4. Внедрение клиентских шаблонизаторов (jquery-ui templates -> underscore.js)
  5. Версионирование js- и css-файлов для более правильного кэширования
  6. Доработка процедуры деплоя для склеивания js-файлов в несколько крупных
  7. Переход на jQuery.deferred
  8. Отложенная загрузка баннеров
Апрель 2007 — по настоящее время
удалённая работа
разработчик
Создание MVC-фреймворка (PHP) и реализация на его основе:
интернет-магазина электротехнических товаров
и интернет-магазина подарков "Брюссельские штучки".
Разработка проекта в рамках изучения python/django.
Работа с языками и технологиями: PHP, mySQL, PostgreSQL, python, django, javascript(jQuery, Underscore.js, Backbone.js), nginx