Наша компания разрабатывает и эксплуатирует облачные сервисы: хостинг, CDN и платформу видеотрансляций.
Мы — аккредитованная IT-компания с более чем 10-летним опытом на рынке.
Сейчас мы ищем разработчика PHP (Symfony) и Golang, который возьмёт на себя поддержку и развитие существующих продуктов, участие в создании новых сервисов, а также руководство небольшой командой разработчиков.
По нашей оценке, распределение времени будет примерно 70% разработка / 30% управление командой (2–4 разработчика).
У нас вы будете:
Разработка:
- проектировать, кодить и тестировать свои решения;
- участвовать в оценке задач и планировании;
- проводить постепенный рефакторинг кода, улучшая его структуру и производительность.
Команда:
-
управление командой разработчиков (2–4 человека);
-
выстраивать процесс разработки команды;
-
ежедневная постановка задач, контроль выполнения и code review;
-
менторство и помощь в профессиональном развитии коллег.
ТРЕБОВАНИЯ:
-
понимание процессов разработки программного обеспечения и умение адаптировать их под команду, проект и используемые технологии;
-
умение формализовать и согласовывать как требования к задачам, так и план их реализации;
-
способность организовывать собственную работу и работу команды для достижения результата;
-
опыт построения индивидуального плана развития для разработчиков;
- опыт разработки сайтов и веб-систем с применением PHP (Symfony), MySQL, JavaScript, HTML и CSS, от проектирования до выкатки кода в production, включая самостоятельное тестирование;
- опыт разработки высоконагруженных Golang сервисов от проектирования до выкатки кода в production, включая самостоятельное тестирование;
- знание базовых алгоритмов и структур данных, умение применять их на практике;
- понимание принципов ООП, SOLID и DRY, умение объяснить их суть простым языком и следовать им в работе;
- опыт работы с linux на уровне уверенного пользователя и писателя shell-скриптов;
- английский на уровне чтения технической документации;
- ответственность, готовность прислушиваться к критике и ставить командные цели выше личных.
Чек-лист наших ожиданий, или “мы исходим из того, что вы знаете …”:
- как работать с ошибками, что такое copy-on-write и в чём отличие наследования от композиции;
- что и в каком порядке делает команда cache:clear, как найти зарегистрированные обработчики событий и что event dispatcher’ы бывают разные;
- чем модульные (unit) тесты отличаются от интеграционных и сквозных (e2e);
- в чём разница между async и defer у тега script и что такое Event Loop;
- как устроен map в golang и особенности работы с ним;
- какие примитивы обеспечивают конкурентность в golang;
- чем отличаются уровни изоляции read committed и repeatable read, и что deadlock — это не «мёртвый замóк»;
- как работает бинарный поиск и чем сортировка пузырьком отличается от сортировки кучей;
- что такое systemd и как пользоваться такими утилитами как ps, top и netstat.
Будет плюсом:
- умение пользоваться инструментами статического анализа кода и его преобразования, в частности: Psalm, PHPStan, Rector, PHP-CS-Fixer, PHP_CodeSniffer, PHPMD;
- опыт работы с Gitlab CI/CD и самостоятельной настройки pipeline’ов;
- знание отличий виртуализации от контейнеризации и опыт работы с Docker и Docker Compose (опыт работы с K8s и Helm будет дополнительным плюсом);
- опыт разработки на Python, Ruby, C или C++, а также опыт работы с PostgreSQL, ClickHouse, Tarantool, MongoDB, Redis, Memcached;
- опыт использования LLM-инструментов в режиме агента;
- знание сетевых технологий, основ безопасности и обработки данных;
- наличие собственных open source проектов или участие в сторонних.
Условия:
- оформление и социальные гарантии согласно ТК РФ;
- свободный график;
- работа удалённо или в комфортном офисе возле метро "Петроградская".