CI/CD 1
▼
Понимает CI/CD pipeline: build, test, deploy. Настраивает базовый workflow: запуск тестов и линтера при push/PR. Работает с артефактами. Читает логи failed builds.
Проектирует pipeline: параллельные jobs, matrix builds для разных версий, кэширование зависимостей. Настраивает deployment stages: staging → production. Интегрирует security scanning.
Проектирует CI/CD-архитектуру: reusable workflows, self-hosted runners для специфических задач, blue-green/canary deployments. Оптимизирует время сборки. Автоматизирует rollback.
Определяет CI/CD-стандарты для команды: обязательные checks, deployment policy, environment management. Внедряет GitOps-практики. Мониторит deployment frequency и lead time.
Code Review 1
▼
Участвует в code review PHP-кода: проверяет читаемость, именование, следование PSR-12. Оставляет конструктивные комментарии с предложениями. Учится на замечаниях к своим PR. Описывает PR с контекстом: что, зачем, как тестировать.
Проводит качественный review PHP-кода: проверяет архитектуру (слои, зависимости), SQL-запросы (N+1, индексы), безопасность (SQL injection, XSS). Даёт feedback по SOLID-нарушениям. Предлагает альтернативные решения с обоснованием.
Проводит архитектурный review: оценивает влияние изменений на систему, backward compatibility, performance implications. Ревьюит миграции, API-контракты, конфигурации инфраструктуры. Менторит через review — объясняет почему, а не только что исправить.
Формирует культуру code review в команде: определяет что проверять на каждом уровне, устанавливает SLA на review, внедряет automated checks. Проводит review архитектурных решений и ADR. Разрешает disagreements в review-процессе.
Git и workflow 1
▼
Уверенно работает с Git в PHP-проектах: commit, push, pull, branch, merge. Следует git-flow или trunk-based модели команды. Пишет осмысленные commit-сообщения. Разрешает простые merge-конфликты в PHP-файлах и composer.lock.
Использует Git продвинуто: interactive rebase для чистой истории, cherry-pick для hotfixes, bisect для поиска регрессий. Настраивает .gitattributes для PHP-проекта. Управляет composer.lock конфликтами. Ревьюит чужие PR с фокусом на архитектуру.
Определяет branching-стратегию для PHP-проекта: release branches, feature flags vs long-lived branches. Настраивает git hooks для quality gates (PHPStan, tests). Автоматизирует changelog и semantic versioning. Разрешает сложные конфликты при больших рефакторингах.
Формирует Git-workflow команды: branching model, PR-процесс, review requirements, merge policies. Определяет правила для монорепо или multi-repo. Внедряет автоматизацию: auto-merge, required checks, CODEOWNERS.
GraphQL 1
▼
Создаёт простые GraphQL-схемы: типы, queries, mutations. Понимает разницу с REST. Реализует resolvers для основных операций. Использует GraphQL playground для тестирования.
Проектирует эффективные схемы: relay-style pagination, input types, unions/interfaces для полиморфизма. Решает N+1 через DataLoader. Реализует subscriptions для real-time. Настраивает query complexity limits.
Проектирует GraphQL-архитектуру: schema stitching/federation для микросервисов, persisted queries для production, custom directives. Оптимизирует производительность: caching, batching, query depth limiting.
Определяет стандарты GraphQL для команды: schema conventions, review process, мониторинг. Принимает решения о применимости GraphQL vs REST vs gRPC для разных сценариев.
REST API 1
▼
Создаёт CRUD-эндпоинты с правильными HTTP-методами и статус-кодами. Следует RESTful-конвенциям: именование ресурсов, вложенность. Возвращает JSON с консистентной структурой. Обрабатывает ошибки с понятными сообщениями.
Проектирует API с пагинацией, фильтрацией, сортировкой и partial responses. Реализует HATEOAS-ссылки. Версионирует API. Применяет rate limiting и throttling. Документирует через OpenAPI/Swagger.
Проектирует API для сложных доменов: batch operations, long-running tasks с polling, webhook-и. Реализует content negotiation, conditional requests (ETag/If-Modified-Since). Оптимизирует API для мобильных клиентов.
Определяет API design guidelines для команды: naming conventions, error format, pagination strategy. Проводит API design review. Внедряет contract-first подход к разработке.
Алгоритмы и структуры данных 2
▼
Знает базовые алгоритмы сортировки и поиска. Оценивает O(n) для простых циклов. Выбирает между array_search, in_array и isset по ситуации. Понимает, почему вложенные циклы — проблема на больших данных.
Анализирует алгоритмическую сложность PHP-кода и SQL-запросов. Оптимизирует обработку коллекций — заменяет вложенные циклы на хеш-таблицы. Применяет бинарный поиск, жадные алгоритмы в бизнес-логике. Профилирует через Xdebug.
Проектирует алгоритмы обработки больших объёмов данных: chunk-processing, курсорная пагинация, стриминг. Оптимизирует memory-bound операции через generators. Находит и устраняет bottleneck-и с помощью Blackfire/Xhprof.
Устанавливает performance-бюджеты для API-endpoints. Проводит review кода с фокусом на сложность. Внедряет автоматический мониторинг деградации производительности. Принимает решения об архитектурных trade-offs.
Работает с массивами, ассоциативными массивами и объектами PHP. Понимает разницу между индексированным и ассоциативным массивом. Использует array_map, array_filter, usort для обработки данных.
Выбирает структуры под задачу: SplPriorityQueue для очередей, SplFixedArray для числовых данных, generators для стриминга. Понимает внутреннее устройство PHP array как hash table. Работает с деревьями категорий и графами зависимостей.
Проектирует эффективные структуры для production: bloom-фильтры, LRU-кэши, trie для автокомплита. Оптимизирует потребление памяти через генераторы, weak references и typed arrays. Выбирает между in-memory структурами и Redis.
Определяет стандарты работы с данными в команде. Ревьюит выбор структур в контексте масштабируемости и поддерживаемости. Внедряет DTOs и Value Objects как основу доменного слоя.
Аутентификация и авторизация 1
▼
Понимает JWT-структуру: header, payload, signature. Реализует login/logout с JWT-токенами. Настраивает middleware для проверки токенов. Знает разницу между authentication и authorization.
Реализует OAuth 2.0 flows: authorization code, client credentials, refresh tokens. Настраивает scopes и permissions. Обрабатывает token expiration и renewal. Интегрируется с OAuth-провайдерами.
Проектирует auth-архитектуру: centralized identity service, token introspection, RBAC/ABAC. Реализует SSO между сервисами. Настраивает MFA. Обеспечивает secure token storage и rotation.
Определяет стратегию аутентификации/авторизации для продукта: identity provider, token format, session management policy. Стандартизирует auth-подход между сервисами.
Безопасность приложений 1
▼
Не доверяет пользовательскому вводу: валидирует, санитизирует, типизирует. Использует ORM вместо raw SQL. Хранит секреты в environment variables, не в коде. Не логирует чувствительные данные.
Применяет defence in depth: валидация на каждом слое, principle of least privilege, secure session management. Реализует audit logging для критичных операций. Обрабатывает ошибки без утечки internal details.
Проектирует secure-by-default архитектуру: encrypted at rest/in transit, secrets management, automated credential rotation. Реализует zero-trust подход между сервисами. Проводит threat modeling.
Внедряет secure development lifecycle: threat modeling на этапе дизайна, automated security testing, post-deployment scanning. Формирует security champions в команде.
Веб-фреймворки 1
▼
Использует PHP Frameworks на базовом уровне. Выполняет простые задачи по готовым шаблонам. Понимает базовые концепции и следует принятым в команде практикам.
Самостоятельно реализует задачи с PHP Frameworks. Понимает внутреннее устройство и оптимизирует производительность. Пишет тесты.
Проектирует решения на основе PHP Frameworks для production-систем. Оптимизирует производительность и масштабируемость. Выбирает между альтернативными подходами. Менторит команду.
Определяет архитектурные решения по PHP Frameworks на уровне продукта. Формирует стандарты. Проводит design review и определяет технический roadmap.
Контейнеризация 1
▼
Пишет Dockerfile для PHP-приложения: базовый образ, установка зависимостей, копирование кода. Использует docker-compose для локальной разработки (app + DB + Redis). Понимает volumes и networks.
Оптимизирует Docker-образы: multi-stage builds, минимальный размер, кэширование слоёв. Настраивает health checks. Управляет secrets через environment variables. Дебажит проблемы в контейнерах.
Проектирует контейнерную архитектуру: базовые образы для команды, security hardening (non-root, read-only fs), resource limits. Оптимизирует время сборки. Настраивает container orchestration.
Определяет стандарты контейнеризации: базовые образы, security policies, CI/CD pipeline для docker builds. Внедряет container scanning и vulnerability management.
Кэширование 2
▼
Использует Redis для кэширования результатов запросов и сессий. Устанавливает TTL для ключей. Работает с командами GET/SET/DEL. Понимает, когда кэширование ускоряет, а когда создаёт проблемы.
Применяет разные стратегии: cache-aside, write-through, write-behind. Использует Redis для очередей (lists), rate limiting (sorted sets), pub/sub. Проектирует ключи с namespace-ами. Обрабатывает cache stampede.
Проектирует распределённое кэширование: Redis Cluster, sentinel для HA. Реализует distributed locks, sliding window counters, leaderboards. Оптимизирует memory footprint через сжатие и правильный выбор типов данных.
Определяет стратегию кэширования для продукта: уровни кэша (app, HTTP, CDN), политики инвалидации, мониторинг hit rate. Стандартизирует подходы к кэшированию в команде.
Понимает зачем нужно кэширование и основные стратегии. Кэширует результаты тяжёлых запросов в приложении. Использует HTTP-кэширование (Cache-Control, ETag). Знает проблему устаревания кэша.
Реализует многоуровневое кэширование: OPcache для bytecode, APCu для локальных данных, Redis для shared cache. Проектирует стратегии инвалидации: TTL, event-based, tag-based. Измеряет hit/miss ratio.
Проектирует кэширование для high-load: cache warming, стратегии stampede protection (lock, early expiration), stale-while-revalidate. Оптимизирует полный стек: opcache tuning, query cache, CDN purge.
Формирует стандарт кэширования для всех сервисов: naming conventions, TTL-политики, алертинг при деградации. Принимает решения о выборе технологий кэширования для разных слоёв.
Логирование 1
▼
Использует Monolog для логирования в PHP-приложениях. Логирует ошибки, предупреждения и информационные сообщения с контекстом. Понимает уровни логирования (debug, info, warning, error, critical). Добавляет request_id для трассировки.
Настраивает структурированное логирование в PHP: JSON-формат через Monolog formatters, контекстные процессоры (user_id, request_id, session). Организует каналы логирования: app, security, performance. Интегрирует с ELK/Loki для централизованного сбора.
Проектирует стратегию логирования для PHP-платформы: correlation ID между сервисами, distributed tracing через OpenTelemetry. Настраивает алерты по паттернам в логах. Оптимизирует объём логов без потери диагностической ценности.
Определяет стандарты логирования для команды: обязательные поля, уровни, retention-политики. Внедряет log-based мониторинг и алертинг. Проводит review логирования при инцидентах. Обеспечивает compliance-требования к хранению логов.
Метрики и мониторинг 1
▼
Понимает зачем нужен мониторинг PHP-приложений. Читает дашборды Grafana: CPU, memory, request rate, error rate. Знает базовые метрики: response time, throughput, error percentage. Реагирует на алерты по инструкции.
Добавляет custom-метрики в PHP-приложения: бизнес-метрики (заказы/мин, регистрации), технические (queue size, cache hit ratio). Настраивает PHP-FPM и OPcache метрики. Создаёт дашборды в Grafana для своего сервиса. Настраивает базовые алерты.
Проектирует мониторинг PHP-платформы: RED-метрики для API, USE-метрики для инфраструктуры. Настраивает distributed tracing. Создаёт SLI/SLO дашборды. Оптимизирует cardinality метрик. Внедряет alerting runbooks для on-call.
Определяет стратегию мониторинга для продукта: обязательные метрики, SLO, error budget policy. Внедряет культуру observability в команде. Проводит post-mortem анализ инцидентов с использованием метрик и трейсов.
Многопоточность и конкурентность 1
▼
Понимает концепцию асинхронности. Работает с очередями задач для фоновой обработки. Выносит тяжёлые операции (email, генерация отчётов) в background jobs. Знает разницу между sync и async обработкой.
Проектирует асинхронные потоки: очереди с приоритетами, отложенные задачи, retry-логика. Работает с message broker-ами для межсервисного общения. Обрабатывает ошибки и dead letter queues. Использует Fibers для concurrent I/O.
Проектирует event-driven архитектуру: pub/sub, saga-паттерн для распределённых транзакций, eventual consistency. Оптимизирует throughput очередей. Обеспечивает exactly-once и at-least-once семантику обработки.
Определяет стратегию асинхронной обработки для продукта: выбор между sync API, async jobs, event streaming. Внедряет стандарты обработки ошибок и мониторинга очередей.
Моделирование данных 2
▼
Создаёт миграции для изменения схемы БД: добавление таблиц, колонок, индексов. Понимает forward и rollback. Тестирует миграции локально перед применением. Следует naming conventions.
Пишет safe-миграции для PHP-проектов: добавление колонок с default, индексов без блокировки, разделение destructive изменений на этапы. Управляет seed-данными. Обеспечивает rollback-возможность для каждой миграции. Тестирует миграции на копии production-данных.
Проектирует zero-downtime миграции: expand-contract pattern, online schema changes для больших таблиц. Мигрирует данные без блокировки production. Автоматизирует проверку совместимости миграций с текущим кодом.
Определяет миграционный процесс для команды: review миграций, автоматическое тестирование rollback, staged deployment. Планирует сложные миграции с разбиением на этапы.
Проектирует простые схемы: таблицы, связи один-к-одному, один-ко-многим, многие-ко-многим. Нормализует до 3NF. Выбирает правильные типы данных. Понимает, когда нужен soft delete.
Проектирует схемы данных для бизнес-доменов: нормализация до 3NF, денормализация для производительности, полиморфные связи. Моделирует soft deletes, версионирование записей, аудит-логи. Выбирает между EAV и JSON-колонками для гибких атрибутов.
Проектирует схемы для сложных доменов: полиморфные связи, EAV для гибких атрибутов, temporal data, audit trails. Применяет денормализацию для production. Моделирует bounded contexts.
Определяет стандарты моделирования данных: naming conventions, обязательные поля (timestamps, soft deletes), подход к версионированию схем. Ревьюит модели новых модулей.
ООП и паттерны проектирования 2
▼
Знает и применяет базовые паттерны: Singleton, Factory, Strategy. Понимает зачем нужна инъекция зависимостей. Использует Repository для работы с БД. Следует паттернам, принятым в проекте.
Применяет паттерны осознанно: Observer для событий, Decorator для расширения функциональности, Chain of Responsibility для middleware. Рефакторит код с использованием подходящих паттернов. Понимает anti-patterns.
Комбинирует паттерны для решения сложных задач: CQRS для разделения чтения/записи, Event Sourcing для аудита, Specification для сложных фильтров. Адаптирует паттерны под контекст проекта, а не применяет догматично.
Формирует архитектурные стандарты команды на основе паттернов. Решает, какие паттерны применять на уровне проекта. Проводит архитектурные review с фокусом на правильность применения паттернов.
Создаёт классы с инкапсуляцией, наследованием и полиморфизмом. Понимает интерфейсы и абстрактные классы. Следует принципу единой ответственности в своём коде. Использует type hints и return types.
Применяет SOLID на практике: выделяет интерфейсы, использует композицию вместо наследования, соблюдает LSP. Проектирует иерархии классов для бизнес-домена. Пишет код с low coupling и high cohesion.
Проектирует доменные модели по DDD: Entities, Value Objects, Aggregates. Применяет принципы GRASP для распределения ответственности. Рефакторит legacy-код к чистой объектной модели без потери функциональности.
Определяет стандарты ООП для команды: coding guidelines, architectural decision records. Обучает разработчиков правильному применению принципов. Проводит design review новых модулей.
Оптимизация БД 4
▼
Понимает проблему connection management в PHP: знает что каждый FPM-процесс создаёт отдельное соединение к БД, понимает зачем нужны persistent connections (PDO::ATTR_PERSISTENT). Знает что PHP не имеет встроенного connection pooling.
Решает connection management в PHP: настраивает PgBouncer/ProxySQL как внешний connection pooler для PHP-FPM, оптимизирует persistent connections с учётом FPM lifecycle. Мониторит количество connections через database status commands и настраивает wait_timeout.
Проектирует connection architecture для PHP-систем: настраивает Swoole/RoadRunner для real connection pooling в long-running PHP, реализует read/write splitting через ProxySQL, оптимизирует PgBouncer pool mode (session/transaction/statement) для разных workloads. Решает проблемы с prepared statements в transaction mode.
Стандартизирует connection management для PHP-платформы: определяет архитектуру подключений (FPM + PgBouncer vs Swoole native pool), создает monitoring и alerting для connection utilization. Проектирует capacity planning для database connections с учётом PHP scaling patterns.
Создаёт простые индексы для ускорения WHERE и JOIN. Понимает разницу между PRIMARY, UNIQUE и обычным индексом. Знает, что индексы замедляют INSERT/UPDATE. Использует EXPLAIN для проверки.
Анализирует планы выполнения через EXPLAIN ANALYZE. Создаёт составные индексы с учётом selectivity и порядка колонок. Использует covering indexes для оптимизации частых запросов. Мониторит неиспользуемые индексы и их влияние на скорость записи.
Проектирует индексную стратегию: composite indexes с учётом selectivity, covering indexes для избежания table lookups, partial indexes для горячих данных. Мониторит index usage и bloat.
Определяет стандарты индексирования для команды: обязательный EXPLAIN в code review, автоматический мониторинг unused indexes, политика periodic reindex. Обучает команду оптимизации запросов.
Использует EXPLAIN для анализа планов выполнения. Добавляет индексы для медленных запросов. Избегает SELECT * и N+1 проблемы. Понимает разницу между lazy и eager loading в ORM.
Оптимизирует SQL-запросы в PHP-приложениях: устраняет N+1 через eager loading, переписывает subqueries в JOIN-ы, использует batch operations. Анализирует slow query log. Применяет query builder и raw SQL когда ORM генерирует неоптимальные запросы.
Оптимизирует сложные запросы: подзапросы vs JOIN, materialized views для агрегаций, денормализация для hot paths. Профилирует ORM-запросы. Устраняет lock contention и deadlocks в high-load сценариях.
Внедряет культуру performance-осознанной разработки: обязательный query review, automated slow query alerts, performance budgets для endpoints. Обучает команду чтению планов выполнения.
Использует транзакции для атомарных операций: BEGIN/COMMIT/ROLLBACK. Понимает ACID-свойства. Оборачивает в транзакцию связанные изменения. Знает про уровни изоляции на базовом уровне.
Самостоятельно проектирует стратегии управления транзакциями в PHP-приложениях с использованием PDO, Doctrine или Eloquent ORM. Реализует корректные границы транзакций для сложных бизнес-операций. Обрабатывает deadlock detection и retry-логику, управляет savepoints и оптимизирует длительность транзакций.
Проектирует транзакционную стратегию: optimistic vs pessimistic locking, advisory locks, serializable isolation для критичных операций. Обрабатывает deadlocks. Реализует saga pattern для распределённых транзакций.
Определяет стандарты транзакционности: политики retry, timeout-ы, мониторинг long-running транзакций. Обучает команду правильной работе с isolation levels и конкурентным доступом.
Очереди сообщений 2
▼
Отправляет и получает сообщения через очереди. Понимает концепции exchange, queue, routing key. Настраивает простые direct-exchange маршруты. Обрабатывает сообщения с ack/nack.
Проектирует топологию обменников: fanout для broadcast, topic для маршрутизации, headers для сложных правил. Настраивает dead letter queues и retry-механизмы. Обеспечивает idempotent обработку сообщений.
Проектирует отказоустойчивую messaging-архитектуру: кластеризация, quorum queues, federation. Реализует saga-паттерн через очереди. Оптимизирует throughput и latency. Мониторит lag и backpressure.
Определяет стратегию межсервисного общения: sync vs async, RPC vs events. Стандартизирует формат сообщений и контрактов. Внедряет мониторинг и алертинг для очередей.
Понимает паттерны брокеров сообщений в PHP: pub-sub через Symfony Messenger, queue workers через Laravel Queues. Следует командным конвенциям для диспатчинга и потребления сообщений через драйверы Redis, RabbitMQ или SQS.
Работает с messaging в PHP: использует Symfony Messenger с RabbitMQ/Redis транспортом, настраивает Laravel Horizon для мониторинга очередей, применяет routing по message type. Обрабатывает failed jobs через retry и dead letter queues, настраивает приоритетные очереди.
Проектирует messaging-архитектуру для PHP-систем: реализует event-driven коммуникацию между PHP-сервисами через RabbitMQ с exchange routing, интегрирует PHP с Kafka через php-rdkafka для event streaming. Проектирует idempotent consumers и transactional outbox для consistency.
Стандартизирует messaging в PHP-экосистеме: определяет паттерны для async коммуникации с учётом PHP process model ограничений, внедряет Ecotone Framework для CQRS/event sourcing, проектирует интеграцию PHP-монолита с event-driven микросервисами. Обучает команды messaging best practices.
Поисковые движки 1
▼
Использует Elasticsearch / OpenSearch на базовом уровне. Выполняет простые задачи по готовым шаблонам. Понимает базовые концепции и следует принятым в команде практикам.
Самостоятельно реализует задачи с Elasticsearch / OpenSearch. Понимает внутреннее устройство и оптимизирует производительность. Пишет тесты.
Проектирует поисковую архитектуру: custom analyzers для русского/английского, synonym-фильтры, fuzzy matching. Оптимизирует индексы: sharding strategy, reindex без downtime. Реализует aggregations для аналитики.
Определяет стратегию полнотекстового поиска для продукта: выбор движка, схема индексации, pipeline синхронизации с основной БД. Стандартизирует подход к search-as-a-service.
Протоколы API 1
▼
Понимает концепцию gRPC и её применимость в PHP: знает ограничения PHP для streaming-сценариев, умеет установить grpc-расширение и вызвать unary RPC. Понимает зачем PHP-проекты используют gRPC для связи с микросервисами на других языках.
Интегрирует PHP-приложения с gRPC-сервисами: генерирует PHP-клиенты из .proto через protoc, настраивает channel credentials для TLS, обрабатывает ошибки через Status codes. Использует Spiral/RoadRunner для реализации gRPC-серверов на PHP без ограничений FPM.
Проектирует gRPC-интеграцию для PHP-систем: определяет какие сервисы реализовывать как gRPC-серверы (Spiral/RoadRunner) vs gRPC-клиенты, настраивает retry-логику и deadline propagation, интегрирует с OpenTelemetry для сквозного трейсинга. Оптимизирует производительность через persistent connections.
Руководит внедрением gRPC в PHP-экосистему компании: определяет стратегию постепенной миграции с REST на gRPC для внутренних коммуникаций, стандартизирует генерацию PHP-клиентов в CI/CD, проектирует совместимость с существующим API Gateway. Обучает PHP-разработчиков работе с protobuf и gRPC.
Реляционные БД 2
▼
Пишет SQL-запросы: SELECT с JOIN, WHERE, GROUP BY, ORDER BY. Создаёт таблицы с правильными типами данных и constraints. Понимает foreign keys и индексы. Работает с MySQL Workbench или аналогом.
Проектирует нормализованные схемы для бизнес-доменов. Оптимизирует запросы через EXPLAIN и профайлинг slow query log. Использует специфику MySQL: партиционирование, full-text search, JSON-колонки. Настраивает репликацию master-slave для read scaling.
Оптимизирует производительность: partitioning, query optimizer hints, covering indexes. Настраивает репликацию master-slave. Анализирует slow query log. Проектирует схему под high-write или high-read нагрузку.
Определяет стандарты работы с MySQL в команде: naming conventions, migration workflow, review схемы. Принимает решения о шардировании, реплике для read-heavy нагрузки. Планирует capacity.
Работает с PostgreSQL: пишет SQL-запросы, создаёт таблицы, понимает типы данных (jsonb, arrays, uuid). Использует pgAdmin или CLI. Понимает отличия от MySQL в синтаксисе и типах.
Использует возможности PostgreSQL: JSONB для semi-structured данных, CTE для сложных запросов, window functions для аналитики. Работает с GIN/GiST индексами. Настраивает pg_stat_statements для мониторинга. Применяет LISTEN/NOTIFY для real-time событий.
Использует продвинутые возможности: CTE, window functions, partial indexes, JSONB-операторы. Настраивает pg_stat_statements для мониторинга. Оптимизирует через EXPLAIN ANALYZE. Настраивает logical replication.
Определяет стандарты PostgreSQL для команды: schema design guidelines, миграционный процесс, мониторинг. Принимает решения о расширениях (PostGIS, pg_trgm, TimescaleDB).
Сети 1
▼
Понимает TCP/IP, DNS, HTTP/HTTPS на практическом уровне. Отлаживает сетевые проблемы через curl, ping, traceroute. Знает разницу между HTTP 1.1 и 2.0. Понимает SSL/TLS-сертификаты.
Настраивает load balancing (L4 vs L7), reverse proxy, SSL termination. Понимает CDN-архитектуру. Диагностирует latency issues. Работает с WebSockets и SSE для real-time.
Проектирует сетевую архитектуру: VPC layout, subnet strategy, security groups, WAF. Оптимизирует сетевые задержки. Настраивает DNS failover и geo-routing. Обеспечивает DDoS-защиту.
Системы типов 1
▼
Понимает основы системы типов PHP — объявление strict_types, type hints для параметров функций и типов возврата, и union types. Следует принятым в команде соглашениям по уровням статического анализа PHPStan/Psalm и типизированным объявлениям свойств.
Самостоятельно применяет возможности системы типов PHP — intersection types, enum с backed values и readonly properties для иммутабельных DTO. Понимает компромиссы между строгостью уровней phpstan и скоростью разработки. Применяет типобезопасные паттерны с дженериками в doc-blocks, типизированными коллекциями и строгими объявлениями типов возврата при ревью кода.
Обладает глубокой экспертизой в системе типов PHP — проектирует доменные модели с максимальным покрытием статическим анализом PHPStan/Psalm на максимальных уровнях строгости. Архитектурирует типобезопасные фреймворки с дженериками в шаблонах, иммутабельными value objects и типизированными системами событий. Менторит команду по переводу кодовых баз на строгую типизацию, управлению baseline phpstan и типобезопасным паттернам ORM.
Определяет стратегию типизации для кодовой базы: strict_types, уровень PHPStan, generics через аннотации. Внедряет Value Objects и enum-ы для бизнес-логики. Контролирует type coverage через CI.
Управление API 4
▼
Понимает rate limiting в PHP: знает Laravel RateLimiter middleware, умеет применить throttle middleware к route groups. Понимает зачем ограничивать запросы для защиты от brute force и API abuse.
Реализует rate limiting в PHP-проектах: настраивает custom RateLimiter в Laravel с per-user и per-IP стратегиями, использует Symfony RateLimiter component с token bucket и sliding window. Применяет Redis для distributed rate limiting между FPM-процессами.
Проектирует rate limiting для PHP-систем: реализует multi-tier limiting (nginx → PHP middleware → per-endpoint), настраивает rate limiting на reverse proxy уровне для снижения нагрузки на PHP. Проектирует adaptive limiting с dynamic thresholds на основе server load и response times.
Стандартизирует rate limiting в PHP-экосистеме: создает reusable Composer packages, проектирует centralized rate limit configuration через database/config service, внедряет monitoring для rate limit metrics. Определяет API usage policies для SaaS-продуктов.
Описывает эндпоинты: request/response примеры, обязательные параметры, коды ошибок. Использует OpenAPI-аннотации в коде. Поддерживает Swagger UI актуальным. Документирует edge cases.
Генерирует OpenAPI-спецификацию из кода автоматически. Создаёт примеры для каждого сценария: успех, ошибки валидации, 404, 500. Версионирует документацию. Добавляет authentication-секцию с примерами.
Проектирует документацию как продукт: developer portal, getting started guides, SDKs. Автоматизирует генерацию клиентов из спецификации. Внедряет contract testing (спецификация = тесты).
Определяет стандарты API-документации: обязательные секции, review process, автоматическая проверка актуальности. Строит developer experience: onboarding, sandbox, changelog.
Понимает зачем нужно версионирование API. Знает подходы: URL-path, header, query parameter. Следует версионной политике проекта. Поддерживает обратную совместимость в своих изменениях.
Реализует версионирование: роутинг по версиям, трансформеры для разных форматов ответов, deprecation headers. Определяет breaking vs non-breaking changes. Мигрирует клиентов между версиями.
Проектирует стратегию версионирования: sunset policy, changelog automation, consumer-driven contract testing. Обеспечивает плавную миграцию между версиями без downtime для клиентов.
Определяет версионную политику для продукта: сколько версий поддерживается, timeline deprecation, коммуникация изменений. Стандартизирует процесс выпуска новых версий API.
Тестирует API вручную через Postman/Insomnia. Создаёт коллекции запросов. Проверяет статус-коды, тело ответа, headers. Пишет простые автоматические тесты для основных эндпоинтов.
Автоматизирует API-тесты: integration tests для всех эндпоинтов, assertion на структуру ответа, тестирование auth flow. Создаёт fixtures и factories для тестовых данных. Запускает в CI.
Проектирует стратегию API-тестирования: contract tests, load tests, chaos testing. Создаёт mock-серверы для зависимостей. Тестирует race conditions и concurrent access. Автоматизирует smoke tests для production.
Определяет стандарты API-тестирования: coverage requirements, обязательные тест-кейсы, performance budgets для endpoints. Внедряет автоматический regression testing.
Фоновые задачи 1
▼
Использует Task Queues на базовом уровне. Выполняет простые задачи по готовым шаблонам. Понимает базовые концепции и следует принятым в команде практикам.
Самостоятельно реализует задачи с Task Queues. Понимает внутреннее устройство и оптимизирует производительность. Пишет тесты.
Проектирует архитектуру очередей: приоритизация, rate limiting, circuit breaker для внешних сервисов. Обеспечивает exactly-once обработку через idempotency keys. Мониторит throughput, latency, failure rate.
Определяет стандарты фоновой обработки: структура job-классов, обработка ошибок, retry-политики, мониторинг. Выбирает между разными бэкендами очередей под нагрузку.
Чистый код и рефакторинг 1
▼
Следует coding standards (PSR-12). Пишет понятные имена переменных и функций. Убирает дублирование кода. Использует линтеры (PHP_CodeSniffer, PHPStan) и исправляет замечания.
Настраивает статический анализ на высоком уровне строгости. Рефакторит legacy-код: выделяет методы, упрощает условия, убирает god-classes. Пишет self-documenting code. Проводит code review коллег.
Внедряет метрики качества: cyclomatic complexity, coupling, code coverage. Проектирует архитектурные правила через PHPStan/Psalm custom rules. Автоматизирует контроль качества в CI. Менторит по чистому коду.
Формирует стандарты качества кода для команды. Настраивает quality gates в pipeline. Балансирует скорость разработки и качество. Внедряет практики continuous refactoring.