Проектная магистратура Университета ИТМО

Технология Radeon ProRender

Руководитель от корпоративного партнера: Кравченко А.А., ООО "Люксофт Профешнл"

Открытых вакансий: 1

Подать заявку в этот проект

При работе в этом проекте вы не сможете параллельно работать в другой компании.

Менторы по направлениям

  • Ларионов Н.Ю. – Quality Assurance (nikita.larionov@dxc.com)
  • Кравченко А.С. – DevOps (andrei.kravchenko@dxc.com)
  • Кравченко А.С. – Web-разработка (andrei.kravchenko@dxc.com)
  • Мороз В.В. – 3D моделирование (viktoriia.moroz@dxc.com)

Краткая аннотация

Radeon ProRender — мощный физический процессор для рендеринга, который позволяет представителям творческих профессий создавать фотореалистичные изображения.

Созданный на основе высокоэффективной и высокопроизводительной технологии Radeon Rays, масштабируемый движок для визуализации методом трассировки лучей Radeon ProRender использует открытые отраслевые стандарты для достижения впечатляющих результатов за счет использования ресурсов графического и центрального процессоров.

Проект внедрен во множество передовых инструментов для 3D моделирования, включая Autodesk Maya, Blender, 3ds Max, Cinema 4D, SolidWorks, и другие. Вы можете выбрать задачу в любой части проекта: тестирование Radeon ProRender, DevOps, создание сцен для демо и тестирования, разработка и тестирование веб-сервисов проекта.

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

Аннотация

Проект посвящен разработке системы фотореалистичного рендеринга. Radeon ProRender это open-source проект, использующий технологии Path Tracing для получения физически-корректного освещения и рендеринга материалов. Проект подразделяется на:

  • Radeon ProRender SDK
  • Radeon Image Filters
  • Radeon Machine Learning
  • RadeonRays
  • Radeon ProRender Plug-ins
  • USD Hydra delegate

В рамках проекта вы сможете поучаствовать в разработке данных компонентов системы в разных ролях.

Направление 1: Quality Assurance. QA manual/automation engineer position

Команда QA предлагает вам поучаствовать в тестировании проекта. Требуется человек с навыками программирования на Python и знанием основ обеспечения качества. Также кандидат должен быть коммуникабельным и иметь критическое мышление.

Команда QA тестирует выпускаемые продукты и документирует найденные проблемы. Кроме того, она предоставляет заказчикам сводки по состоянию продукта с определенной периодичностью и во время крупных релизов.

В ваши задачи будет входить написание и автоматизация различных сценариев использования на языке Python, тестирование новой функциональности, тестирование веб-сервисов и написание отчетных материалов.

Примеры задач:

  • Написание тестовых сценариев
  • Автоматизация тестовых сценариев
  • Мануальное тестирование
  • Написание отчетов для заказчиков
  • Актуализация автоматизированных тестов

При выборе данного направления вы получите

  • Навыки ручного и автоматизированного тестирования
  • Навыки работы с инструментами 3D моделирования и Radeon ProRender - Навыки написания тестовых сценариев
  • Навыки работы с различными инструментами для тестирования
  • Навыки работы с Jenkins
  • Умение грамотно составлять отчеты о найденных ошибках
  • Умение грамотно составлять официальные документы
  • Опыт развертки тестирования с нуля
  • Знания о фотореалистичном рендеринге
  • Умение грамотно ставить задачи
  • Умение понятно изъяснятся

Стек технологий:

  1. Python
  2. Visual Studio
  3. Git
  4. Jenkins
  5. Maya, Blender, Inventor, SolidWorks
  6. JIRA

Пререквизиты

  1. Уверенное знание Python, Git
  2. Знание фундаментальных основ тестирования
  3. Базовое понимание принципов работы движков для рендеринга
  4. Будут полезны опыт работы с Maya, Blender, Inventor, SolidWorks
  5. Приветствуется опыт тестирования Web-приложений

Направление 2: DevOps. DevOps engineer position.

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

Примеры задач

  • Написание и поддержка Jenkins pipeline-сценариев
  • Совершенствование системы автоматизированного тестирования
  • Совершенствование системы построения отчетов
  • Автоматизация и поддержка различных продуктов проекта
  • Автоматизация тестовых сценариев
  • Развертывание и поддержка сервисов проекта
  • Настройка и поддержка инфраструктуры

При выборе данного направления вы получите

  • Опыт работы в команде по Scrum
  • Познакомитесь с технологиями Jenkins, Zabbix, Gitlab и др.
  • Усовершенствуете навыки программирования (Python, Groovy, etc) - А также навыки работы с nginx, docker, git, svn, и т.д.

Стек технологий

  1. Python, Groovy, Java.
  2. Навыки работы windows/linux/macos
  3. Nginx, docker, git, svn
  4. Jenkins, Zabbix, Gitlab
  5. JIRA

Пререквизиты

  1. Базовые знания одно из языков программирования (Python, Groovy, Java).
  2. Навыки работы с Windows/Linux/MacOS
  3. Базовые навыки работы с Nginx, docker, git, svn
  4. Приветствуется опыт работы с Jenkins, Zabbix, Gitlab

Направление 3: Web-разработка. Backend/Frontend developer position.

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

Примеры задач

  • Разработка backend и frontend частей приложений
  • Исправление багов
  • Создание и поддержка структуры баз данных
  • Проведение демо приложений

При выборе данного направления вы получите

  • Опыт работы в команде по Scrum
  • Опыт работы с Django, Flask / VueJS (в зависимости от проекта)
  • Опыт работы с СУБД PostreSQL/MongoDB/Redis (в зависимости от проекта)

Стек технологий

  1. Django, Flask
  2. VueJS
  3. PostreSQL, MongoDB, Redis,
  4. RabbitMQ, Celery
  5. Nginx, docker, git
  6. JIRA

Пререквизиты

  1. Знание одного из python веб-фреймворков (Django, Flask)
  2. Знание VueJS
  3. Опыт работы с базами данных (PostgreSQL, MongoDB, Redis)
  4. Приветствуются навыки работы с RabbitMQ, Celery
  5. Базовые навыки работы с Nginx, docker, git

Направление 4: 3D моделирование. 3D Artist position.

В проекте создается собственная библиотека материалов для Radeon ProRender рендер клиента и демо сцены и видеоролики, которые мы используем для презентации компании и её продуктов.

На данный момент предлагаются следующие позиции в данном направлении:

  1. 3D Environment Artist
    • Создание окружения в таких программах как Blender, Maya, UE4 или же готовность их освоить
    • Настройка корректного освещения в сцене
  2. 3D Prop Artist
    • Создание low-poly и high-poly моделей с корректной топологией
    • Моделирование растительности, ткани
  3. Animator
    • Анимация сцен в Maya, Blender, UE4
    • Режиссура камеры
  4. Shader Writer / PBR Material Specialist
    • Создание шейдеров на HLSL или других языках написания шейдеров
    • Создание шейдр эффектов (toon-контур, гаусовое размытие, cel-shading, управление цветом)
  5. Renderer Researcher
    • Настройка сцен в различных PBR рендер-клиентах
    • Помощь команде QA в оценке результатов

При выборе данного направления вы получите

  1. 3D Environment Artist
    • Понимание общих принципов создания хардсерфейс, тканей и растительности
    • Освоите инструменты оптимизации окружения в UE4
    • Умение находить баланс между оптимизацией и детализацией сцены
    • Умение грамотно разбивать сложные сцены на составные компоненты и освоить переиспользование материалов
  2. 3D Prop Artist
    • Понимание принципов PBR текстурирования
    • Навыки использования Substance Painter, Photoshop, Substance Designer
    • Опыт работы с пакетами Blender, Maya, Zbrush, Marvelous
    • Умение работать в разных стилистиках
    • Понимание особенностей UV развертки
  3. Animator
    • Опыт работы с анимированием тканей, сложных механизмов
    • Умение грамотно переносить анимацию из одной программы в другую
    • Умение реалистично воссоздавать различные анимационные процессы
    • Опыт работы с UE Metahuman
  4. Shader Writer / PBR Material Specialist
    • Понимание нодового подхода в создании шейдеров
    • Опыт работы с Substance Designer, MaterialX
    • Понимание архитектуры и процессов GPU
  5. Renderer Researcher
    • Понимание технической стороны процесса рендеринга
    • Понимание принципов работы и использования различных источников света
    • Понимание взаимосвязи отдельных компонентов настроек сцены с производительностью рендера

Стек технологий

  1. 3D Environment Artist
    • UE4, Blender, Maya
    • Blueprints
    • Substance Designer
  2. 3D Prop Artist
    • Blender, Maya
    • ZBrush
    • Marvelous
    • Substance Painter, Substance Designer
    • Photoshop
  3. Animator
    • UE4, Blender, Maya
    • UE Metahuman
  4. Shader Writer / PBR Material Specialist
    • HLSL
    • Substance Designer, MaterialX
    • UE4, Blender
  5. Renderer Researcher
    • Blender, Maya, UE4
    • Arnold, Redshift, VRay и другие движки для рендеринга

Пререквизиты

  1. 3D Environment Artist
    • Опыт работы с Blender, Maya, UE4 или же готовность их освоить
    • Понимание общих принципов создания хардсерфейс, тканей и растительности - Понимание принципов PBR
    • Умение и готовность адаптироваться под особенности тендера
  2. 3D Prop Artist
    • Опыт работы с Blender, Maya, Substance Painter, Photoshop или же готовность их освоить
    • Понимание особенностей UV развертки
    • Опыт создания лоуполи и хайполи моделей с корректной топологией - Будут полезны навыки работы с ZBrush, Marvelous
    • Коммуникабельность, умение работать в команде
  3. Animator
    • Опыт работы с Blender, Maya, UE4 или же готовность их освоить
    • Знание базовых принципов и подходов в анимации
    • Приветствуется опыт в анимации тканей и механизмов
  4. Shader Writer / PBR Material Specialist
    • Знание HLSL или других языков написания шейдеров
    • Опыт создания шейдеров в UE4, Blender
    • Понимание принципов PBR
    • Желательно понимание архитектуры и процессов GPU
  5. Renderer Researcher
    • Понимания технической стороны процесса рендеринга
    • Понимание принципов работы и использования различных источников света - Понимание взаимосвязи отдельных компонентов настроек сцены с
      производительностью рендера

Предварительный перечень курсов

  1. Направление 1. Quality Assurance
    • Тестирование ПО
    • Тест-дизайн
    • 3D визуализация
    • Программирование на Python
    • Автоматизированное тестирование на Python
    • Тайм-менеджмент
  2. Направление 2. DevOps
    • Жизненный цикл разработки программного обеспечения
    • Базовые знания о тестировании ПО
    • 3D визуализация
    • Программирование на Python\Java
    • Автоматизированное тестирование на Python
    • Тайм-менеджмент
  3. Направление 3. Web-разработка
    • Жизненный цикл разработки программного обеспечения
    • Базы данных (SQL\NoSQL)
    • Программирование на Python
    • Программирование с использованием Django\Flask
    • Тайм-менеджмент
  4. Направление 4. 3D моделирование
    • Процедурные и параметрические материалы - Substance Designer, Blender (Substance Academy)
    • Принципы Physical Based Rendering - материалы, свет
    • Моделирование и текстурирование для игровых движков (“Using Trim Sheets to Build Complicated Assets Quickly”)
    • Методы трехмерного моделирования
    • Дизайн компьютерных игр
    • Виртуальная и дополненная реальность

Кем станет студент по завершению магистратуры

В зависимости от выполняемых задач внутри проекта выпускник может стать:

− QA manual engineer − QA automation engineer − DevOps engineer − Backend developer − Frontend developer
− 3D artist