Описание должности
Эта роль играет ключевую роль в разработке и улучшении Emergence SDK в Unity. Вы будете тесно сотрудничать с руководителем продукта и командой разработчиков для проектирования, реализации и доработки новых функций в соответствии с нашей продуктовой стратегией. Ваши обязанности охватят весь жизненный цикл разработки программного обеспечения, включая, но не ограничиваясь, разработку функций, тщательное тестирование, обновление документации и устранение ошибок. Кроме того, вы будете участвовать в создании увлекательного контента и проектировании интуитивно понятных компонентов пользовательского интерфейса непосредственно в среде Unity. Важным аспектом является бесшовная интеграция SDK на различных платформах и приложениях, что требует координации с разработчиками Unreal и Back-End для обеспечения кросс-платформенной совместимости и производительности.
Ключевые обязанности
- Разработка и поддержка новых функций для плагина Unity Emergence SDK, обеспечивая оптимальную производительность, стабильность и совместимость на различных платформах и приложениях.
- Проведение тщательного тестирования компонентов SDK для выявления и устранения ошибок, гарантируя высокое качество пользовательского опыта и надежную функциональность.
- Обновление и улучшение документации для разработчиков, предоставляя четкие инструкции по использованию SDK, устранению неполадок и лучшим практикам интеграции.
- Сотрудничество с межфункциональными командами, включая разработчиков Unreal и Back-End, для обеспечения бесшовной интеграции SDK и соответствия общим целям продукта.
- Проектирование и реализация компонентов пользовательского интерфейса в Unity, улучшающих удобство использования и соответствующих визуальному стилю продукта.
- Участие в создании контентных активов, поддерживающих функциональность SDK, обеспечивая их соответствие техническим и творческим требованиям.
- Участие в код-ревью и сессиях обмена знаниями для поддержания качества кода и развития культуры совместной разработки.
- Отслеживание новых технологий и тенденций отрасли для выявления возможностей инноваций и улучшений в рамках SDK.
Требования к должности
- Подтвержденный опыт разработки в Unity с сильной базой в создании и поддержке SDK.
- Отличные навыки программирования на C# и глубокое понимание архитектуры Unity и лучших практик.
- Способность работать как самостоятельно, так и в команде, с фокусом на предоставление качественного кода в сжатые сроки.
- Сильные коммуникативные навыки для эффективного сотрудничества с менеджерами продукта, дизайнерами и другими разработчиками.
- Владение системами контроля версий (например, Git) для управления изменениями кода и ведения истории проекта.
- Опыт работы с методологиями и инструментами тестирования программного обеспечения (например, модульное тестирование, интеграционное тестирование) для обеспечения надежности и производительности.
- Знание лучших практик документации и способность создавать четкую, лаконичную и удобную техническую документацию.
- Внимание к деталям и навыки решения проблем для отладки сложных вопросов и оптимизации функциональности SDK.
Технические требования
- Владение Unity 3D и его экосистемой, включая управление активами, скриптинг и разработку плагинов.
- Опыт кросс-платформенной разработки, обеспечивающий совместимость SDK с iOS, Android и настольными системами.
- Понимание жизненного цикла разработки программного обеспечения (SDLC) и гибких методологий для итеративной разработки и поставки.
- Способность работать со сторонними инструментами и API для интеграции функций SDK с внешними сервисами и платформами.
- Знание методов оптимизации производительности для повышения эффективности SDK и снижения потребления ресурсов.
- Опыт работы с облачными средами разработки и CI/CD-конвейерами для оптимизации рабочих процессов и развертывания.
Дополнительные квалификации
- Знакомство с технологиями Web3 (например, блокчейн, смарт-контракты) будет плюсом, но не является обязательным.
- Стремление к непрерывному обучению и активный подход к освоению новых инструментов и технологий.
- Сильные навыки командной работы и сотрудничества, способность вносить вклад в динамичную и быструю среду разработки.
- Опыт работы с принципами проектирования пользовательского опыта (UX) для создания интуитивно понятных и удобных компонентов интерфейса.
- Способность документировать технические процессы и делиться знаниями с членами команды для обеспечения согласованности и масштабируемости.
- Отличные навыки управления временем для балансировки нескольких задач и эффективного достижения этапов проекта.