Что поспрашивать на позицию SWE на тему C++?
-
- Уже с Приветом
- Posts: 11999
- Joined: 08 Sep 2006 20:07
- Location: Силиконка
Что поспрашивать на позицию SWE на тему C++?
Знаю, что многие не очень любят leetcode - style задания.
Так что, с одной стороны, слишком уж отпугнуть человека не хочется, тем более, что он вроде как "архитектор" на текущей работе называется. С другой стороны, как-то кодинг хочется проверить.
Попросили именно на тему C++ проверить.
Так что, с одной стороны, слишком уж отпугнуть человека не хочется, тем более, что он вроде как "архитектор" на текущей работе называется. С другой стороны, как-то кодинг хочется проверить.
Попросили именно на тему C++ проверить.
Мир Украине. Свободу России.
-
- Уже с Приветом
- Posts: 707
- Joined: 12 Mar 2003 22:29
- Location: Moscow->Bay Area, CA
Re: Что поспрашивать на позицию SWE на тему C++?
Попроси имплементировать std::list и всё что надо увидишь и кодирование и архитектуру.
The philosophy of one century is the common sense of the next. --Henry Ward Beecher
-
- Уже с Приветом
- Posts: 5283
- Joined: 27 Sep 2008 21:48
- Location: Moscow-Seattle-SFBA
Re: Что поспрашивать на позицию SWE на тему C++?
Класс по работе со строкой (разворот строки, изменение поняла слов, и тд). Просто и эффективно, и очень наглядно что потом ожидать в плане качества кода. Очень эффективно в формате, а теперь давай добавим ещё вот этот метод (порядок выбирать так, чтобы требовалось сделать небольшой редактор уже имеющегося кода… если конечно кандидат до этого додумается и не начнёт копи-пастить)
-
- Уже с Приветом
- Posts: 2099
- Joined: 03 Dec 2010 02:46
- Location: Intermountain West
Re: Что поспрашивать на позицию SWE на тему C++?
Я бы спросил - какого хрена вы ещё на плюсах? Алё "архитектор", на дворе 21 век!
Тут-то то и сразу всё раскроется.
Тут-то то и сразу всё раскроется.
-
- Уже с Приветом
- Posts: 31438
- Joined: 21 Nov 2004 05:12
- Location: камбуз на кампусе
Re: Что поспрашивать на позицию SWE на тему C++?
не барское это дело, кускай кодеры кодят. А архитектор идеи подаёт и общие указания. Хоть в псевдокоде. Главное чтобы алгоритмы знал и понимал
Лучше переесть, чем недоспать! © Обратное тоже верно
-
- Уже с Приветом
- Posts: 2603
- Joined: 19 Jun 2003 20:22
- Location: USA
Re: Что поспрашивать на позицию SWE на тему C++?
вы его предупредите, что будут код-задачки. Пусть подготовится, вспомнит школьные олимпиады.M. Ridcully wrote: ↑30 Aug 2021 20:43 Знаю, что многие не очень любят leetcode - style задания.
Так что, с одной стороны, слишком уж отпугнуть человека не хочется, тем более, что он вроде как "архитектор" на текущей работе называется. С другой стороны, как-то кодинг хочется проверить.
Попросили именно на тему C++ проверить.
Спросите как вызов виртуального метода работает.
Каков смысл sizeof - например при sizeof arrayVar - подводные камушки.
Как ошибки с написанием в чужую память искать? (типа запись за границы массива)
Как утечку памяти искать? Или невызванный delete для каких-нибудь объектов?
Ну и конечно дайте простую задачку. Посмотрите как у него логика и написание кода работает.
-
- Уже с Приветом
- Posts: 15475
- Joined: 27 Sep 2007 22:53
Re: Что поспрашивать на позицию SWE на тему C++?
А какой стандарт?M. Ridcully wrote: ↑30 Aug 2021 20:43 Знаю, что многие не очень любят leetcode - style задания.
Так что, с одной стороны, слишком уж отпугнуть человека не хочется, тем более, что он вроде как "архитектор" на текущей работе называется. С другой стороны, как-то кодинг хочется проверить.
Попросили именно на тему C++ проверить.
-
- Уже с Приветом
- Posts: 15475
- Joined: 27 Sep 2007 22:53
Re: Что поспрашивать на позицию SWE на тему C++?
Кстати классная идея, особенно в плане std:string. Как архитектор он наверняка Вам расскажет саму концепцию, для чего нужны треи (traits), как это помогает поднять уровни косвенности и нафига они вообще. Дальше можно копнуть в аллокаторы, оператор new и его формы итд.Херовимчик wrote: ↑31 Aug 2021 04:38 Класс по работе со строкой (разворот строки, изменение поняла слов, и тд). Просто и эффективно, и очень наглядно что потом ожидать в плане качества кода. Очень эффективно в формате, а теперь давай добавим ещё вот этот метод (порядок выбирать так, чтобы требовалось сделать небольшой редактор уже имеющегося кода… если конечно кандидат до этого додумается и не начнёт копи-пастить)
По аналогии со строками можно попросить набросать архитектуру класса, который бы позволял осуществлять обмен данными через различные среды доставки (pipes, tcp/ip, serial port) - в зависимости от реализации проверите частичную специализацию классов или функций-членов и можно обсудить преимужества того или иного выбора.
-
- Уже с Приветом
- Posts: 15475
- Joined: 27 Sep 2007 22:53
Re: Что поспрашивать на позицию SWE на тему C++?
А если чувак не понравится и захочете завалить - копните в сторону строковых литералов.Херовимчик wrote: ↑31 Aug 2021 04:38 Класс по работе со строкой (разворот строки, изменение поняла слов, и тд). Просто и эффективно, и очень наглядно что потом ожидать в плане качества кода. Очень эффективно в формате, а теперь давай добавим ещё вот этот метод (порядок выбирать так, чтобы требовалось сделать небольшой редактор уже имеющегося кода… если конечно кандидат до этого додумается и не начнёт копи-пастить)
-
- Уже с Приветом
- Posts: 11999
- Joined: 08 Sep 2006 20:07
- Location: Силиконка
Re: Что поспрашивать на позицию SWE на тему C++?
А это важно? Пусть будет современный. Точно не скажу - я это не для нашей группы интервьюировал. У нас C++17.
А архитектор спалился на вопросе про виртуальный деструктор. Я не шучу, решил вот спросить - молодость вспомнить. Теперь всегда буду спрашивать.
Мир Украине. Свободу России.
-
- Уже с Приветом
- Posts: 5283
- Joined: 27 Sep 2008 21:48
- Location: Moscow-Seattle-SFBA
Re: Что поспрашивать на позицию SWE на тему C++?
Архитекты нынче пошли не те… я раньше стремилась интервьюрить людей, у кого отсчёт опыта датирован раньше моей даты рождения, я думала они меня либо замочат, либо оборжут. А они почти все на какой-то фигне валятьсяM. Ridcully wrote: ↑31 Aug 2021 21:01 А архитектор спалился на вопросе про виртуальный деструктор. Я не шучу, решил вот спросить - молодость вспомнить. Теперь всегда буду спрашивать.
-
- Уже с Приветом
- Posts: 15475
- Joined: 27 Sep 2007 22:53
Re: Что поспрашивать на позицию SWE на тему C++?
Тогда концепты - самое то обсудить.
Вопрос был про полиморфный класс?M. Ridcully wrote: ↑31 Aug 2021 21:01 А архитектор спалился на вопросе про виртуальный деструктор. Я не шучу, решил вот спросить - молодость вспомнить. Теперь всегда буду спрашивать.
-
- Уже с Приветом
- Posts: 11999
- Joined: 08 Sep 2006 20:07
- Location: Силиконка
Re: Что поспрашивать на позицию SWE на тему C++?
Не, ну не настолько современный.
Они хоть в последнем GCC есть - это -std=c++20?
Вообще, задача у собеседования все-таки вполне практичная была - постараться отфильтровать потенциальный балласт, но при этом постараться не запороть полезного кандидата.
При этом таких уж толп, как в гуглобуки, к нам не ломятся, хотя компания и хорошая, так что каждый адекватный кандидат достаточно ценен.
Ага.
К слову, я его не забраковал на этом, хотя и написал feedback, что это он не ответил. Рекомендовал продолжить собеседовать. Хотя вопрос, конечно, базовый вообще-то.
Мир Украине. Свободу России.
-
- Уже с Приветом
- Posts: 11999
- Joined: 08 Sep 2006 20:07
- Location: Силиконка
Re: Что поспрашивать на позицию SWE на тему C++?
Хорошо, когда можно вот так вот "валить" любого.Херовимчик wrote: ↑31 Aug 2021 21:20Архитекты нынче пошли не те… я раньше стремилась интервьюрить людей, у кого отсчёт опыта датирован раньше моей даты рождения, я думала они меня либо замочат, либо оборжут. А они почти все на какой-то фигне валятьсяM. Ridcully wrote: ↑31 Aug 2021 21:01 А архитектор спалился на вопросе про виртуальный деструктор. Я не шучу, решил вот спросить - молодость вспомнить. Теперь всегда буду спрашивать.
Неужели к вам прям как в гуглобуки народ прет и можно лучших отбирать?
Мир Украине. Свободу России.
-
- Уже с Приветом
- Posts: 15475
- Joined: 27 Sep 2007 22:53
Re: Что поспрашивать на позицию SWE на тему C++?
Это как бы старый подход (с динамическим полиморфизмом) и его стараются не использовать, поэтому можно и запамятовать.M. Ridcully wrote: ↑01 Sep 2021 02:10Ага.
К слову, я его не забраковал на этом, хотя и написал feedback, что это он не ответил. Рекомендовал продолжить собеседовать. Хотя вопрос, конечно, базовый вообще-то.
А если еще смешать с абстрактным классом, то вообще каша образуется.
Вот например смешной вопрос: "Нужно ли в абстрактном полиморфном классе определять виртуальный деструктор?"
-
- Уже с Приветом
- Posts: 11999
- Joined: 08 Sep 2006 20:07
- Location: Силиконка
Re: Что поспрашивать на позицию SWE на тему C++?
Ну частично поэтому я и не стал человека отбраковывать. Тем более, что он довольно разумно заявил, что вообще старается деструкторы по-умолчанию использовать, где возможно, с чем я целиком согласен.Мальчик-Одуванчик wrote: ↑01 Sep 2021 02:22 Это как бы старый подход (с динамическим полиморфизмом) и его стараются не использовать, поэтому можно и запамятовать.
Но все-ж таки, из-за того, что динамический полиморфизм давно известен и обсосан - не делает его менее привлекательным. Иногда он вполне уместен.
А чего смешного? Если собираешься работать с классом полиморфно - объяви в базе виртуальный деструктор. По-моему все 100% однозначно.Мальчик-Одуванчик wrote: ↑01 Sep 2021 02:22 Вот например смешной вопрос: "Нужно ли в абстрактном полиморфном классе определять виртуальный деструктор?"
Мир Украине. Свободу России.
-
- Уже с Приветом
- Posts: 15475
- Joined: 27 Sep 2007 22:53
Re: Что поспрашивать на позицию SWE на тему C++?
В последнем должны быть, но я с ними не разобрался и в голове не уложилось.M. Ridcully wrote: ↑01 Sep 2021 02:10Не, ну не настолько современный.
Они хоть в последнем GCC есть - это -std=c++20?
Хочу выбрать время и набить руку на примерах чтобы было ясное понимание нафига козе баян.
А вот обсудить со знающим человеком было бы самое оно - тогда бы и самому польза была от интервью.
Особенно если человек позиционирует себя знатоком в разных языках, например с архитектором интересно было бы обсудить концепцию замыкания и как она выражена в разных языках программирования.
С плюсовиком с удовольствием пообщался бы о той части буста, в которой он разбирается хорошо а я не очень.
-
- Уже с Приветом
- Posts: 11999
- Joined: 08 Sep 2006 20:07
- Location: Силиконка
Re: Что поспрашивать на позицию SWE на тему C++?
Как я понимаю, по-простецки - для более адекватных сообщений об ошибках компиляции.Мальчик-Одуванчик wrote: ↑01 Sep 2021 02:33 Хочу выбрать время и набить руку на примерах чтобы было ясное понимание нафига козе баян.
Собственно на runtime behavior они не влияют.
Мир Украине. Свободу России.
-
- Уже с Приветом
- Posts: 15475
- Joined: 27 Sep 2007 22:53
Re: Что поспрашивать на позицию SWE на тему C++?
Просто тут можно привести хороший пример граничного случая - класс из одних чисто виртуальных функций и единственного пустого виртуального деструктора. То есть то, что принято называть интерфейсом. И здесь деструктор нужен только для того чтобы иметь возможность удалять производный класс по указателю на базовый. А если у нас два базовых класса - один обычный, другой - специализированный интерфейс наружу и мы наоборот, хотим запретить саму возможность удаления производного класса по указателю на интерфейс для пользователей этого интерфейса.M. Ridcully wrote: ↑01 Sep 2021 02:32 А чего смешного? Если собираешься работать с классом полиморфно - объяви в базе виртуальный деструктор. По-моему все 100% однозначно.
-
- Уже с Приветом
- Posts: 11999
- Joined: 08 Sep 2006 20:07
- Location: Силиконка
Re: Что поспрашивать на позицию SWE на тему C++?
Это не то, чтобы граничный случай.Мальчик-Одуванчик wrote: ↑01 Sep 2021 03:09 Просто тут можно привести хороший пример граничного случая - класс из одних чисто виртуальных функций и единственного пустого виртуального деструктора.
Пожалуй, это единственный 100% некривой способ использования наследования в современном C++. Это я и имею в виду, когда говорю о динамическом полиморфизме. Есть интерфейсы, а есть конкретные классы, которые их имплементируют.
Мир Украине. Свободу России.
-
- Уже с Приветом
- Posts: 5283
- Joined: 27 Sep 2008 21:48
- Location: Moscow-Seattle-SFBA
Re: Что поспрашивать на позицию SWE на тему C++?
Мы конечно и есть гуглобуки, но к нам толп особых нет (С/С++ нынче не в моде). И я особо не валю, я разочаровываюсь, когда архитектор или сильно сеньор не может осилить простую задачу за 30-40 минут, или сам себя запихивает в такой тупик, что потом без помощи вылезти не можетM. Ridcully wrote: ↑01 Sep 2021 02:16Хорошо, когда можно вот так вот "валить" любого.Херовимчик wrote: ↑31 Aug 2021 21:20Архитекты нынче пошли не те… я раньше стремилась интервьюрить людей, у кого отсчёт опыта датирован раньше моей даты рождения, я думала они меня либо замочат, либо оборжут. А они почти все на какой-то фигне валятьсяM. Ridcully wrote: ↑31 Aug 2021 21:01 А архитектор спалился на вопросе про виртуальный деструктор. Я не шучу, решил вот спросить - молодость вспомнить. Теперь всегда буду спрашивать.
Неужели к вам прям как в гуглобуки народ прет и можно лучших отбирать?
(Я всегда делаю простенькую визуализацию и даю примеры. Активно «присутствую», отвечаю на все вопросы и сразу озвучиваю все условия, не минусуя если человек сам не догадался что-то спросить. А для нерешивших, ещё и ответ в конце пишу и визуализирую)
-
- Уже с Приветом
- Posts: 667
- Joined: 24 Dec 2015 07:50
- Location: Madison, WI
Re: Что поспрашивать на позицию SWE на тему C++?
Спрашивайте то, что вам потребуется от человека в его реальной работе. Посмотрите, что в его прошлом опыте близко к тому что вам надо, и дайте ему рассказать детали, задайте вопросы по ходу.
Если он у вас будет код писать, дайте ему код написать - очень упрощенную версию какой-то вашей реальной задачи.
Если не будет код писать, нафига вам человека гонять по коду.
Если он у вас будет код писать, дайте ему код написать - очень упрощенную версию какой-то вашей реальной задачи.
Если не будет код писать, нафига вам человека гонять по коду.
-
- Уже с Приветом
- Posts: 11999
- Joined: 08 Sep 2006 20:07
- Location: Силиконка
Re: Что поспрашивать на позицию SWE на тему C++?
Минус сотня-две-три разницы в total comp, и ужасная company culture?
Мир Украине. Свободу России.
-
- Уже с Приветом
- Posts: 409
- Joined: 31 May 2007 21:39
- Location: Atlanta
Re: Что поспрашивать на позицию SWE на тему C++?
Интересно, что такое у вас там на С++? Неужели драйвера, ембедед, компиляторы или новая OS? Все что я видел за последние года на С++ было старье куда никто лезть не хотел. И найти знающих на эту позицию очень не легко. Те кто чтото знает, найдёт работу получше. Так и моя С++, карьера закончилась, давно это было. Пришёл на интервью, а там какой-то гик с жирными волосами и пальцами начал спрашивать какие в printf флаги и параметры. Кто это помнит? Ну и слава богу, а то бы так и застрял в 90-х
-
- Уже с Приветом
- Posts: 5283
- Joined: 27 Sep 2008 21:48
- Location: Moscow-Seattle-SFBA
Re: Что поспрашивать на позицию SWE на тему C++?
Эээ… нетM. Ridcully wrote: ↑01 Sep 2021 07:00Минус сотня-две-три разницы в total comp, и ужасная company culture?