Системы документооборота
Senior PHP Developer
1 мес. назад
RussiaSenior
phppostgreSQLsqlgitphpstanphp-cs-fixermemcachedgearman
«Практика» — масштабная система электронного документооборота с более 17 000 организаций по России. Ищем senior PHP-разработчика для развития и архитектуры продукта с реальной зоной ответственности.
О компании
- В компании около 200 человек, сильная backend-команда, выстроенные процессы code review и технического обсуждения решений.
О продукте
- «Практика» — масштабная система электронного документооборота, которой пользуются уже более 17 000 организаций по всей России.
- Продукт успешно развивается на протяжении многих лет, ежегодно подключаются новые инсталляции, количество установок стабильно растет.
- Продукт — гибридное приложение на PHP 8.3, используют новинки языка: Attributes, Enums, Match, Nullsafe, Arrow functions.
- Строят процесс вокруг strict types, typed property, return type для статического анализа.
- Регулярно проводят статический анализ кода Phpstan (level 5).
- Поддерживают стандарты кода PSR-12, PER 3.0 с помощью PHP-CS-Fixer.
Обязанности
- Разрабатывать и развивать продукт.
- Работать с собственным фреймворком, продуманной архитектурой, возможность развития фреймворка.
- Проектировать и реализовывать новые модули и бизнес-функции.
- Проводить рефакторинг и декомпозицию легаси-кода.
- Участвовать в интеграции ИИ-функций в продукт.
- Оптимизировать производительность под высокие нагрузки.
- SQL-оптимизации.
- Работа с тяжелыми запросами.
- Профилирование.
- Участвовать в обсуждениях архитектуры и принятии технических решений.
- Выявлять и устранять узкие места и ошибки в системе.
- Улучшать процессы разработки и качество кода.
Требования
- Коммерческий опыт разработки на PHP от 5 лет.
- Оконченное высшее образование.
- Уверенное владение PHP 8.x.
- Глубокое понимание ООП, SOLID, DRY, KISS.
- Опыт проектирования архитектуры и модулей.
- Уверенное владение SQL.
- Опыт работы с сложными JOIN и подзапросами.
- Знание когда нужно и когда не нужно применять индексы.
- Умение использовать EXPLAIN / ANALYZE.
- Опыт работы с PostgreSQL в продакшене.
- Навыки оптимизации производительности backend-приложений.