LINUX.ORG.RU

Embedded C: вопросы на собеседованиях

 , ,


4

5

Я знаю, на лоре много сишников и ембедщиков. А проводящих собеседования на работу еще больше.

Так вот, уважаемые отбиральщики мужей у жен специалистов на должность embedded C developer, что вы обычно на собесах спрашиваете?

Особенно интересны вопросы по Сишке с намеком на завалить кандидата — неочевидные или на хорошее знание стандарта.

Знаю, в гугле такого много, но хочется от живых людей примеры, а не от индусов, пиарящих себя и свой сайт.



Последнее исправление: untitl3d (всего исправлений: 3)

Ответ на: комментарий от jhonathan

Макос классик

Сургут

Что не так? В школе у нас были в одном классе Pentium 60 и 90 и с турбо паскалем, а в другом Macintosh c Mac OS 7.6 и Think Pascal (прикольная штука с автопереносом строк по синтаксису).

monk ★★★★★
()
Ответ на: комментарий от untitl3d

Если всё время переписывать код, то продукт никогда не выйдет на рынок, контора разорится, программисты пойдут бомжевать под мост.

Harald ★★★★★
()
Ответ на: комментарий от jhonathan

84-го года? Посмотрел, они при выходе стоили $2,500. Думаю это стоимость дома.

Так в школу они где-то в 96-м попали. Думаю, к тому моменту подешевели. Хотя наличие CD-ROM и звука на макинтошах у нас было, а на пентиумах нет. Преподаватель рассказывал байки, что на макинтошах бесконечное количество точек на дисплее (аргументировал тем, что на DOS/Windows есть putpixel, а на макинтошах нет, а круг запрашивает вещественные числа для центра и радиуса). И каталоги там можно было прятать, сделав имя " " и прозрачную иконку :-).

monk ★★★★★
()
Ответ на: комментарий от Harald

А если держать легаси, программистов не будет. Будут одни школотроны на полставки и сменяться всем составом раз в 3 месяца.

untitl3d
() автор топика
Ответ на: комментарий от monk

Преподаватель рассказывал байки, что на макинтошах бесконечное количество точек на дисплее (аргументировал тем, что на DOS/Windows есть putpixel, а на макинтошах нет, а круг запрашивает вещественные числа для центра и радиуса).

:))) А он хорош!

lv ★★
()
Ответ на: комментарий от anonymous

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

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

Вы показываете своё неуважение к старшим («дедок»), неприятие иерархии. Это сложности при встраивании в коллектив, непонимание сферы своей ответственности, пролезание туда где вас не ждут (учить начальника жизни и бизнесу, например).

Вы показали неуважение к куче народа (служившие) на пустом месте, без какой бы то ни было причины или цели. Не зная кого это заденет. Ну и получили. Это словестное недержание и отсутствие эмпатии.

Ну и эгоцентризм свой показываете. Не крутится всё вокруг вас, даже если директор вам это так представил, мол из какого-то страха вас не берут. Гораздо вероятнее, имхо, что «дедок» этот там довольно уважаем. И сказал директору: «Вы тут какого-то неадеквата ко мне прислали. Лучше бы нафиг его.» Ну и к нему просто прислушались. Вы там никто, и как-то вас отстаивать ни у кого мысли не возникло.

lv ★★
()
Ответ на: комментарий от Djanik

Если у деда припекло, что парень не служил, на вполне законных основаниях,

Сам «парень» вполне конкретно написал что он там заявил. И про «мозгов хватает» и про «заниматься ерундой». К чему сглаживать и смещать акценты?

У «деда» могло и не «припекать» кстати. Это может легко может оказаться всего лишь интерпретацией «парня». «Дед» вполн мог просто опознать перед собой неадеквата и не более.

А вот то, что в адекват «парень» так и не пришёл видно по его рассказу.

lv ★★
()
Ответ на: комментарий от lv

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

anonymous
()
Ответ на: комментарий от untitl3d

Бажное легаси

Это весь код который не писал последний устроившийся программист =)

Тестировать до посинения

Реальное тестирование идёт в проде

Если в какой-то момент словили баг-шоустоппер, переписать.

Всё пеерписать?

НЕТ более важных задач, чем править баги в своем коде!

Нет кода нет багов! Я вон баги правлю постоянно, а исправляю иногда =)

Переписать такой код просто необходимо.

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

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от anonymous

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

Вы так и не поняли. Дело не в том, что от вас «не было комплимента» и вы кого-то обидели. Для взрослого человека с гораздо большим жизненным опытом чем у вас ваше снисхождение и высокомерие хоть в комплиментах, хоть в порицаниях - это просто неадекват. Вы просто показали, что у ВАС проблемы. Это ВЫ не можете встроиться в иерархию. И проблема не только в самом словестном недержании, а в том, что вы вобще мните себя больше и важнее, чем вы есть, раз такие суждения имеете. Но вы продолжаете рассказывать окружающим о «чужих проблемах» - кого и как контузило.

lv ★★
()
Ответ на: комментарий от lv

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

Дед алкаш тоже под это описание подходит. Что ж вы не прислушаетесь к жизненному опыту бабок у подъезда?

ваше снисхождение и высокомерие хоть в комплиментах, хоть в порицаниях - это просто

неадекват.

Было бы на кого равняться

Вы просто показали, что у ВАС проблемы. Это ВЫ не можете встроиться в иерархию.

Трайбалисты такие трайбалисты. То, что вы сейчас описали, является антонимом профессионализма. Просиживание штанов, выслуга лет - это не показатель опыта. Лесом такие болота с примативным мышлением.

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

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

kolpakchi
()
Ответ на: комментарий от kolpakchi

Что ж вы не прислушаетесь к жизненному опыту бабок у подъезда?

Вот и у вас. Пожилые женщины - как низшая каста, недостойные уважения.

Что-то, возможно, буду от них фильтровать, но я точно не возьмусь им лечить, что где-то ерундой занимаются и не на то жизнь тратят. Это просто глупо.

То, что вы сейчас описали, является антонимом профессионализма.

Эффективная работа в команде невозможна без иерархии, распределения ролей.

Сколько помоев уже вылили на человека, просто за мнение, отличное от вашего.

Вы не видите разницы контекстов? Здесь мы все равны, я высказался в контексте обсуждения пользы опыта службы в работе и истории рассказанной анонимом (никаких репутационных рисков он не несёт, может прислушаться, а может нет). Тут скорее я подставляюсь и несу те самые риски, если буду гнать полную ересь.

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

lv ★★
()
Ответ на: комментарий от lv

Вот и у вас. Пожилые женщины - как низшая каста, недостойные уважения.

В каком месте? Сам придумал сам поет. Дальше не буду комментировать, бесполезно.

kolpakchi
()
Ответ на: комментарий от kolpakchi

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

anonymous
()
Ответ на: комментарий от lv

Эффективная работа в команде невозможна без иерархии, распределения ролей.

Это да.
Одному можно вилы вручить, другому грабли …

И вмиг выпрямят ДЕФЕКТ!
anonymous
()
Ответ на: комментарий от lv

Эффективная работа в команде невозможна без иерархии, распределения ролей.

Да. За Родину — за Абрамовича!

anonymous
()

Вот тебе искатель приключений вопрос.
Можно ли в аргументах функций для строк использовать c_str()?
Что-то типа:

 pTree = (Tree_ *) ParsingConfig(  
  strConfig.c_str() 
 );
anonymous
()
Ответ на: комментарий от anonymous

Какой у тебя C интересный… Аж на С++ похож!

anonymous
()

Самый главный вопрос на собесе (и даже не важно, на должность программиста промышленного контроллера или админа 1С) - не про шины передачи данных, мироконтроллеры и прочую технику, а про глубинную суть ПО как феномена в индустрии и человечества. Если кандидат не понимает, что ПО (любое, от андроид аппа для хранения кулинарных рецептов до технологического софта сколь угодно ответственного производства) предназначено для того, чтобы делать ошибки быстрее и проще, он не подходит. Если начинает доказывать, что нужна грамотная программно-аппаратная архитектура, архитектура сети, грамотные протоколы, разные виды тестирования, новомодный таск менеджмент, умелое кодирование и проч., и все эти мантры, по которым ПО надо делать, и тогда все будет в шоколаде и без ошибок - он либо лукавит, либо мышление у него ограниченное, узколобое.

seiken ★★★★★
()
Последнее исправление: seiken (всего исправлений: 1)
Ответ на: комментарий от seiken

Самый главный вопрос на собесе

Готов ли он работать за идею. Максимум есть кулер с водой, чтобы заваривать свой доширак.

anonymous
()
Ответ на: комментарий от anonymous

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

Тапки реально не вдупляют, что то, что они пишут тут - просто маразм. Они вот правда думают, что если человек - мудак, то дожив до седых мудей он будет кем-то, но не старым мудаком. Оскорбляют их. То, что тапок анонимус тут насрал во все стороны это что-то кроме оскорблений?

P.S. поправил

anonymous
()
Ответ на: комментарий от anonymous

Готов ли он работать за идею. Максимум есть кулер с водой, чтобы заваривать свой доширак.

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

seiken ★★★★★
()
Последнее исправление: seiken (всего исправлений: 2)
Ответ на: комментарий от seiken

баки со жратвой «прямо в цех притащат», «чтобы без отрыва от производства»

«Целину подымали» без принуждения и негативного отношения общества. Разница только в идее.

anonymous
()
Ответ на: комментарий от anonymous

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

seiken ★★★★★
()
Ответ на: комментарий от seiken

Одно дело строить первое в мире государство рабочих и крестьян,

Да были времена.
У них песня была

Мы всех буржуев в гроб положим.  
Кто был не буржуй, тот станет ...
anonymous
()
Ответ на: комментарий от anonymous

Придумал окончание куплета

Мы всех буржуев в гроб положим.  
Кто был не буржуй, тот станет им
anonymous
()
Ответ на: комментарий от seiken

Ну ты сравнил

Я сравнил именно культуру употребления пищи, не отрывая от производства. Говорят, капиталист Форд тоже использовал такую же культуру и стал лидером в автостроении.

anonymous
()
Ответ на: комментарий от anonymous

Буржуа - город о франции, вроде. Буржуй - житель (этого) города. В общем, горожанин, как пролетарий. Главное - увидеть различие. Провансальские крестьяне должны одобрить.

anonymous
()
Ответ на: комментарий от anonymous

Буржуа - город о франции, вроде. Буржуй - житель (этого) города. В общем, горожанин, как пролетарий. Главное - увидеть различие. Провансальские крестьяне должны одобрить.

Гражданская война и Великая Отечественная Война были попущены Богом за отступничество от веры …
Бог он знаете ли МИЛОСТИЛИВ и отводит от народов многие беды.
Но иногда чаша ГОМНА наполняется до краев …
Люди виновны во всех своих бедах.

Нечего на Бога пенять, коли злы как бесы 
anonymous
()
Ответ на: комментарий от anonymous

культуру употребления пищи, не отрывая от производства.

Это очень здорово жрать за компом, когда в комнате десяток человек. Человека 3 у нас так и делали, пока их не заклевали. Дед один в контейнере приносил гречку с дешманской вонючей котлетой, кто-то рыбу жаренную, кто-то салат из редьки хрумкал… Все в восторге. А запахи!

bugs-bunny
()
Ответ на: комментарий от bugs-bunny

Все в восторге.

Я же говорю, разница только в коннотации, в идее. Отсутствие культуры, бескультурные.

anonymous
()
Ответ на: комментарий от anonymous

Отсутствие культуры, бескультурные.

Культура в разных странах разная.
В Англии если вы пернете, то замечание вам не сделают …

anonymous
()
Ответ на: комментарий от anonymous

Теория культурного заговора! Выделяя нужные аргументы, можно доказать любую теорию, например, теорию влияния культуры употребления пищи на превосходство. :)

anonymous
()
Ответ на: комментарий от anonymous

Теория культурного заговора! Выделяя нужные аргументы, можно доказать любую теорию, например, теорию влияния культуры употребления пищи на превосходство. :)

А и доказывать ничего не нужно.
Люди такие умельцы …
Полезно говорить о духовности людей, а «культура людей» она знаете ли от мира сего и его развращенности /в большей части/ …

anonymous
()
Ответ на: комментарий от seiken

Если кандидат не понимает, что ПО (любое…) предназначено для того, чтобы делать ошибки быстрее и проще, он не подходит.

Можно раскрыть идею? По дальнейшему тексту вроде бы выходит, что люди не понимают, что такое KISS и YAGNI, но тут вроде что-то другое.

Kogrom
()
Ответ на: комментарий от eagleivg

Просто даю на листочке код где обявлен массив из 10-ти элементов и присваивание значения элементу по индексу 10. Спрашиваю что тут не так - отсеивается больше половины. Ну и 2+2*2 того же порядка.

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

IvanR ★★★
()
Ответ на: комментарий от IvanR

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

eagleivg ★★★★★
()
Ответ на: комментарий от eagleivg

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

Как там в 2007?

https://gcc.godbolt.org/z/dhh68va4P

warning C4706: assignment within conditional expression
fsb4000 ★★★★★
()
Ответ на: комментарий от eagleivg

из-за опечаток = вместо ==.

Если не различает = и == с первого взгляда, «значит опыта у него с гулькин нос».

anonymous
()
Ответ на: комментарий от eagleivg

Щас gcc предупреждает, что то типа, условие не имеет эффекта что ли, а раньше, да, хорошая привычка

IvanR ★★★
()
Ответ на: комментарий от anonymous

Для 99% случаев компилятор, по простому алгоритму может сам отличить присваивание от сравнения.

Присваивание всегда самая левая операция в выражении и никогда не ставится нигде кроме выражений.

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

Но зачем, ведь у программистов тогда будет меньше работы.

kolpakchi
()
Ответ на: комментарий от kolpakchi

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

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

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

anonymous
()
Ответ на: комментарий от kolpakchi

Твои «99% случаев» - конечно же не цифры с потолка.

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

anonymous
()
Ответ на: комментарий от Kogrom

Можно раскрыть идею?

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

seiken ★★★★★
()
Ответ на: комментарий от seiken

Да, они все больше на заборах.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.