Senior Java Developer (Cloud)
Зарплата
Требования
Местоположение и тип занятости
Компания
Описание вакансии
Условия работы
ALM Works – IT-компания, продукты которой помогают менеджерами визуализировать данные из Jira и на их основе быстро принимать обоснованные решения. Наши клиенты - более четырех тысяч компаний по всему миру, среди которых NASA, Google, Netflix, BMW, Adobe, Intel, Sony, Disney, Ubisoft и много других известных имен.
Мы ищем опытных разработчиков в нашу растущую команду, где мы создаем SaaS систему, реализующую бизнес-идеи, проверенные на нашем успешном проекте Structure for Jira. В компании также регулярно запускаются новые идеи, расширяющие нашу продуктовую линейку.
Требования к кандидатам:
- Минимум 4 года опыта коммерческой разработки ПО
- Хорошее знание теор. минимума computer science (Оно вам понадобится!)
- Хорошее владение языком Java (или Kotlin), опыт серверной разработки на нем
- Опыт программирования на как минимум двух разных языках в реальных проектах
- Опыт многопоточного программирования
- Хорошее владение письменным английским языком (это основной язык для письменной коммуникации в компании)
Дополнительно приветствуется:
- Опыт разработки и эксплуатации масштабируемой распределенной системы
- Опыт работы с языками: Java 11, Scala, Kotlin, TypeScript
- Опыт работы с технологиями: Akka, Kafka, Cassandra
- Знакомство с функциональными языками программирования, FRP
- Опыт оптимизации, решения проблем с производительностью
- Знакомство с продуктами Atlassian
Чем надо будет заниматься:
- Создавать новую функциональность в популярном продукте, работая преимущественно на серверном уровне
- Писать unit-тесты, в отдельных случаях - интеграционные тесты
- Читать код (в проекте обязательный 100% code review)
- Участвовать в создании документации, развитии архитектуры проекта, планировании релизов
- Участвовать в коммуникациях с клиентами (на уровне корпоративной системы баг трекинга)
Бонусы
- Участие в небольшой, сплоченной и очень сильной команде
- Потенциал роста: архитектор, менеджер продукта, участие в новых проектах, реализация ваших собственных идей
- Высокую, индексируемую заработную плату (попадает в 10% самых высоких)
- Регулярные ежеквартальные премии, привязанные к финансовым результатам работы компании
- Оформление в соответствии с ТК, полностью официальная заработная плата, оплачиваемый отпуск 4 недели (с возможностью использовать все 4 недели за раз)
- Премиальный полис ДМС, 100% оплачиваемое отсутствие по болезни
- Оплата 50% расходов на спорт
- Оплата 50% расходов на занятия английским языком
- Отсутствие бюрократии и формальностей
- Гибкий график, отсутствие обязательного расписания
- Возможность работать удаленно
- Комфортный, тихий, вентилируемый офис с частной парковкой. Ближайшие станции метро - Петроградская, Черная Речка, Лесная
- Регулярные корпоративные мероприятия; фрукты, орехи, печеньки в офисе и даже с доставкой на дом
- Оплата такси от дома до офиса и обратно в случае городских эпидемий и форс-мажоров
- Возможность участия в международных конференциях (если владеете разговорным английским)
- Возможность командировок в офис компании в Бостоне, США (если владеете разговорным английским)
Дополнительные инструкции
Как у нас все устроено:
Back end — это кластер сервисов на Akka, код пишем на Kotlin. Основные потоки данных реализованы по примеру Akka Streams, но в отличие от них распределены между нодами. Начинаются они в Kafka, а заканчиваются в web sockets. Данные пишем в Cassandra, которую берем за масштабируемость и AP. Система запускается в Kubernetes (локально или на тестовом кластере).
Front end — это большое модульное приложение на JavaScript, построенное с элементами FRP, с большим вниманием как к пользовательскому интерфейсу, так и ко внутренней архитектуре. Новый код пишем на TypeScript и React.
Мы широко используем Structure внутри компании для планирования и организации задач на всех этапах - от бизнес идей до планирования релизов и тестирования. Процесс разработки полностью прозрачен, каждый желающий может участвовать в обсуждении новой функциональности, и выбирать задачи в рамках текущей итерации. Мы активно боремся за качество продукта внутри и снаружи:
- новый важный функционал покрывается unit-тестами;
- Code Review у нас обязателен для каждого изменения;
- подробное ручное тестирование готовых сборок командой QA.
У нас невозможно обойтись без тесных коммуникаций внутри команды; помимо живого общения и активной переписки в Slack мы проводим регулярные stand-up встречи. Также все члены команды могут принимать участие в общении с пользователями, чтобы лучше понимать их потребности: от переписки в системе поддержки, до живых встреч на конференциях и в поездках к клиентам.
Если вакансия вас заинтересовала, расскажите, пожалуйста, в сопроводительном письме, какими инструментами вы пользуетесь сейчас для организации задач в вашей команде, и какие у них сильные стороны.