от компании (организации): ООО Z-Wave.Me в городе (населённом пункте): Москва, Россия
в отрасли экономики "Информационные технологии, интернет, телеком" → "Программирование, разработка"
с заработной платой: от 100000 руб.
Вакансия № 16066472 добавлена в базу данных сайта Работа в Москве и Московской области (МО, Подмосковье): Пятница, 2 августа 2024 года.
Дата обновления вакансии № 16066472 на сайте Работа в Москве и Московской области (МО, Подмосковье): Суббота, 21 сентября 2024 года.
Обращаем Ваше внимание, что на момент обращения к работодателю вакансия № 16066472 может быть уже занята. Администрация сайта Работа в Москве и Московской области (МО, Подмосковье) приносит извинения за доставленные неудобства.
Требования к опыту работы:
3–6 лет
Тип занятости:
полная занятость
График работы:
полный день
Дополнительные сведения о вакансии: Разработчик ПО (умный дом)
Любите системное программирование и знаете C/C++? Приходите к нам!
В стартап Z-Wave.Me требуется Backend-разработчик C/C++.
Кто мы?
Z-Wave.Me — компания-разработчик систем автоматизации и умных домов. В основе лежит собственные программное обеспечение Z-Way. Наша цель — создание удобного и гибкого контроллера управления умным домом. Наше ПО работает и помогает людям в быту по всему миру.
Чем вы будете заниматься?
Совместно мы будем улучшать наш контроллер умного дома. Для этого вам потребуется погрузиться в специфику нашего продукта и стать экспертом в интернете вещей, познакомится с протоколом Z-Wave. Нужно будет работать бок о бок с разработчиками интерфейсной части.
Используемые средства
Большая часть нашего ПО написана на C, C++ и JavaScript (не в node.js, а в движке Goolge V8, который встроен в наше ПО). Скрипты сборки написаны на make, Python, Bash. Используются компиляторы GCC и CLANG, а так же среды ОС Linux, OpenWRT и Windows.
Необходимые знания и навыки
Вы должны прекрасно владеть языками C и C++, знать основы операционных систем, свободно пользоваться Git. Приветствуется знание языков JavaScript (ECMA5), Python, Bash.
Также нужны структурное мышление и усидчивость, умение схватывать на лету.
Приветствуется уровень английского upper intermediate и выше.
Место работы и график
Наш офис находится в Технопарке Сколково, но работаем мы в последнее время удалённо. На первых порах обязательно иметь возможность приезжать в офис. График гибкий, оцениваем по произведённому продукту. У нас отличный коллектив и команда инженеров, которые всегда помогут со сложными вопросами.
Полная занятость. Трудоустройство по договору в соответствии с ТК, белая з/п.
Тестовое задание
Чтобы быстрее понять, подходим ли мы друг другу, мы составили тестовое задание. Оно состоит из шести интересных задач. Присылайте ваше резюме с готовым заданием.
____________________________________________________
Тестовое задание
1. Что может пойти не так при работе со следующим кодом на языке C:
char * getErrorStr(int err_code) {
char * result = "unknown";
switch(err_code) {
case 1:
result="bad data";
break;
// …
}
return result;
}
2. Написать функцию, которая вычисляет значение полинома в точке. Функция используется следующим образом:
3. polynom(x, 2, A,B) возвращает A*x+B
polynom(x, 3, A, B, C) возвращает A*x^2 + B*x +C
polynom(x, 4, A, B, C, D) возвращает A*x^3 + B*x^2 + C*x + D
и т.д.
4. Как запретить создание объекта класса? Как обеспечить то, чтобы было возможно создавать только один объект заданного класса. Написать пример на C++.
5. В произвольном проекте используются функции catchRes() и releaseRes() для захвата и освобождения некоторого ценного единичного системного ресурса. Написать такую "надстройку" C++ над этими функциями чтобы захват ресурса мог быть произведен в начале функции одной строчкой, а освобождение ресурса происходило при выходе из функции без каких-либо дополнительных действий. Обеспечить потокозащищенность (любой известный примитив синхронизации).
6. Написать класс для представления дробного числа в виде числителя и знаменателя. Написать операторы сложения/вычитания/умножения/сравнения для таких чисел. Следить за тем, чтобы дробь всегда имела оптимальное представление в числителе и знаменателе (например не 6/8, а 3/4). Предусмотреть метод (конструктор), находящий ближайшее дробное число к иррациональному, представленному в виде числа с плавающей точкой.
7. Написать функцию вычисления синуса double sin() для чисел из предыдущей задачи, используя ряд и как можно более позднее приведение к числам с плавающей точкой.
Откликнуться на эту вакансию: Разработчик ПО (умный дом)
Предыдущая вакансия:
Вакансия № 16066452 на должность Руководитель проектов от компании ООО Сибинжиниринг в городе (населенном пункте) Москва