Azul
Bangalore, Индия13 дней назад
Falcon — это компилятор "точно в срок" (JIT) в Azul Platform Prime. Он компилирует "горячий" Java-байт-код в высокооптимизированный машинный код и обеспечивает производительность Java, недостижимую для стандартных JVM. Falcon построен на базе LLVM. Мы ищем инженера по производительности компиляторов уровня Staff (Staff Compiler Performance Engineer), который будет определять техническое направление развития производительности Falcon. Эта роль не связана с фронтендом компилятора и не предполагает создание компилятора с нуля: Falcon — это зрелый продукт, используемый в крупных корпоративных средах. Вам предстоит решать, откуда будут исходить следующие значительные улучшения производительности, руководить разработкой оптимизаций, которые их обеспечивают, и следить за тем, чтобы архитектура компилятора соответствовала дорожной карте продукта. Вы будете старшим техническим специалистом в распределенной команде экспертов по компиляторам и ключевым партнером для команд, отвечающих за среду выполнения (runtime), сборщик мусора (GC) и продукт.
Что вы будете делать (ответственность) Определять стратегию производительности Falcon: выявлять крупнейшие возможности в бенчмарках и рабочих нагрузках клиентов и преобразовывать их в техническую дорожную карту. Руководить разработкой сложных, сквозных оптимизаций в оптимизаторе и генераторе кода, а также интерфейсов между компилятором, средой выполнения и сборщиком мусора. Принимать архитектурные решения по конвейеру оптимизации Falcon, бюджету времени компиляции и стратегии многоуровневой компиляции (tiering). Возглавлять внедрение Falcon на новых аппаратных платформах и в новых продуктах Azul. Наставлять старших инженеров, проводить ревью критически важных дизайнов и кода, а также устанавливать стандарты методологии и валидации производительности. Представлять Azul в сообществе LLVM: участвовать в обсуждениях дизайна и вносить вклад в развитие upstream-проектов, приносящих пользу компиляторам управляемых языков.
Что вы принесете с собой (опыт, навыки) 8+ лет профессионального опыта разработки оптимизирующих компиляторов или JIT-компиляторов. Подтвержденный опыт технического лидерства: ответственность за дизайн основных компонентов компилятора или фреймворков оптимизации, используемых в производстве. Экспертные навыки C++ и опыт работы с большими, долгоживущими кодовыми базами. Глубокие знания в области оптимизации компиляторов и генерации кода, с четким пониманием компромиссов между пиковой производительностью, временем компиляции, временем "прогрева" (warmup) и размером кода. Экспертные навыки анализа производительности на уровне микроархитектуры.
Приветствуется: Признанный вклад в LLVM или другой крупный компилятор: владение кодом, поддержка или автор значительной работы в upstream. Глубокий опыт работы с JIT-компиляторами для управляемых языков: HotSpot C2, Graal, V8, .NET RyuJIT или аналогичными. Опыт тесной работы с командами runtime и GC по вопросам спекуляций, деоптимизации и проектирования барьеров.
Сравним с твоим профилем навыки, уровень, формат работы и зарплату
Оценка RocketHunt по реальным зарплатам
Грейд
Senior
Опыт работы
от 8 лет
Формат работы
Удаленно, Офис
Уровень английского
B2 - Выше среднего
Письмо на почту или сообщение рекрутеру в Telegram