About

Home / About

Senior Backend Developer

Я разработчик программного обеспечения, ориентированного на веб-разработку сервисов со сложной архитектурой.

Experience: server-side development;

Architecture styles;

Проектировал и разрабатывал решения с различными архитектурными стилями:

В процессе изучения и прохождения сертификации:

Активно использую сервисы Google Cloud platform для решения потребностей компании и выполнения бизнес задач.

Container orchestration;

Technology choices;

Programming languages;

  • PHP (primary language)
  • Node.js
  • Go Lang
  • Python

PHP-frameworks;

  • Symfony (primary framework)
  • Laravel
  • ReactPHP
  • Swoole
  • Etc…

Choose a data store;

Relational database;

  • MySQL
  • PostgreSQL
  • Percona
  • MariaDB

Key/value stores;

Data analytics;

Choose a load balancing service;

Choose a messaging service;

Application Architecture;

Design Patterns;

Пропагандирую и внедряю подходы использования Domain-driven design (Предметно-ориентированное проектирование).
Эрик Дж. Эванс. Написал замечательную книгу, где грамотно изложенные подходы организации коммуникации, разработки и способы решения различных ситуаций.

DDD — это не только «папочки» где существует код, это мышление, подходы к организации программного продукта с такими бизнес правилами, как они есть в реальном мире.

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

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

Вопросы о том, нужен ли дизайн или доступность по цене, совершенно не имеют значения: дизайн неизбежен!
Альтернативой хорошему дизайну является плохой дизайн, а не вообще никакой дизайн.

API’s design;

  •  RESTful APIs with JSON-LD (hypermedia)
  • GraphQL

Develop workflow, CI/CD and quality control;

У меня критическая не переваривание Code review, где не соблюдены рекомендации по оформлению кода (PSR — PHP Standards Recommendations).

Пропагандирую и внедряю DevOp и это не дядя инженер отслуживающий сервера, а техническая методология.
Описание Dockerfile и «настройка» PHP, Nginx лишь малая часть архитектуры ПО.

  • Jira
  • Gitflow
  • GitLab CI
  • Code review
  • Code Sniffer
  • PHPStan
  • Sentry
  • Etc…

Automation QA;

PHPUnit.
Придерживаюсь TDD, всегда имею несколько слоев (clean architecture) тестов.
Domain (предметная область) и Application (операционный) — полностью покрыты Unit, интеграционные и системные в зависимости от потребностей.

Infection.
Наверное самые интересное это мутационное тестирование просто One love!.

Security;

Мне нравиться наука криптография и регулярно слежу за OWASP, Vault, 1Password, Okta, Auth0, etc…
Разрабатывал продукт сертифицированный по стандарту PCI DSS, прекрасно понимаю, как и где не надо использовать шифрование, зачем системы управления правами доступов и менеджеры секретов.

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

Experience: client-side development;

Абсолютно точно я не frontend разработчик, но испытываю воодушевляющие чувство к пользовательским интерфейсам, таким как Ant.Design.

Единственный мною приемлемый вариант разработки клиентского проложения это Progressive Web Apps на React.js с благородным TypeScript.

Организовывал рабочие процессы кросс-функциональной команды (Micro-frontends) курируя полный цикл frontend и backend разработки продукта силами самой команды.

JavaScript-frameworks;

  • React.js
  • Vue.js
  • Angular.js

What I’m not;


Resume ?

If you want my full resume including all (previous) jobs, experience and education, please email me to job@soprun.com.

GPG key ?

For confidential communication, be sure to use my GPG B7502F96C5DC44C2 public key.