Unity3D фрилансер под мобильное приложение. 6+ мес работы
(вакансия в архиве)

27 апреля 2018

Уровень зарплаты:
з.п. не указана
Требуемый опыт работы:
Не указан

Вакансия: Unity3D фрилансер под мобильное приложение. 6+ мес работы

Требуется Unity3D разработчик под мобильное приложение в удалённую проектную команду.

Текущее приложение разрабатывается для Android на Unity3D и относится к сегменту приложений для повышения продуктивности пользователей. Целевая аудитория пользователи Windows ПК.
Работа над приложением ведётся уже несколько лет, имеется отлаженная удалённая команда. 
Приложение сходно по функционалу с Macbook touch bar и клавиатурой Лебедева Оптимус Максимус.

Приложение представляет собой софтварный эмулятор клавиатуры, подключаемый к Windows ПК. На экране Андроид устройства отображаются раскладки (кнопки) под приложения запускаемые на Windows ПК. 
Раскладка представляет из себя JSON с перечнем параметров. Значения параметров задаются как внутри JSON так и поставляются из Windows ПК по отработанному коммутационному протоколу (в протоколе ничего менять не надо). 
JSON раскладки содержит информацию для Unity о позиции кнопки в раскладке, элементах GUI для отрисовки и инструкции по обработке тапов. Unity код, в свою очередь, содержит алгоритмы обработки этих инструкций.

Для создания раскладок используется Редактор раскладок, являющйся неотъемлемой частью базисного функционала разрабатываемого приложения Андроид. В нём можно создавать раскладку перетягивая кнопки в форму и настраивать их визуальное отображение.
Редактор раскладок функционирует, но требуется много доработок и фиксов багов.

В настоящий момент есть 50 задач, объём работы оценивается в 2 месяца очень интенсивно, в дальнейшем от 5 до 20 часов в неделю.
В первую очередь нужно повысить юзабилити Редактора, во вторую, оптимизировать производительность приложения.

Примеры задач:
- добавить возможность выравнивания кнопок по одной линии при редактировании раскладки
- добавить возможность примагничивания кнопок к краям экрана при редактировании раскладки
- закешировать раскладку на стороне Unity
- изменить приоритет отрисовки GUI элементов кнопок
- добавить запрос на сохранение раскладки, если она была изменена
- доработать элемент GUI редактора, используемого для изменения размера шрифта надписи на кнопке

Обязательно:
1. Опыт разработки мобильных приложений на Unity3D (Android + iOS)
2. Опыт программирования на С#, LINQ, Unity3D не менее 5 лет
3. Понимание работы событий и делегатов
4. Строгое следование принципам ООП
5. Наличие ПК с ОС Windows (не виртуальной), стабильного Интернет соединения
6. Наличие хотя бы одного тестового Android устройства
7. Опыт работы в удалённой команде
8. Способность и желание работать автономно на протяжении продолжительных периодов (до месяца)
9. Возможность и желание участвовать в собраниях раз в две недели в выходной день
10. Готовность учитывать особенности разброса часовых зон в проектной команде (МСК+0 .. МСК-3)
11. Готовность работать ненормированные часы когда это требуется

Желательно:
1. Опыт офисной работы (чтобы понимать потребности целевой аудитории)
2. Опыт работы или разрабоки приложений для автоматизации рутинных задач
3. Наличие опыта разработки Unity приложений для iOS
4. Наличие значительно опыта работы в популярном графическом редакторе

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

Оплата возможна в RUB/USD/EUR с зачислением на банковский счёт либо перевод через платёжную систему.