Lead PHP/TS developer
Зарплата
Требования
Местоположение и тип занятости
Компания
Описание вакансии
Условия работы
Привет!
XIAG - международная IT-компания, создающая для швейцарских бизнесов мобильные и веб-приложения для b2b и b2c секторов уже 22 года. Наши проекты могут быть в различных сферах: b2b платформа для продуктов питания, авиалиния, банки, туристические порталы и т.п. Партнерство с клиентами длится в среднем 7-8 лет.
Наши офисы есть в Швейцарии (Винтертур), Польше (Варшава), России – Сочи, Новосибирск (м. Маршала Покрышкина и Академгородок).
Сегодня мы приглашаем тебя управлять разработкой одного из интереснейших наших проектов - группу порталов по поиску работы в Швейцарии CH Media (Ostjob, MyJob, ZentralJob, JobsNZZ, JobBern, JobMittelland, JobBasel).
Ближайшие цели на проекте:
- Активные планы по автоматизации рабочих процессов, тестирования и публикации новых версий в связи с расширением платформ на много региональных
- Выравнивание процессов разработки и релизов
- Более полное покрытие функциональными тестами
- Kubernetes для staging, в live
- Отдельная платформа по глобальному менеджменту вакансий и распределение уже потом по региональным
- AI по краулингу вакансий и качественному распознаванию информации в вакансиях (отдельным проектом)
Что отличает наше партнерство с компаниями, и что любопытного здесь для тебя?
- работа с реальными бизнесами, построение приложений для пользователей, которые действительно заинтересованы в результате
- интересные идеи от заказчика, побуждающие искать новые технические реализации - это обеспечивает тебе постоянную вовлеченность в архитектурную и аналитическую части приложения
- под капотом много сложного и интересного (н-р, дополнительная логика по релевантности вакансий)
- привнесение новых технологий, несмотря на легаси базу - для тебя это значит, что можно драйверить эти изменения, дружить между собой разные технологии и части приложения
Задачи:
- Принимать решения о тактике разработки конкретных фич на основании понимания работы всей системы, полного цикла работы приложения.
- Оптимизировать этот цикл, в том числе через улучшение взаимодействия частей (FE/BE) между собой.
- Грамотно работать с задачами - уточнять критерии выполнения задачи; учитывать, какие возможности уже существуют в приложении; интегрировать в существующую инфраструктуру; делегировать подходящим людям в команде.
- Частично участвовать в разработке частей проекта (около 30% времени).
- Ревьюить код, особенно в точках соприкосновения частей между собой.
- “Расследовать” баги - определить, где происходит поломка, с каким сценарием и распределять между людьми в команде.
- Подбирать необходимые инструменты для проекта с учетом специфики самого проекта и его архитектуры.
- Следовать принятым в компании практикам и развивать их: cross code review, CI/CD, TDD, при желании, парное программирование.
- Улучшать и направлять свою команду.
- Участвовать в ядре компании по подключению новых технологий, развитию инструментов и проектов в целом; тесно сотрудничать с коллегами других команд.
- Принимать участие в оценке кандидатов на работу в компанию.
Стек:
- PHP 7.3 и выше (Symfony, Silex, Zend Framework), в т.ч. опыт адаптации старых версий под новые
- PostgreSQL
- RabbitMQ
- Manticore / Sphinx Search
- Memcached
- Puppeteer
- Sentry
- Nginx
- BluePrint, JSON schema
- TypeScript (React, Redux, ReduxSaga)
- WebPack 4/5
- SSR
- Storybook
- Leaflet
- Jest, Enzyme
- Linux: SaltStack, Vagrant, Docker, k8s
- Gitlab
- cross code review, CI/CD, TDD
Команда:
- 1 - ПМ
- 0,5 - senior full-stack
- 1 - FE
- 1 - BE
- частичное участие 2 full-stack разработчиков при необходимости
- 1 - системный администратор / частично DevOps
- частичное участие UX дизайнера при необходимости
Мы ожидаем от кандидата:
- PHP/Symfony (использование стандартов PSR) от 5 лет с опытом адаптирования старых версий
- TS/JS + React/Redux от 3 лет без непреодолимого желания переписать всё на функциональные компоненты
- опыт работы с Linux от 1 года
- активное использование composer
- понимание полного цикла жизни приложения
- огромным плюсом будет опыт использования docker для разработки
- опыт управления командой будет плюсом
- личные качества:
- ответственность,
- умение эффективно разговаривать с людьми, вести переговоры,
- делегирование,
- наставничество,
- выработка и принятие решений,
- проектное мышление,
- постоянно развитие, мониторинг изменений в ЯП/практиках/инструментах
- английский язык для письменного и устного общения с ПМами и коллегами (B2 и выше - должны чувствовать себя свободно, чтобы говорить с ПМом об архитектуре приложения и с CEO о развитии стека в компании)
Что готовы предложить:
- трудоустройство с первого дня, вся зарплата - оклад
- гибридный график работы, но рассматриваем и индивидуальные условия
- среда, в которой ценят качественный код: авто-тесты, cross code review, время на рефакторинг, автоматизация релиза и работа с современными серверами
- технически грамотные решения от ПМов
- швейцарский менеджмент: горизонтальная иерархия, решения принимаются командой проекта, опыт разных ролей у разработчиков от проекта к проекту
- отсутствие бюрократии - прямой контакт с руководством
- ежегодный пересмотр зарплаты, бонусы
- внутренние проекты компании становятся частью внешних
- профессиональное развитие внутри компании: обмен опытом, мнениями, технологиями (ежемесячные лекции от коллег, организованные обсуждения)
- подбор проектов и задач в соответствии со способностями и навыками разработчиков
- ежедневная практика английского языка, бесплатные занятия в офисе раз в неделю и при желании обучение в школах или с репетитором с оплатой ¾ от компании
- курсы в профессии и конференции с оплатой ¾ от компании
- отсутствие ограничений по длительности отпуска за раз, доплата за больничные до 100% оклада
- work-life баланс: негативно относимся к переработкам - будь в свободное время с близкими
- фрукты и никаких печенек
Дополнительные инструкции
В нашей команде коллеги умеют проявлять инициативу и отстаивать идеи; обсуждать, спорить, задавать вопросы; видеть свои причастность и ответственность в проекте; организовывать рабочее время и определять приоритеты.
Мы серьезно относимся к подбору: попросим попробовать себя в парном программировании совместно с нашим коллегой.