Senior Software Developer (WebStorm)
JetBrains
Санкт-Петербург, Россия
9 дней назад

если ты :

  • Умеешь и любишь решать сложные и по-настоящему интересные задачи хочешь улучшить WebStorm и знаешь как именно;имеешь опыт разработки на Java от 5 лет;
  • умеешь проектировать и писать код, который легко читать и поддерживать;понимаешь, как работает код, который ты пишешь : как он исполняется и какие алгоритмы за ним стоят;
  • умеешь работать в команде (открыт для других точек зрения и можешь аргументированно отстаивать свою позицию);не останавливаешься в своём развитии, изучаешь и пробуешь новые подходы и технологиииспытываешь профессиональную гордость от результатов своей работы

  • И особенно если ты : имеешь опыт участия в open-source проектах или ведения собственных проектов;знаешь другие языки и другие парадигмы (Haskell, Python, JavaScript, etc.
  • разбираешься в предметной области (HTML, CSS, etc.);знаком(а) с технологиями создания компиляторов, анализа кода.

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

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

    Второй тип задач интеграция IDE со сторонними инструментами, например системами управления зависимостями, генерации кода, контейнеризации.

    Пользователю должно быть удобно работать со всеми этими инструментами, не покидая IDE.

  • Ты сможешь взяться за практически любую подсистему или за реализацию новой, придуманной тобой фичи.
  • Как устроено внутри :

  • Недавно был осуществлен переход с Java 6 и теперь можно использовать всю функциональность Java 8. Есть части, написанные на Groovy и Kotlin.
  • Сейчас, в основном, это тестирующий код.

  • При интеграции с инструментами зачастую приходится общаться с их разработчиками и вносить необходимые изменения в код этих инструментов.
  • Для автоматического тестирования используются JUnit тесты, которые после каждого изменения запускаются на сервере TeamCity.
  • Большинство тестов функциональные и тестируют взаимодействие всех связанных подсистем.

  • Сборка осуществляется при помощи собственного расширения билд-системы Gant, которое позволяет переиспользовать информацию о структуре проекта из конфигурационных файлов самой IDEA.
  • удалить

    Откликнуться
    Добавить в избранные
    Удалить из Избранного
    Откликнуться
    Мой Email
    Нажимая «Продолжить», я даю согласие neuvoo на обработку моих данных и отправку уведомлений по электронной почте, как описано в Политике конфиденциальности neuvoo. В любое время я могу отозвать свое согласие или отказаться от подписки.
    Продолжить
    Форма заявки