Резюме

Материал из YourcmcWiki
Перейти к: навигация, поиск
ОС Linux, предпочитаю Debian/Ubuntu, есть опыт системной разработки. Винда, включая некоторый опыт разработки, но не уважаю.
Языки программирования PHP, JavaScript/ECMAScript, HTML/CSS — более 10 лет опыта, node.js > 7 лет, Perl > 7 лет опыта, реже — Java, Python, C/C++, Go и всё остальное вплоть до x86 и ARM ассемблера.
Базы данных MySQL, PostgreSQL (> 10 лет опыта), простые NoSQL (Redis, memcached), также MongoDB, RocksDB, Oracle, SQLite, Sphinx, Elasticsearch и т. п.
Фронтенд HTML, CSS. Предпочитаю React/preact, но также есть опыт Angular, ExtJS, jQuery и всевозможных шаблонизаторов. React Native.
Системы контроля версий Git на экспертном уровне, большой прошлый опыт с Mercurial, Bazaar, Subversion, CVS.
SDS Ceph — настройка и оптимизация.
Кластерное ПО Consul, etcd, Patroni, Stolon, Percona cluster.
DevOps Docker, Docker compose, Docker swarm, Kubernetes, Ansible, Gitlab CI, OpenNebula, nginx, apache, haproxy.
Прочее Линуксоид года где-то с 2006 (Linux везде — на всех ПК, ноутбуках и своих/чужих серверах). OpenStreetmap: osm2pgsql, imposm3, mapnik/renderd, tilemill, OSRM, valhalla, leaflet, tilelive (векторные тайлы). Openesb, jetty, keycloak, wildfly (хотя лучше бы их всех не знать).
Языки Русский (родной), английский (могу проходить интервью).

Опыт работы

Помимо основного опыта работы, имею множество законченных веб-проектов — например, http://redmediatv.ru/ (2012), http://russtroy.ru/ (2013), http://citymaker.ru/ (2015), https://nebo.online/ (2018), http://glam-code.ru/ (2006, существует до сих пор).

С До Название компании Должность Обязанности
2008/10 н.в. CUSTIS Ведущий программист-разработчик 2019: проектирование и разработка новой версии казначейского SaaS (TMS). React, node.js, PHP, Java, PostgreSQL.

2018: различные предпроекты, инфраструктурные проекты Ceph & OpenNebula, участие в разработке Modeus (SaaS для ВУЗов). В основном React и node.js. Участие в деятельности дирекции архитектуры компании.

2015—2017: проектирование и разработка SaaS для управления финансами корпораций/холдингов. Технологии: ExtJS, PHP, Java EE, MySQL, PostgreSQL.

2012—2014: участие в разработке оболочки для интерактивных терминалов в розничных магазинах клиента. Технологии: PHP, PostgreSQL, Memcached, Redis, ExtJS, взаимодействие с Oracle БД. В настоящее время проект внедрён, используется, находится в стадии сопровождения и редких доработок/оптимизаций.

2012: построение эффективного процесса доработки достаточно нагруженного (6 серверов по 24 ядра) сайта клиента, написанного с использованием одной небезызвестной CMS, в составе большой смешанной команды. Технологии: PHP, MySQL, в дальнейшем — memcache, MongoDB.

2008—2012: руководство разработкой и администрированием веб-систем для внутреннего использования на языках PHP, Perl, Python и СУБД MySQL и PostgreSQL (например, доработанных MediaWiki, Bugzilla, ViewVC, GitBlit, FeedOnFeeds). Результатом работы являются открытые проекты MediaWiki4Intranet и Bugzilla4Intranet.

2006/10 2008/10 АГАВА Perl-разработчик Участие в разработке (ныне почившего) сайта объявлений vsem.ru (Perl, TT, POE, SPOPS, FreeBSD, «сверхнадёжный кластер» на основе MySQL 3 и прочий олдскул… Ваня Серёжкин… :))).
2006/05 2006/10 ИнтерМедиа Ведущий Web-разработчик Разработка портала commercialrealty.ru (предыдущей версии), корпоративных сайтов по заказу, администрирование Linux серверов.
2007/09 2007/11 Алор+ Разработчик (по договору) Разработка системы прогнозирования биржевых рисков (Windows, C++, COM, PL/SQL). Занесло в студенчестве :)

Образование

Год поступ. Год оконч. Название учебного заведения Факультет, специальность, форма обучения
2003 2008 Московский Государственный Университет им. М. В. Ломоносова Вычислительной Математики и Кибернетики, студент, специальность «математик, системный программист», кафедра Математических Методов Прогнозирования (очная дневная форма обучения)
2008 2011 Московский Государственный Университет им. М. В. Ломоносова ВМиК, аспирант, специальность «Дискретная математика, математическая кибернетика», кафедра ММП

Заметки

  • Full-stack разработчик широкого профиля, начиная от веб-сайтов и корпоративных систем с веб-интерфейсами и заканчивая системным ПО и развёртыванием кластеров. Основные языки в сфере веб-разработки — ES6, PHP.
  • Большой опыт работы с программной СХД Ceph, экспертные знания о его внутреннем устройстве и производительности.
  • Собственный проект в области СХД: Vitastor. Самая быстрая блочная СХД без единой точки отказа.
  • Есть опыт работы как с фреймворками, так и с различными PHP CMS, включая Bitrix, WordPress, Magento и т. п., но предпочитаемый способ реализации проектов — с нуля, так как CMS и даже фреймворки годятся лишь для шаблонных проектов, в которых цель — максимальное удешевление.
  • Считаю, что конечная цель разработки — максимальная простота системы при заданном наборе фич и требований. Иными словами, «идеал достигается не тогда, когда больше нечего добавить, а тогда, когда уже нечего отнять», и отсюда следуют все остальные предпочтения — от легковесных библиотек и минимума фреймворков до DRY.
  • Линуксоид. Не боюсь читать и править код практически любых видов программ, вплоть до ядра :-) были бы открыты исходники. Хорошо отношусь к свободному ПО, не очень хорошо к закрытому и платному.
  • Взаимодействую с сообществом — отправляю багрепорты и исправления в открытые проекты (User:VitaliyFilippov/Bugs), принимаю участие в обсуждениях в списках рассылок, сам также принимаю багрепорты.
  • Вместо IDE использую Midnight Commander :-). Автодополнение? Не слышали, и так всё помним. Vim? Не надо, ибо юзабилити его просто «на высоте».
  • Негативно отношусь к «тяжёлым» фреймворкам по типу Spring в Java, Zend в PHP и подобных. Сама необходимость использования фреймворков обычно в принципе под большим вопросом. Также негативно отношусь к предрассудкам вида «PHP, JS — не языки, Perl — writeonly, динамически типизированные языки не годятся для серьёзной разработки» и подобным.
  • Поддерживаю некоторые собственные проекты, например MediaWiki4Intranet — сборка MediaWiki для использования в качестве корпоративной базы знаний, уже несколько устаревший «форк» баг-трекера Bugzilla — Bugzilla4Intranet, Linux-клиент для Google Drive Grive2 и другие.
  • Понимаю нюансы различных свободных лицензий.
  • Выступал на различных конференциях (Highload, SECR, РИТ, ADD, DevConf, WhaleRider, SQADays и т. п.) и статьи для печатных изданий, проводил в компании внутренние семинары.
  • Чувство юмора на месте :) отменил второй тур олимпиады ЯндексRoot 2013, найдя у них дыру в безопасности :D
  • Вейкборд, сноуборд, моделизм, (давно) параплан, ралли-спринты. По режиму СОВА.