1. Команда backend-разработчиков 1.1 Разработчики веб-частей платформы - знание устройства операционных систем, механизмов IPC; - знание технологий: базы данных (желателен опыт в разных областях, будь то SQL – самое главное, и NoSQL - плюсом), ORM, драйверы БД, профилирование, серверные языки: Python, Node; - опыт с Redis, ElasticSearch или другими хранилищами и поисковыми движками; - знание принципов архитектурного стиля REST; - навыки разработки через тестирование (BDD); - умение работать с системой контроля версий git; - английский язык на уровне чтения минимум. 1.2 Разработчики алгоритмической части и всех задачи, требующих вычислительных ресурсов на сервере - математическая подготовка, владение основными алгоритмами и понимание базовых структур данных; - опыт в низкоуровневом программировании – понимание языка ассемблера и принципов низкоуровневой оптимизации; - навыки параллельного программирования: CUDA, вычислительные шейдеры, OpenCL и др., решения AMD будут плюсом; - понимание основных параллельных алгоритмов: Map, Reduce, Scan и т.д. - практический опыт С++; - навыки в 3D-графике – хороший плюс; - умение работать с системой контроля версий git; - понимание инструкций SIMD процессоров (SSE, AVX) и инструментов анализа SIMD-кода - большой плюс. 2. Архитектор баз данных и хранилищ Исполнитель должен будет выполнять научно-исследовательскую, аналитическую, архитектурную работу с БД. Требования: - практический опыт с SQL базами данных: Postgres, Oracle (оптимизация запросов, работа с ORM, профилирование, бэкапы, PL/SQL) - практический опыт с NoSQL-хранилищами - должен быть знаком с Big Data и стеком сопутствующих технологий; - навыки в области data mining, машинного обучения и соответствующая математическая подготовка в анализе данных. Как минимум, нечеткая логика, корреляционный и регрессионный анализ должны быть на уровне понимания и применения; - умение работать с системой контроля версий git - владение методами прогнозирования; - навыки по визуализации данных; - плюс – навыки работы с экспертными системами. 3. Команда frontend-разработчиков 3.1 Дизайнеры - владение пакетом программ Adobe: Photoshop, Illustrator, альтернатива – Corel; - кандидат должен ориентироваться в современных направлениях и тенденциях дизайна сайтов и мобильных приложений; - HTML, CSS, SVG – практический опыт; - начальные навыки верстки - умение рисовать иконки, иллюстрации, баннеры; - умение создавать шрифты с иконками; - знания принципов построения UI, опыт в UX; - умение рисовать не на компьютере. 3.2 Верстальщики - практический опыт работы с шаблонизатором Jade; - кроссбраузерность - корректное отображение верстки в браузерах; - соответствие верстки макету - отступы, шрифты, цвета, все должно соответствовать работе дизайнера; - навыки работы с препроцессорами и фреймоврками: Gulp, SASS, Bourbon, Neat, Susy; - HTML5, CSS3, SVG – уверенные знания и практический опыт; - знания JS – большой плюс. 3.3 JS-разработчики (неигровая разработка) Подкоманда будет заниматься работой с JS и фреймворками, реализовывать взаимодействие с серверной частью, программировать логику для шаблонов, делать dashboard и т.д. Требования: - разбираетесь в JS; - работы с СКВ git и GitHub; - солидное понимание WebSockets, AJAX; - практический опыт с фреймоворками: Angular, Backbone, Ember – можно не все сразу, а также другие идут плюсом; - опыт с React и Flux – плюс; - знания ES2015 (Babel.js); - знания по D3.js; - большой плюс – знания Node, Gulp и опыт серверной разработки. 3.4 Разработчики игр (браузерных) - математическая подготовка и знание алгоритмов в области 2D и 3D графики и анимации; - опыт программирования с THREE.js или Babylon.js, а также опыт с «чистым» WebGL и canvas в браузере; - понимание шейдеров; - опыт работы с игровыми JS-движками: Pixi, Phasor. 4. Специалист по безопасности/системный администратор - установка и настройка ОС Windows, Linux, Mac OS; - настройка и администрирование веб-серверов: nginx, iis; - настройка и администрирование CDN-служб; - настройка и администрирование систем акселерации и кеширования: Varnish; - практический опыт в создании сетевой инфраструктуры, знание сетевых протоколов; - настройка сервера баз данных; - установка и настройка аппаратного обеспечения, формирование требований к новому оборудованию; - установка и настройка системы контроля версий на базе git; - мониторинг состояния серверов; - ответственность за информационную безопасность внутри организации.