Разработчик веб-интерфейса умного дома

Москва
Полный день
ООО Умные Системы

В стартап Сколково ООО “Умные Системы” требуется разработчик веб-интерфейса умного дома.


Кто мы?

Z-Wave.Me — компания-разработчик систем автоматизации и умных домов. В основе лежит собственные программное обеспечение Z-Way. Наша цель — создание удобного и гибкого контроллера управления умным домом. Наше ПО работает и помогает людям в быту по всему миру.


Чем вы будете заниматься?

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


Также вы будете создавать различные интерфейсы для наших дополнительных облачных сервисов.


Используемые средства

Большая часть наших интерфейсов основана на AngularJS. На стороне сервера мы используем чистый JavaScript (Goolge V8; не node.js) со своими надстройками. В перспективе мы готовы перенести интерфейсы на более прогрессивный фрэймворк, но делать это нужно параллельно с поддержкой текущего.


Необходимые знания и навыки

Вы должны прекрасно владеть языком JavaScript, фреймворком AngularJS, вёрсткой страниц HTML с применением CSS/SASS, знать DOM и протокол HTTP, владеть Grunt, свободно пользоваться Git. Приветствуется знание других фреймворков (React, Angular, Vue), языков Python, Bash.


Также нужны структурное мышление и усидчивость, умение схватывать на лету.


Приветствуется уровень английского upper intermediate и выше.


Место работы и график

Наш офис находится в Технопарке Сколково, но работаем мы в последнее время удалённо. На первых порах обязательно иметь возможность приезжать в офис. График гибкий, оцениваем по произведённому продукту. У нас отличный коллектив и команда инженеров, которые всегда помогут со сложными вопросами.


Полная занятость. Трудоустройство по договору в соответствии с ТК, белая з/п.


Тестовое задание

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


Тестовое задание


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

1. [5 мин] Напишите программу, возвращающую массив из первых 5 целых чисел, для которых сумма факториалов составляющих число цифр равна самому числу.


2. [3 мин] Что не так с приведённым ниже кодом. Предложите исправление.
for (var i = 1; i <= 5; i++) {
setTimeout(function() {
myFunc(i);
}, 1000*i);
}


3. [5 мин] Сделайте так, чтобы следующий код работал:
> a = [0, 1, 2, 3, 5]
< (5) [0, 1, 2, 3, 5]
> a.sum()
< 11


4. [5 мин] Представьте, что в офисе предстоит переезд из одной комнаты в другую бухгалтерии организации. На одном из компьютеров крутится 1С. Этот компьютер ни в коем случае нельзя выключать. Компьютер подключен в пилот (на 5 штепселей), который подключен в розетку. Длины провода пилота недостаточно для переноса в другую комнату. В Вашем распоряжении любые технические средства и провода. Требуется перенести компьютер, не выключая его. Сразу подумайте о двух опасностях, которых необходимо избежать.


5. [5 мин] В JavaScript вы не заботитесь об освобождении памяти. Опишите, кто это делает за вас и как этот кто-то понимает, когда память свободна?


6. [3 мин] Опишите порядок действий браузера при открытии страницы сайта в Интернете.


7. [10 мин] Установите наш сервер и создайте в нём 5 демо-устройств: Settings->Apps->Local Apps->Dummy Device->Switch и Dimmer. Посмотрите как работает интерфейс. Ссылки для скачивания:
Raspberry Pi: https://z-wave.me/z-way/download-z-way/
Windows: http://storage.z-wave.me/z-way-server/z-way-server-Windows-v3.1.1.msi
Ubuntu: http://storage.z-wave.me/z-way-server/z-way-server-Ubuntu-v3.1.1.tgz


8. [15 мин] Для удобства замените папку htdocs/smarthome на наш разработческий репозиторий https://github.com/Z-Wave-Me/zwave-smarthome/tree/dev. Изучите наш интерфейс и расскажите, что бы вы в нём изменили. Ответ нужно дать:
- с точки зрения UI/UX (красоты и удобства)
- с точки зрения оптимизации работы интерфейса


9. [3 мин] В одном из вопросов автор случайно написал 5 вместо 4. В каком? Обоснуйте, почему это существенно?