Тестовые задания для соискателей


Здесь вы можете ознакомиться с тестовыми заданиями. Нам будет удобнее рассмотреть Вашу кандидатуру, если вы отправите выполненные задания через форму анкеты соискателя.
Вакансия Программист клиентской части (+тестовое задание)
На постоянную работу требуется программист клиентской части игр.

Требования:
  • знание хотя бы одного из языков программирования
  • умение разбираться в чужом коде
  • стремление к профессиональному развитию
  • способность работать в команде
Условия:
  • оформление по ТК,
  • молодой коллектив
  • команда единомышленников и трудоголиков
  • комфортабельный офис
Тестовое задание

Необходимо разработать интерфейс небольшой игры - слот машины. Нужно сделать максимально похоже или лучше прикрепленного приложения slotMachine.swf (скачать архив для задания). Смотреть в браузере или через standalone-плеер версии 10.1 и выше.

Подробное описание работы приложения: при старте в центре экрана присутствует кнопка. По ее нажатию открывается диалог слот машины. Верхняя плашка показывает сколько дней в подряд вы заходили в приложение, в тестовом здании этот день выбирать случайным образом. 5ый день особенный, и он показывается по другому. При старте у игрока есть 3 попытки, он может увеличить их количество с помощью кнопки добавить. Добавление должно производится только через алерт подтверждения. Если попыток 0, ручку нажать нельзя. Внизу под слот машиной располагается область совета или последняя выпавшая комбинации. После нажатия ручки совет рекомендует игроку ознакомится с доступными комбинациями. Как только барабаны остановились в этой области появляется выпавшая комбинация, в виде иконки и количества совпадений. Если все элементы разные выводится сообщение нет совпадений. Кнопка "Таблица призов" должна открывать одноименный диалог. Кнопки в виде крестиков должны закрывать диалоги, до стартовой кнопки.

К заданию прилагается архив assets.zip - набор графики в векторном формате. Используется 2 типа файлов .fla (открывать Adobe Flash Professional CS6 и выше) и .ai (Adobe Illustraror CS6 и выше). Графика исчерпывающая, не требуется ничего рисовать, только сформировать библиотеку в зависимости от способа построения приложения. Разработку приложения настоятельно рекомендуется проводить в одном из следующих редакторов: IntelliJ IDEA, FlashDevelop или FlashBuilder. Использовать чистый ActionScript.

Скачать архив assets.zip
Вакансия 3D художник (3D аниматор)
Требования:
Обязательно:
  • Уверенное знание одной из программ: 3ds Max, MAYA.
  • Базовые знания программ: 3ds Max, MAYA, Zbrush, Photoshop.
  • Профессиональное знание одной из отраслей: скульптурирование, низкополигональное моделирование, оснастка персонажей (сетап), анимация, эффекты.
  • Наличие портфолио и резюме.
  • Опыт работы в CG.
Желательно:
  • Опыт работы в игровой индустрии.
  • Работы в галереях вроде render.ru, deviantart.com, artstation.com, gameartisans.org и т.д.
  • Художественное образование или сертификаты об окончании профильных курсов.
Обязанности:
  • 3d художник: Создание моделей персонажей и зданий по концептам. Подготовка к оснастке и текстурированию.
  • 3d аниматор: Анимирование персонажей и окружения.
Условия работы и компенсации:
  • Дружный коллектив единомышленников и трудоголиков.
  • Перспектива карьерного и профессионального роста.
  • Комфортабельный офис.
  • Оформление по ТК.
  • Стабильная и достойная заработная плата.

Тестовое задание профильное, после просмотра портфолио либо после результатов собеседования.
Вакансия Тестировщик
Требования:
Обязательно:
  • Знание иностранного языка: Английский;
  • Понимание принципов организации разработки ПО;
  • Знание инструментов, методов, средств тестирования;
  • Общая техническая грамотность;
  • Знание соц. сетей (vk, ok, mm, fb);
  • Увлечение играми;
  • Ответственность, скрупулезность, аккуратность, усидчивость;
  • Легкая обучаемость;
  • Здоровое чувство юмора.
Желательно:
  • Опыт работы с платформами iOS/Android;
  • Хорошее знание письменного и устного русского языка;
  • Стрессоустойчивость;
Обязанности:
  • Тестирование социальных игр и поддержка их русско- и англоязычных пользователей;
  • Тестирование мобильных игр и поддержка их русско- и англоязычных пользователей;
  • Взаимодействие с командой разработчиков;
  • Разработка процедур тестирования (тест-план и кейсы);
  • Составление и написание тестовой и иной документации;
  • Обнаружение и описание ошибок;
  • Проверка исправлений;
  • Разбор жалоб пользователей, самостоятельное выявление причин;
Условия:
  • Оформление по ТК.
  • Молодой коллектив единомышленников и трудоголиков.
  • Дружеская неформальная атмосфера.
  • Комфортабельный офис.
  • Стабильная и достойная заработная плата.
Для трудоустройства необходимо выполнить тестовое задание и пройти собеседование.
Тестовое задание для программиста
Требования:
Обязательно:
  • Знание нескольких языков программирования.
  • Стремление к профессиональному развитию.
  • Способность работать в команде.
  • Ответственность, целеустремленность.
Желательно:
  • Опыт работы в игровой индустрии.
  • Профильное образование.
  • Понимание основ сетевого программирования под linux.
Условия:
  • Оформление по ТК.
  • Молодой коллектив единомышленников и трудоголиков.
  • Дружеская неформальная атмосфера.
  • Высокая заработная плата.
Тестовое задание

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

Язык ocaml.
ocaml.org - сам язык и стандартная скупая документация. Сам язык есть практически во всех дистрибутивах linux.
http://courses.cms.caltech.edu/cs134/cs134b/book.pdf - очень исчерпывающая книга.

Необходимо написать небольшой сервер, используя библиотеку LWT http://ocsigen.org/lwt.
PVP игра "крестики нолики".
В качестве клиента используем обычные telnet.

Пример работы:
====================
telnet localhost 1889 (клиент 1)
> START (запрос на начало новой игры)
> ( ждем начала игры)

telnet localhost 1889 (клиент 2)
> START (запрос на начало новой игры)
> (ждем начала игры)

== client 1 ==
> game started - you turn (ответ сервера)

== client 2 ==
> game started - wait opponent turn (ответ сервера)

== client 1 ==
> TURN 0 0 (команда с ходом)
> wait opponent turn (ответ севера)

== client 2 ==
> opponent turn 0 0 (ответ сервера)
> TURN 1 1 (команда на ход)
> wait opponent turn

<=====================

Т.е. сервер после запроса от первого клиента, ставит его в очередь на ожидание соперника (так как в текущий момент нет свободных соперников). Когда приходит команда START от второго клиента, игра начинается.
Далее они ходят по очереди. Сервер должен определить ситуацию ничьей или победы и написать клиентам об этом.
Made on
Tilda