Задать вопрос
@thewizardplusplus

Реально ли найти работу, связанную с разработкой компиляторов?

Вообще, сейчас я веб-программист (PHP + front-side). Но есть и некоторый опыт работы на C++. В том числе и касательно именно компиляторов - парсинг, оптимизации, трансляция в ассемблер. Даже писал свои простые компиляторы.

Разумеется, я понимаю что этого мало, и готов развиваться (до того, как искать работу). Изучить получше теорию парсинга, теорию оптимизаций, написать свой компилятор посложнее, сделать несколько патчей в open source компиляторы.

Но реально ли вообще найти работу, связанную с этим? Просто на том же HeadHunter в Москве по сути лишь одна вакансия, связанная с разработкой именно компиляторов, от Samsung. Висит при этом не один год (давно её видел). Я не говорю, что она плохая, но один вариант - это слишком мало. Вдруг не возьмут или впоследствии потребуется сменить по какой-либо причине работу. А вариантов больше нету.
  • Вопрос задан
  • 3860 просмотров
Подписаться 1 Сложный 1 комментарий
Пригласить эксперта
Ответы на вопрос 6
VictoriaBest
@VictoriaBest
Лично я не встречала, хотя по роду деятельности часто провожу мониторинг сайтов, HeadHunter, Rabota.ru, Job.ru, больно уж очень узкая специализация. Соответственно есть риск, будет ли она востребована в дальнейшем. Но решать конечно же вам.))
Ответ написан
Комментировать
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
Найти -- реально, но как именно искать не подскажу. Знаю, что занимаются компиляторами питерский офис oracle и (бывший) питерский офис АМД.
По части вклада в opensource, если вы приложитесь к свежей архитектуре, за которой стоит не очень крупная компания, вас 100% заметят. Обычно компиляторная команда полностью занята и приоритет открытых инструментов для них, как правило, наименьший. Поэтому они всегда будут рады помощи со стороны, а там глядишь, и пригласят к себе.
Ответ написан
Комментировать
opium
@opium
Просто люблю качественно работать
Банально надо искать работу за рубежом по этому профилю, вот вы знаете хоть один русский компилятор, который входу? Наверно по этому вы не можете найти такую работу на русских сайтах.
Ответ написан
zxmd
@zxmd
Вопрос - вы собсно сами прям таки и пишите компиляторы с нуля? Все трансляции, парсинг и прочее? Без lex и yacc ? Если да - то плохие новости...
Ответ написан
@alexanius
Да, вполне реально. Как тут уже заметили во-первых это МЦСТ. Во-вторых можете поискать вакансии в Intel. В России Intel занимаются разработкой компилятора для Itanium (насчёт x86 не знаю). И МЦСТ и Intel разрабатывают собственные, закрытые компиляторы.

В Samsung (по ситуации ~год назад) был набор для разработки llvm. Ещё разработкой компилятора (gcc, llvm) занимаются в Google. Не знаю отдельный это отдел или просто побочный вид деятельности, но задания там будут крайне интересные.
Ответ написан
Комментировать
@pharo
Сложно оценить реально или не реально, т.к. для чего и почему может потребоваться писать компилятор вопрос не однозначный.

Как пример статьи по компиляторостроению для нестандартного железа.
Труды ИСП РАН, том 33, вып. 5, 2021 г. // Trudy ISP RAN/Proc. ISP RAS, vol. 33, issue 5, 2021
Разработка компилятора для стековой процессорной ...
В первой версии компилятора архитектура TF16 рассматривалась как классическая регистровая архитектура, и сгенерированный код не использовал стековые возможности.
Эта версия была относительно проста в разработке и служила точкой сравнения для второй версии компилятора.
Во второй версии компилятора был разработан и реализован платформонезависимый алгоритм планирования команд c учётом особенностей стековых архитектур.

При сравнении двух версий версия компилятора с поддержкой стековых возможностей генерирует код, который в среднем на 35.7% быстрее по времени выполнения и на 50.8% меньше по размеру, чем код, генерируемый версией компилятора без поддержки стековых возможностей. Разработанный алгоритм позволяет реализовать в компиляторе LLVM поддержку других стековых процессорных архитектур.


P.S. Бывает ещё для FPGA используют какое то ядро встроенного своего процессора, а для него нет инструментария и добавляют свой инструментарий для написания/переноса софта под него длявыполнения.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы