Вакансия: PHP Laravel разработчик (HighLoad / Optimization / Refactoring)
Описание вакансии
О нас:
Мы E-commerce проект в нише запчастей для спецтехники (1.5 млн артикулов, сложная предметная область).
Сейчас проектом руководит Технический директор (Фаундер). Бизнес растет, идей много, но не хватает системности в реализации. Текущий код работает, приносит деньги, но местами страдает от быстрых решений прошлого.
Мы ищем не просто кодера, а Инженера-стабилизатора . Нам нужен человек, который станет технической совестью проекта: поможет навести порядок, внедрит лучшие практики (где это оправдано) и возьмет на себя ответственность за стабильность бэкенда.
Почему это может быть интересно вам:
- HighLoad по данным: Работа с большими массивами данных, где нужно думать об индексах, памяти, транзакциях, оптимизации скорости доставки, а не просто вызывать методы ORM.
- Карт-бланш на качество: Мы устали от костылей . Если вы аргументируете, почему нужно потратить три дня на рефакторинг, чтобы потом не тратить неделю на баги мы вас поддержим.
- Life - work баланс: Мы против работы по выходным и героических подвигов по ночам. Если задача не влезает в срок это проблема планирования, а не повод для овертайма.
Стек и Технологии:
- Админка и обработка данных: Laravel 8.2 + PHP 8.2 (планируем постепенное обновление).
- Пользовательская часть: Laravel 12 + Blade + jQuery (поддержка существующего, верстать с нуля не нужно).
- База данных: MariaDB, 1.5 млн товаров, сложная связность.
- Архитектура: Специфичный Task Manager на базе БД (Chain-jobs). Одна из задач поддерживать его и предлагать идеи по архитектурному улучшению.
- Инфраструктура: Docker, CI/CD на dev-контуры.
Ваши задачи:
Data Processing: Написание и стабилизация тяжелых парсеров/импортеров. Задача сделать так, чтобы синхронизация работала как швейцарские часы.
Оптимизация: Анализ узких мест . Рефакторинг SQL-запросов, оптимизация потребления памяти (работа с чанками, курсорами).
Систематизация: Постепенное снижение техдолга. Внедрение строгой типизации, покрытие критических узлов тестами, улучшение читаемости кода.
Бэкенд-логика: Реализация бизнес-задач (каталог, ценообразование, фиды) с упором на надежность, а не только на скорость.
Наш идеальный кандидат:
- Вы педант в коде. У вас аллергия на run-time ошибки, которые можно было отловить статическим анализом или строгой типизацией.
- Вы понимаете "физику" БД. Знаете, почему set time limit(0) это плохое решение, и как обновлять 100 000 записей, не блокируя таблицу для чтения.
- Вы предсказуемы. Вы не пропадаете с радаров. Если задача сложнее, чем казалось вы сигнализируете об этом сразу, а не в день дедлайна.
- Отношение к Legacy: Вы не впадаете в ступор от чужого кода, а спокойно разбираетесь и улучшаете его шаг за шагом (Rule of Boy Scout).
Условия:
- Доход: 150 000 200 000 руб. (на руки). Выплаты всегда вовремя, финансовая подушка у компании есть.
- Формат: Полная удаленка. Оформление (СЗ / ИП).
- График: Гибкое начало дня, стандартные 8 часов. Мы ценим личное время и work-life balance.
- Процессы: Минимум митингов. Работаем короткими итерациями, обсуждаем не почему не успел , а как сделать, чтобы успели в следующий раз .
ВОПРОС ДЛЯ ОТКЛИКА (Обязательно):
Пожалуйста, начните сопроводительное письмо с ответом на этот кейс. Это поможет нам сэкономить общее время.
Ситуация: Вам нужно написать парсер для обновления цен с сайта поставщика (50 000 товаров). Сайт донора работает крайне нестабильно: часто отдает 504, разрывает соединение или просто очень медленно грузится.
Задача: Опишите тезисно алгоритм вашего решения.
Оцените какие ошибки могут при этом возникать, и как с ними работать?
Как вы организуете процесс, чтобы гарантировать обновление всех 50 000 товаров, даже если скрипт будет падать 10 раз за проход?