{"id":4859,"title":"\u0422\u0435\u0441\u0442 \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u0430\u043a\u0442\u043e\u0432: vc.ru \u0432 \u0432\u0430\u0448\u0438\u0445 \u0440\u0443\u043a\u0430\u0445","url":"\/redirect?component=advertising&id=4859&url=https:\/\/vc.ru\/special\/bettervc&hash=06e04557a2c39e6c33fa846ba405896b7fed5804f421a1db543b59166c87d7da","isPaidAndBannersEnabled":false}
Luxoft

Как программисту пройти интервью С++ в автомобильном секторе

Архитектор автомобильного ПО Luxoft Игорь Бобровников рассказал, к каким вопросам готовиться и что почитать перед собеседованием.

Технологии программирования, которые ранее находили применение в серверных решениях, интернете вещей и даже геймдeве теперь крайне востребованы и в разработке автомобильного ПО.

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

Игорь Бобровников
Архитектор автомобильного ПО

В каких проектах используют С++

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

Усложнение программного обеспечение требует новых, более эффективных методологий, самых совершенных инструментов и развитых библиотек разработки.

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

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

В реализации проекта мы руководствуемся самыми современными стандартами разработки автомобильного ПО – AUTOSAR Adaptive Platform. Это означает, что базовой операционной системой является Linux, а многопоточный код пишется на С++ с использованием как специализированных библиотек для создания автомобильного ПО, так и широко известных open-source библиотек.

О структуре собеседования

Техническое интервью состоит из серии теоретических вопросов и практических заданий на следующие темы:

  • Расширения С++ 14
  • Классы в С++
  • Шаблоны данных в STL
  • Аллокация памяти и способы инициализации данных
  • Многопоточность STL-синхронизация и передача данных между потоками
  • Шаблоны проектирования
  • Немного о Git, UML и процессах разработки

Разработчик может раскрыть свои знания и опыт наиболее полно именно в написании кода, поэтому в процессе интервью используется веб-приложение для совместного редактирования кода.

Приветствуется, если кандидат задаёт дополнительные вопросы и готов обсудить различные альтернативы реализации, сравнивая их преимущества и недостатки.

Все наши проекты требуют уверенного владения английским языком, поэтому один из вопросов обсуждается на английском.

Как подготовиться к интервью?

Очевидно, что не всегда текущий проект, в котором задействован кандидат, использует все те разделы С++, которые будут актуальны для собеседования.

Для того чтобы чувствовать себя уверенно во время технического интервью, я бы порекомендовал тщательно изучить материалы, изложенные в следующих книгах:

  • Скотт Мейерс «Эффективный и современный С++: 42 специальные рекомендации по использованию C++11 и C++14»
  • Энтони Уильямс «Параллельное программирование на С++ в действии. Практика разработки многопоточных программ»
  • Курт Гантерот «Оптимизация программ на C++»

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

Хочу обратить внимание на то, что перечисленные книги соответствуют достаточно высокому уровню владения С++, то есть предполагается, эти книги — далеко не первые в списке прочитанных и что вы уже являетесь обладателем достаточно обширных знаний и практических навыков.

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

Ещё одним большим преимуществом будет наличие знаний и опыта в использовании различных open-source библиотек, фреймворков, протоколов, таких как Boost, Asio, POCO, Protobuf, gRPC, MQTT и подобных.

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

Верьте в себя и всё получится, удачи в прохождении интервью!

Вакансии для С++ разработчиков в нашу команду по ссылке.

{ "author_name": "Luxoft", "author_type": "editor", "tags": [], "comments": 18, "likes": 0, "favorites": 16, "is_advertisement": false, "subsite_label": "luxoft", "id": 262130, "is_wide": true, "is_ugc": false, "date": "Wed, 23 Jun 2021 11:58:29 +0300", "is_special": false }
0
18 комментариев
Популярные
По порядку
Написать комментарий...
12

Мне вот что интересно. 

У меня самый обычный телефон хуеми за 200 баксов. Не какой-то суперпроизводительный, самый обычный. И приложения на этом телефоне тоже самые обычные, вряд ли писанные на плюсах или ассемблерах. 

И телефон почему-то отлично справляется со своими задачами: отклик сенсора быстрый, звонить можно, музыка играет, карты не тупят.. 

Чего не скажешь про дисплейчики авто: это путешествие назад в прошлое на 10лет по скорости-удобству. 

Как так-то?

Ответить
2

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

зачем покупать готовое решение за 1000 если можно сделать своё и хуже за 10000

Ответить
1

Дисплей авто должен нормально работать при гораздо более широком диапазоне физических условий. Когда у тебя машина стояла на морозе -20 всю ночь или на +40 на солнце, дисплей должен работать сразу, как только ты завёл машину.

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

Ответить
0

Нахрена нужно это "сразу", если он лагучий, как звиздец, и пользоваться им не хочется?)

Ответить
0

Контракты, сэр.

Телефонов клепают миллион и продают миллион за месяц. Контракт на производство экранов исчерпан, можно новые экраны заказывать.

Автомобилей клепают на миллион и продают миллион 3 года. И ты обязан эти дисплеи покупать (хоть они и устарели), потому что иначе заплатишь и штрафные санкции за дисплеи, что не выкупил, и потом за новые ещё.

Производство авто не выглядит как "зашёл на рынок в Гуанчжоу, там новые экраны появились, позвонил на заводик и часть цепочки поменял".

Ответить
0

Значит, преимущество получит тот автопроизводитель, который исправит данную ситуацию 🙂
Tesla, например... ах да.

Ответить
0

Характеристики телефона хуеми за 200 баксов: Android 11, Cortex A55+A76, 2400x1080, 6/64ГБ.

Характеристики Яндекс.Авто: Android 6, Cortex A7, 1024x600, 2/16 ГБ.

Ответить
0

В автомобиле очень жёсткие требования по безопастности и диапазону физических условий. Т. Е соизмеримые по производительности экраны для телефона и автомобиля стоят совершенно разных денег. Также разработка софта и его валидация занимает сильно больше времени и когда автомобиль сходит с конвейера электроника в нем уже устарела в сравнении с телефоном

Ответить
5

Гантерота я читал. Там слово "не" в названии потеряли LOL

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

лучше почитать для начал All about memory. или вот моё: https://www.youtube.com/watch?v=XKnXq52OBb8

Ответить
2

И ни одного упоминания MISRA... А речь точно про automotive? )

Ответить
2

Интервью на знание языка программирования…

В нормальных компаниях такого не бывает.

Ответить
2

ну все просто, галера Luxoft получила контракт на софт для какой-то тачки, а писать некому 

Ответить

Комментарий удален

0

тщательно изучить материалы, изложенные в следующих книгах

зачем? вы ищете идиотиков, которые перед "экзаменом зазубрили ответы" без понимания и опыта использования?
вам не с кем обсудить только, что прочитанные вами книги? запишитесь в книжный клуб

Ответить
0

Троллинг слишком жирный, попробуйте тоньше

Ответить
0

А у меня другой вопрос, почему до сих пор, в эпоху VR, программист не может напрямую устроиться работать к вашему клиенту, а должен делить часть своих доходов с компанией аутсорсинг ?

Ответить
0

подумай ;-)

Ответить
0

откаты заказчику ? как еще объяснить, почему клиент готов платить аутсорсинговой компании 300% от стоимости необходимых разработчиков.

Ответить
0

А зачем ему тратить огромные ресурсы на формирование команды (это занимает немало времени), её обустройство, все юридические/бухгалтерские штуки, нагружать бухгалтерию дополнительной работой, выделять место в офисе и еще кучу вещей?

Ответ, на мой взгляд, кроется в задаче. Кому-то лучше с внутренней командой, а кому-то норм с подрядчиком. Нет одного правильного варианта. 

Ответить
Читать все 18 комментариев
Клиенты «Открытие Брокер» могут получить статус квалифицированного инвестора в личном кабинете и мобильном приложении

«Открытие Брокер» значительно упростил процедуру присвоения статуса квалифицированного инвестора для своих клиентов. Теперь его можно получить в личном кабинете на сайте и мобильном приложении «Открытие Брокер» в несколько кликов. Новый функционал позволит инвесторам не тратить время на поездку в офис для подачи документов и пользоваться всеми…

«Бросил вызов Nike Air Jordan за мировое господство в кроссовках»: как Канье Уэст шёл к своему миллиарду Статьи редакции

Канье Уэст много лет настаивал на том, что он миллиардер, но Forbes признал за ним этот статус только в апреле 2020 года. В 2021-м журнал оценил состояние 44-летнего рэпера в $1,8 млрд

Канье Уэст Architecturaldigest
Жизнь IT-инженера в Эстонии: тотальная русскоязычность, прекрасная экология и разрешенный огнестрел

Эстония не попадает в топы стран для эмиграции или в рейтинги самых счастливых государств мира. Но в этой стране больше тысячи стартапов, семь единорогов и очень комфортные условия жизни для иммигрантов из России. Подробнее про это расскажет Илья, python-разработчик, который в 2019 году переехал с супругой в Таллин. Он поделится, откуда здесь…

Первое фото в Таллине после приезда, 18 ноября
McDonald’s увеличила продажи в США на 25,9% благодаря рекламной кампании с корейской группой BTS Статьи редакции

Чистая прибыль в мире выросла в четыре раза за год из-за ослабления ограничений на фоне пандемии.

Как (и зачем) мы полностью переделали интернет-банк. Опыт Альфа-Банка
Исследование рынка PR 2021: больше новых инструментов, усиление и расширение влияния и значимости функции

Агентство Buman Media совместно с hh.ru провели исследование российского рынка коммуникаций. В нем приняли участие более 100 директоров и руководителей направлений по корпоративным коммуникациям, работающих в различных отраслях. Сегодня, в День PR-специалиста, мы подводим итоги года в коммуникационной отрасли.

Toyota препятствует переходу на электромобили в Конгрессе США и других странах — NYT Статьи редакции

Компания первой запустила производство «гибридов», но с тех пор отстала от конкурентов.

Как моё сообщество заработало 1,7 млн рублей на VK Donut

Больше шести лет назад Феликс Зинатуллин основал сервис таргетированной рекламы Церебро Таргет и запустил его сообщество ВКонтакте. Теперь там больше 200 тысяч маркетологов и предпринимателей. За год на донатах через VK Donut паблик заработал 1,7 млн рублей. Вот как это вышло.

Феликс Зинатуллин
Нет смысла тягаться с крупным конкурентом, «вдохновившимся» вашим стартапом? Это не так — рассказываю на личном опыте

Привет, меня зовут Роман Рабочий. Три месяца назад я опубликовал здесь статью про свой стартап — секретаря Машу. А спустя два месяца после запуска Маши вышла копия от одного крупного банка. И вчера эстафету перенял известный сотовый оператор. Рассказываю обо всем по порядку.

Porsche купила долю в немецком стартапе по разработке ракет-носителей Isar Aerospace Статьи редакции
Рендер ракеты-носителя Isar Aerospace
Что происходит в Китае: партия ограничивает b2c-сервисы без оглядки на их потери, потому что они перестали быть важными Статьи редакции

Лидеры онлайн-торговли, такси, обучения и доставки стали монополистами, мешают развитию технологий и ущемляют конкурентов и своих пользователей — теперь страну интересуют более сложные сферы. И такие компании оказались стабильнее всех во время паники.

Associated Press
null