Меня зовут Ладыгин Сергей, я профессионально занимаюсь разработкой более 15 лет. Муж и отец 3 детей. Увлекаюсь спортом - велосипед, плавание, баскетбол, волейбол, настольный тенис.

Компетенции

1. Программирование

Мои основные языки программирование - PHP и JavaScript. В них я лучше всего разбираюсь и дольше всего с ними работаю. В этом стэке много работал с фреймворками Symfony и Laravel.

Последнее время в основном программирую на TypeScript, Go и Node.

Знаю базы данных PostgreSQL, MySQL и MongoDB на хорошем уровне (оптимизация, хранимые процедуры, условные индексы и прочее).

Умею работать с очередями сообщения (RabbitMQ, Kafka) для интеграции между сервисами и для фоновых задач.

2. Проектирование систем

Большой опыт проектирования маленьких и больших веб приложений. Разбираюсь как и на какие сервисы лучше разбить приложение, как настроить между ними надежную интеграцию, как приложение эффективно разместить в одном или нескольких дата центрах.

Есть опыт проектирования: соц. сетей, интернет-магазинов, медиа-порталов, crm систем, образовательных порталов, конструкторов сайтов.

3. Управление командой разработки

Прошел путь от рядового разработчика до тимлида, знаю и применяю методики Scrum и Kanban.

Опыт построения процесса разработки в разных командах полностью с нуля по этапам:

Постановка задачи -> Оценка -> Планирование -> Разработка -> Проверка кода -> Тестирование -> Выкладка.

Могу не только выстроить организационно, но и реализовать все технические моменты от настройки Jira (или другой софт) до настройки CI/CD для сборки и выкладки.

Самая большая мой команда состояла из 13 человек (6 разработчиков, 2 тестировщика, 3 аналитика, 2 администратора).

4. DevOps

Могу не только спроектировать и разработать систему, но и наладить процесс выкладки и настроить сервера.

Знаю Linux (Ubuntu, Debian) на уровне администратора, большой опыт применения Ansible для настройки серверов. Умею упаковывать приложения в Docker и запускать контейнеры в кластере на Docker swarm.

Опыт настройки: Nginx, Apache, Traefik, PHP-FPM, ELK, MySQL.

Знание CI/CD: TeamCity, Bitbucket Pipelines, Github Actions.

Карьера

Finam.ru

Москва Финансовый сектор Май 2011 — по настоящее время

Должность: Ведущий программист позже тимлид

В компании я занимался разными проектами: социальная сеть для трейдеров, crm система, портал дистанционного обучения и конструктор сайтов. Ниже о каждом из них более подробно.

1) Социальная сеть для трейдеров

Май 2011 - Январь 2011.

Стэк: PHP 5, PostgreSQL, самописный движок, jQuery, PGQ (система очередей на PostgreSQL), SonicMQ (коммерческая система очередей).

Занимался разработкой нового функционала и доработкой существующего. Научился проектировать системы с расчетом на высокую нагрузку и на большие объемы данных. Познакомился с очередями для фоновых задач.

2) CRM система

Январь 2011 - Август 2021.

Стэк: PHP 5 - 8, Zend Framework, Symfony 3 - 5, PostgreSQL, MongoDB, Elasticsearch, jQuery, ReactJS, PGQ, SonicMQ, Kafka, WebRTC.

Занимался проектированием и разработкой crm системы с нуля под требования бизнеса. Прошел путь от разработчика до тимлида с командой в 13 человек. Система обслуживает несколько международных бизнесов, несколько call центров численностью более 400 операторов каждый. Функционал CRM покрывает полностью все процессы, от приема заявок, поддержка, открытия и ведение клиентов.

Функционал:

  • прием заявок и распределение на сотрудников
  • интеграция с телефонией
  • интеграция с электронной очередью
  • интеграция с почтовыми ящиками по imap для приема писем и ответа на них
  • агрегация полной информации о клиентах из разных внутренних сервисов
  • интеграция с торговыми системами
  • учет продаж продуктов компании
  • отчетность для руководителей всех уровней
  • возможность звонить из браузера (web phone по WebRTC)
  • и многое другое.

Первая версия системы была написана на Zend framework и MongoDB (выбор был неудачным для crm). Из-за проблем с целостностью данных и сложностями при построении отчетов было решено заменить MongoDB на PostgreSQL. Рефакторинг и переход на новую БД занял чуть больше 1 года (в итоге получилось более 100 таблиц), переход был осуществлен без простоя.

Позже было решено переходить с Zend framework 1 на Symfony в связи с остановкой поддержки первого. Определили целевой стек Symfony, API Platform, EasyAdmin, ReactJS, Ant Design. Цель достигнута.

3) Портал дистанционного обучения

Август 2021 - текущее время.

Стэк: PHP8, Laravel, PostgreSQL, Kafka, Docker, Minio.

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

Навел порядок в проете после подрядчика, настроил работу приложения в Docker, реализовал CI/CD, написал техническую документацию.

4) Конструктор сайтов

Сентябрь 2022 - текущее время.

Стэк: Node, Next.js, Strapi, GrapesJS, Go, PostgreSQL, Kafka, Docker.

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

Реализовал архитектуру в виде микро-сервисов, перешел на другой стэк TypeScript и Go.

Pichesky

Москва Рекламное агентство Декабрь 2009 — май 2011

Должность: PHP программист

В мои обязанности входило:

  • Проектирование веб-проектов
  • Проектирование баз данных
  • Программирование и запуск веб-проектов

Работа с высокими нагрузками и постоянно меняющимися требованиями к проекту. Глубокие знания Zend Framwork, PostgreSql, Memcached, MySQL, проектирование систем управления.

Cafemam.ru

Псков Интернет-портал Декабрь 2008 — декабрь 2009

Должность: PHP-программист

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

За время работы я приобрёл опыт работы в команде, навыки работы с SVN и багтрекером. А так же более глубокие знания PHP, MySQL, JavaScript, XML и основы оптимизации баз данных. Изучение объектно-ориентированного программирования и основ UML. Проектирование и разработка системы управления на базе фреймворка CodeIgniter. Изучение UNIX (Ubuntu).