Senior Java Developer (RubyMine)

Уровень зарплаты
Город
Требуемый опыт работы
от 200 000 руб.
Санкт-Петербург
3–6 лет

RubyMine — среда разработки для Ruby, создаваемая нами с любовью для других программистов. RubyMine — первая специализированная IDE на платформе IntelliJ IDEA, первая версия которой была выпущена в 2008 году, с тех пор новые версии выходят примерно два раза в год. Сейчас RubyMine используют более шестидесяти тысяч программистов по всему миру, включая такие компании как Twitter, NASA и New Relic.

Мы хотим видеть тебя в своей команде,

если ты:

  • Умеешь и любишь решать сложные и по-настоящему интересные задачи
    • хочешь улучшить RubyMine и знаешь как именно;
    • имеешь опыт разработки на Java от 5 лет;
    • умеешь проектировать и писать код, который легко читать и поддерживать;
    • понимаешь, как работает код, который ты пишешь: как он исполняется и какие алгоритмы за ним стоят;
    • умеешь работать в команде (открыт для других точек зрения и можешь аргументированно отстаивать свою позицию);
    • не останавливаешься в своём развитии, изучаешь и пробуешь новые подходы и технологии
    • испытываешь профессиональную гордость от результатов своей работы
  • И особенно если ты:
    • имеешь опыт участия в open-source проектах или ведения собственных проектов;
    • знаешь другие языки и другие парадигмы (Haskell, Python, C, Ruby, etc.);
    • знаком(а) с технологиями создания компиляторов, анализа кода.

Какие задачи мы решаем:

  • Задачи, которые ставятся перед программистами, можно разделить на два типа.
    • Первый тип — задачи, связанные с обработкой большого объема исходного кода. IDE должна на лету обрабатывать введённый код, подсвечивать в нём ошибки, предлагать варианты автодополнения, помогать быстро переходить между связанными элементами, поддерживать автоматическое выполнение рефакторингов.
    • Второй тип задач — интеграция IDE со сторонними инструментами, например системами управления зависимостями, генерации кода, контейнеризации. Пользователю должно быть удобно работать со всеми этими инструментами, не покидая IDE.
  • Ты сможешь взяться за практически любую подсистему или за реализацию новой, придуманной тобой фичи.

Как устроено внутри:

  • Большая часть исходного кода написана на Java 6, но переход на Java 8 уже происходит. Есть части, написанные на Groovy и Kotlin. Сейчас, в основном, это тестирующий код.
  • При интеграции с инструментами зачастую приходится общаться с их разработчиками и вносить изменения и вносить необходимые изменения в код этих инструментов, большинство из которых написано на Ruby, но есть области где используется С (отладчик).
  • Для автоматического тестирования используются JUnit и Cucumber тесты, которые после каждого изменения запускаются на сервере TeamCity. Большинство тестов функциональные и тестируют взаимодействие всех связанных подсистем.
  • Сборка осуществляется при помощи собственного расширения билд-системы Gant, которое позволяет переиспользовать информацию о структуре проекта из конфигурационных файлов самой IDEA.

Тип занятости

Полная занятость, полный день
Вы откликаетесь на вакансию в другой стране

Страна размещения вакансии — Россия.

В резюме не указано, что вы готовы туда переехать.

Все равно откликнутьсяНе откликаться
Отклик направлен работодателю
Сопроводительное письмо к отклику
Написать сопроводительное письмоПисьмо отправлено
Произошла ошибка, попробуйте ещё раз
Дата публикации вакансии
Рекомендуем