Напиши текст вакансии для должности "Full Stack Java Developer (Java, JS/TS, Atlassian)". Название компании: "ALM Works". Расположение: Санкт-Петербург. График работы: Полный день. Опыт работы: От 3 до 6 лет. Ключевые навыки: 'JavaScript', 'Atlassian Jira', 'Java', 'CSS', 'Английский язык', 'Unit Testing', 'HTML'

ALM Works – небольшая и неформальная компания. Мы уже 16 лет занимаемся созданием собственных программных продуктов в области управления проектами. Наши клиенты - более четырех тысяч компаний по всему миру, среди которых NASA, Google, Adobe, Intel, Sony, Disney, Blizzard, Ubisoft, Twitter и много других известных имен. Мы ищем опытных разработчиков в команду проекта Structure, где мы создаем одну из наиболее популярных надстроек над Atlassian JIRA. Требования к кандидатам:  Минимум 4 года опыта коммерческой разработки ПО. Хорошее знание теор. минимума computer science (оно вам понадобится!). Хорошее владение языком Java, опыт серверной разработки на нем. Знакомство с JavaScript/TypeScript, опыт разработки браузерных приложений. Опыт многопоточного программирования. Хорошее владение письменным английским языком (это основной язык для письменной коммуникации в компании).  Дополнительно приветствуется:  Опыт разработки пользовательских интерфейсов. Опыт оптимизации, решения проблем с производительностью. Знакомство с продуктами Atlassian.  Чем надо будет заниматься:  Создавать новую функциональность в популярном продукте, работая на всех уровнях (от базы данных до UI). Ориентировочно 70% объема работы - программирование на сервере и 30% - на клиенте. Писать unit-тесты, в отдельных случаях - интеграционные тесты. Читать код (в проекте обязательный 100% code review). Участвовать в создании документации, развитии архитектуры проекта, планировании релизов. Участвовать в коммуникациях с клиентами (на уровне корпоративной системы баг трекинга).  Вакансия вам не подходит, если:  Вы готовы писать серверный код, но не готовы работать над пользовательским интерфейсом, или наоборот. Вы твердо уверены, что HTML и CSS должен знать верстальщик, а программист - не должен. Вы привыкли писать код только когда вам предоставят детальную спецификацию, и не готовы сами работать над деталями вместе с менеджером продукта или дизайнером.  Мы предлагаем:  Участие в небольшой, сплоченной и очень сильной команде. Потенциал роста: архитектор, менеджер продукта, участие в новых проектах, реализация ваших собственных идей. Высокую, индексируемую заработную плату (попадает в 10% самых высоких). Регулярные ежеквартальные премии, привязанные к финансовым результатам работы компании. Оформление в соответствии с ТК, полностью официальная заработная плата, оплачиваемый отпуск 4 недели (с возможностью использовать все 4 недели за раз). Премиальный полис ДМС, 100% оплачиваемое отсутствие по болезни. Оплата 50% расходов на спорт. Оплата 50% расходов на занятия английским языком. Отсутствие бюрократии и формальностей. Гибкий график, отсутствие обязательного расписания Возможность работать удаленно Регулярные корпоративные мероприятия; Возможность участия в международных конференциях (если владеете разговорным английским). Возможность командировок в офис компании в Бостоне, США (если владеете разговорным английским).  Как у нас все устроено: Основные технологии, задействованные в разработке Structure – Atlassian SDK, Java, REST, JavaScript, TypeScript, jQuery, HTML5. Рабочее окружение – IntelliJ IDEA, Git, Maven, Bamboo, BitBucket Server. Тесты серверного кода пишутся на Groovy / Spock, клиентского – на TypeScript/Mocha. Front-end – это большое, модульное приложение на JavaScript/TypeScript, построенное с элементами FRP, с большим вниманием как к пользовательскому интерфейсу, так и ко внутренней архитектуре. Back-end реализует расширяемую модель данных, алгоритмически насыщенный движок для создания и синхронизации структур и другие функции. Особое внимание уделяется производительности и корректности работы в многопоточной среде и в кластерном окружении. Мы широко используем Structure внутри компании для планирования и организации задач на всех этапах - от бизнес идей до планирования релизов и тестирования. Процесс разработки полностью прозрачен, каждый желающий может участвовать в обсуждении новой функциональности, и выбирать задачи в рамках текущей итерации. Мы активно боремся за качество продукта внутри и снаружи:  новый важный функционал покрывается unit-тестами; Code Review у нас обязателен для каждого изменения; подробное ручное тестирование готовых сборок тестировщиками.  У нас невозможно обойтись без тесных коммуникаций внутри команды; помимо живого общения и активной переписки в Slack мы проводим регулярные stand-up встречи. Также все члены команды могут принимать участие в общении с пользователями, чтобы лучше понимать их потребности: от переписки в системе поддержки, до живых встреч на конференциях и в поездках к клиентам.