December 18, 2020
Senior PHP разработчик в Softline
Ключевые задачи
- Активное участие в разработке проектов: проектирование решений, их реализация, 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 сообщество и поощряем вклад наших коллег в развитие проектов с открытым исходным кодом, используемых в составе наших сервисов.
- У нас приветствуются инициативы по части обучения сотрудников и обмена знаниями, проведения вебинаров, конференций и митапов. Кроме этого мы компенсируем оплату за участие сотрудников в профильных конференциях и тренингах.
- Поддерживаем командный дух работы и ценим вклад каждого в общее дело.
- У нас существует программа лояльности, которая включает в себя различные бонусы для сотрудников, включая компенсацию доли % по ипотеке и скидки на товары и услуги от партнёров компании, в числе которых: туристические агентства, дистрибьюторы компьютерной техники, бары и рестораны.
Откликнуться:
CV на [email protected]
Также укажите, что узнали о вакансии в Dream Job (Вакансии)
Отзывы о компании Softline, этапы отбора и зарплаты на сайте Dream Job: bit.ly/dj-softline