Senior Frontend-разработчик (Юла)
Требования
Местоположение и тип занятости
Компания
Описание вакансии
Условия работы
Юла - высоконагруженный сервис объявлений, который обслуживается сотнями серверов в нескольких дата-центрах и ежедневно помогает миллионам пользователей.
Под капотом у Юлы современный стек технологий. Основа бэкенда и API реализована на PHP и Go, для управления данными и их хранения используется MongoDB, Tarantool и Redis, поисковая система работает на базе Elasticsearch. В качестве диспетчера сообщений настроен Apache Kafka, данные хранятся в Hadoop и Clickhouse.
Мобильные приложения для iOS- и Android-устройств реализованы на Objective-C + Swift и на Java + Kotlin соответственно. Веб-версия Юлы работает на стеке React/Redux, для стилей используется CSS-in-JS библиотека styled-components.
Задачи
- проектирование и разработка веб-интерфейсов;
- рефакторинг имеющихся приложений, поддержка и развитие кодовой базы;
- разработка и поддержка UI-kit;
- стандартизация подходов и инструментов;
- работа над performance приложения;
- взаимодействие с разработчиками, тестировщиками, дизайнерами, менеджерами и другими командами и проектами.
Требования
- уверенное знание TypeScript, умение писать структурированный и читаемый код;
- отличное знание React и опыт работы с экосистемой вокруг него;
- опыт работы с Redux-стеком (Redux Thunk, normalizr);
- уверенная работа с Git (мы работаем над несколькими проектами и репозиториями, в которых используем GitFlow и GitLab Flow);
- навыки и понимание HTML/CSS (кросс-браузерность, семантика, блочная модель, анимации, доступность, Flexbox и т.д.);
- навыки отладки кода и анализа производительности веб-интерфейсов;
- опыт написания тестов, в частности тестирования React-компонентов (мы используем фреймворк Jest и библиотеку Enzyme);
- понимание принципов работы современных веб-браузеров и веб-серверов, протоколов HTTP и WebSocket, стека TCP/IP и RESTful веб-служб;
- опыт работы с UNIX, знание основных команд и служб.
Будет плюсом
- опыт работы с GraphQL и в частности с Apollo;
- опыт разработки, поддержки и публикации пакетов (мы используем Verdaccio для приватных пакетов, Yarn как менеджер и Lerna для основного проекта);
- опыт разработки серверной части приложения или программирования на других языках, знание и понимание основных методологий, парадигм, структур данных, паттернов и алгоритмов;
- опыт автоматизации сборки (webpack, gitlab);
- опыт разработки isomorphic web apps.
Бонусы
- возможность создавать продукты и сервисы, которые меняют к лучшему жизнь миллионов пользователей;
- амбициозные задачи, масштабные проекты и возможности для профессионального роста;
- совместные интересы и увлечения: помогаем раскрывать таланты и отлично проводить свободное время;
- работа в команде профессионалов из разных сфер, которые всегда готовы поделиться опытом;
- программа благополучия: заботимся о здоровье и хорошем самочувствии сотрудников.
Мы будем рады твоему отклику и, при обоюдном интересе, предложим условия и проекты, от которых не захочется отказываться.