Senior PHP Разработчик (Symfony)
Прямой работодатель Softline ( www.softline.com )
Опыт работы более 5 летот 180 000 до 220 000 ₽
О КОМАНДЕ
Мы занимаемся разработкой внутренних корпоративных сервисов, которые облегчают работу более чем 5000 сотрудников компании по всему миру. Данные сервисы интегрированы между собой, но работают как независимые системы с собственной кодовой базой, индивидуальным циклом разработки и поддержкой.
Так как число сервисов увеличивается, а объём задач неуклонно растёт, мы ищем в команду сильного, уверенного в себе PHP разработчика со знанием экосистемы Symfony.
КЛЮЧЕВЫЕ ЗАДАЧИ
- Активное участие в разработке проектов: проектирование решений, их реализация, unit-тестирование, доработка и сопровождение.
- Выполнение code review по задачам других членов команды.
- Работа над техническим долгом проектов: анализ и выделение технического долга, а также последующее его сокращение (плановый рефакторинг).
- Совершенствование принятых в команде стандартов кодирования (code style, общие принципы) и правил статического анализа кода.
- Участие в ведении базы знаний команды: документирование кода, составление и поддержание в актуальном состоянии документации к API сервисов (проектов), ведение wiki проектов.
- Участие в планировании спринта в составе команды: декомпозиция и оценка задач.
НАШИ ОЖИДАНИЯ
- Мы против фанатичного применения шаблонов проектирования, но вам стоит знать основные из них (в основном шаблоны GoF и Мартина Фаулера) и понимать, когда и зачем их применять. Знание и умение применить на практике GRASP будет плюсом.
- Аббревиатуры SOLID, DRY, KISS и YAGNI должны находить отклик в вашей душе (особенно последний).
- Крайне желательно, чтобы вы разбирались в базовых структурах данных (и в частности тех, которые реализованы в SPL) и знали, как оценить сложность алгоритма.
- Мы считаем, что код, отличный от тривиального, должен быть тщательно протестирован, поэтому вам предстоит писать unit-тесты с использованием PhpUnit 9+.
- Код наших проектов написан на Symfony 4/5 (новые проекты делаем на 5) и мы довольно активно используем различные компоненты его экосистемы. От вас потребуется то же самое.
- До сих пор мы не сталкивались с задачами, в которых нам был бы нужен другой фреймворк, поэтому мы не используем ничего, кроме Symfony и его компонентов.
- Вам необходимо разбираться в SQL настолько, чтобы вы могли самостоятельно писать и оптимизировать сложные запросы. Мы используем PostgreSQL, поэтому если вы знаете, чем он отличается от MySQL и умеете писать хранимые процедуры, это будет плюсом.
- Мы используем Redis как распределённое key-value хранилище и рассчитываем, что вы знаете что это и как он работает. Если нет, то опыт с Memcached тоже подойдёт.
- Потребуется знание, что такое message broker, как и для чего он работает, а также опыт работы с RabbitMQ или Kafka.
- Нам бы хотелось, чтобы вы знали, что такое SOA и были готовы к применению её принципов при разработке проектов.
- API наших сервисов построены по принципам REST. Мы ждём от вас понимания этих принципов и готовности им следовать.
- У нас практикуется разделение разработки на backend и frontend, но несмотря на это мы ждём, что вы имеете опыт работы с системой сборки Webpack (или Gulp) и понимаете, как она работает, а также у вас не вызовет трудностей внесение локальных изменений в JS (исправление логической ошибки или оптимизация кода).
- Справедливости ради отметим, что наш frontend написан на TypeScript’е (а не JS’е) с использованием возможностей из ES2020, но знаний нативного JS и ES6 будет более чем достаточно.
- Docker. Мы используем контейнеризацию там, где это необходимо и облегчает нам жизнь, и не используем там, где это всё только усложняет. Поэтому ждём от вас знаний об устройстве контейнеров и понимания, когда их нужно использовать, а когда (и как) можно этого избежать.
- Опыт работы с механизмами CI/CD GitLab’а (или другой системы) будет плюсом.
- И, наконец, мы ждём, что вы разделите наши командные принципы: коллективная работа на результат и взаимопомощь важнее личных успехов.
МЫ ПРЕДЛАГАЕМ
- Официальная заработная плата, размер которой определяем по результатам собеседования.
- Удобный график работы: 8 часов + обед, начало дня на ваш выбор — с 8 до 12 утра, предлагаем возможность частичной работы из дома.
- Мы поддерживаем open source сообщество и поощряем вклад наших коллег в развитие проектов с открытым исходным кодом, используемых в составе наших сервисов.
- У нас приветствуются инициативы по части обучения сотрудников и обмена знаниями, проведения вебинаров, конференций и митапов. Кроме этого мы компенсируем оплату за участие сотрудников в профильных конференциях и тренингах.
- Поддерживаем командный дух работы и ценим вклад каждого в общее дело.
- У нас существует программа лояльности, которая включает в себя различные бонусы для сотрудников, включая компенсацию доли % по ипотеке и скидки на товары и услуги от партнёров компании, в числе которых: туристические агентства, дистрибьюторы компьютерной техники, бары и рестораны.