Senior IntelliJ Plugin Developer (Platform)

Дата размещения вакансии: 12.11.2024
Работодатель: Haulmont
Уровень зарплаты:
з/п не указана
Город:
Самара
Требуемый опыт работы:
Более 6 лет

О вакансии

Мы создаем инструменты для широкого круга разработчиков: плагины для IDE, генераторы кода, библиотеки и платформу для создания корпоративных приложений. Нашими инструментами активно пользуются сотни тысяч разработчиков.

Ваша задача — развитие инструментов разработки платформы. В основании инструментов — фреймворк IntelliJ Platform. Вы будете писать преимущественно на Kotlin генераторы кода, различные инспекции, рефакторинги а также визуальные редакторы. Разработка инструментария позволит вам познакомиться с большим числом смежных технологий, расширить свой кругозор и оставаться конкурентноспособным на рынке.

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

Задачи

Основная задача - разработка плагина к IntelliJ IDEA, ускоряющего и облегчающего работу со стеком технологий: Spring, JPA, Liquibase, React, DevOps и облачные технологии.

  • Разработка инструментов разработчика, преимущественно на Kotlin.

  • Проектирование функциональности и пользовательского интерфейса плагина.

  • Написание Unit тестов.

  • Участие в Code Review.

Мы ищем человека, который

  • Имеет опыт разработки ПО от двух лет.

  • Уверенно знает Java Core, ООП, SOLID.

  • Имеет представление об алгоритмах и структурах данных.

  • Имеет базовые представления о Java Concurrency, Spring Framework, JPA, Databases.

  • Владеет английским языком на уровне чтения документации или выше.

Преимуществом будет

  • Знание Kotlin.

  • Уверенное знание возможностей IntelliJ IDEA.

  • Опыт разработки бизнес-приложений или микросервисов на стеке SQL/JPA/Spring.

  • Опыт разработки пользовательских интерфейсов с использованием десктопных, веб или мобильных технологий.