Internships
Register
Copyright © 2000—2025 JetBrains s.r.o.

License Audit

Description

Программное обеспечение с открытым исходным кодом стало неотъемлемой частью разработки современных продуктов – более 80% компонентов современных приложений – это OSS (open-source software).

На сегодняшний день в мире существует более 400 различных лицензий (и это только в официальном регистре SPDX), и разработчикам-пользователям OSS непросто разбираться в их требованиях. И во время разработки ПО может возникнуть множество нежелательных ситуаций, связанных с лицензиями: компания может получить иск в суд за нарушение требований лицензии – к примеру:

  • Лицензия требует публикации исходного кода (AGPL), а компания не хочет делиться своим исходным кодом;
  • Даже если вы начали соблюдать требования лицензии, вы можете пропустить момент ее изменения на новых версиях используемой библиотеки.

Мы разрабатываем продукт, позволяющий разработчикам детектировать используемые лицензии в их коде и в зависимостях их проекта, проверять их совместимость и отслеживать соблюдение требований различных лицензий – и все это делать прямо в CI-системе, благодаря Qodana.

В этом проекте предстоит работать над расширением и улучшением функциональности нашего нового продукта:

  • Поддержка большего числа лицензий и повышение качества детектирования лицензий.
  • Поддержка большего числа пакетных менеджеров – мы уже умеем парсить многие пакеты и извлекать зависимости/читать или детектировать их лицензии и постепенно увеличиваем число поддерживаемых программных стеков.
  • Разработка нового движка совместимости лицензий – построение графа совместимости лицензий и поиск пути из одной вершины в другую для нахождения их соответствия.
  • Анализ текстов лицензий и применение различных техник NLP для извлечения ключевой информации (требований соблюдения) и поиск различий в лицензиях.
  • Продуктизация – интеграция нашего Docker-образа с Qodana.

Ожидаю, что в результате стажировки стажер не только дополнит свое резюме хорошим проектом, но и прокачается как в инженерных скиллах – станет лучше писать код благодаря полученным Code Review, научится работать с современными CI-системами; так и поработает в команде и зарядится опытом запуска новых фичей в продукт.

В случае вопросов пишите по адресу viktor.tiulpin@jetbrains.com или egor.bulychev@jetbrains.com.

Requirements

  • Git + Linux
  • Python / Kotlin или просто умение программировать на любимом языке
  • strong plus: ML и в частности NLP

Admission

Разработчики: Лето 2021

Mentor

Dmitrii Proskurin, Egor Bulychev, Viktor Tiulpin

Mentor's location

Remote

Product/Team

Qodana

Tags

Kotlin
Machine Learning
Python