LINUX.ORG.RU
ФорумTalks

На собеседовании спросили пользуюсь ли я vcs и что такое класс

 


0

4

Нашли меня сами. Пригласили на собез. Мой опыт: 20 лет в программировании. Человек (технический), который собеседовал, был старше меня на десяток лет минимум - даже не удосужился посмотреть в резюме, потому что если бы посмотрел, то можно было бы сразу увидеть ссылки на мой опенсорс в гит-репозиториях.

Из других вопросов:

  • Что такое ssh
  • Как зайти по ssh без пароля
  • Что такое метапрограммирование
  • Что такое база данных
  • Что такое…

Вот это вот «Что такое» практически через каждый вопрос. У меня дар речи пропадал с некоторыми вопросами. И самое главное, что я не первый раз уже с таким сталкиваюсь.

Это какая-то дикая смесь humiliation ritual с неумением собеседовать и неуважением к кандидату. В принципе, понятно, что сейчас времена такие, но я вам могу сказать по опыту с недавними собеседованиями в западных компаниях – там хотя бы смотрят в резюме, если приглашают на собеседование. В РФ просто сразу практически понятно, что они не потрудились даже открыть резюме, ладно там внимательно прочитать.

Я в свое время нанимал довольно много программистов и я всегда смотрел их резюме и особенно заходил смотрел их код на гитхабе – это убирало большинство вопросов как правило. Действительно интересно, что дальше-то будет.

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

Какой то код кот на гитхабчике

А у работодателя там не какой-то код на гитхабчике, у него там поэзия и шедевр в сорцах. Гет реал.

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

ИМХО часто зовут на собесы вообще для галочки. У тебя в резюме 20 лет С++ и разработанные оперсорц-проекты, а тебя зовут девопсить, например, или наоборот.

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

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

Да, почти все верно. volatile оборачивается барьерами памяти, чтобы другая сторона увидела все записи а не только в volatile-переменную [1].

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

Кроме памяти есть еще перестановка инструкций, на 100500 уровнях: javac, JIT, сам процессор. Потому без volatile все может рухнуть через переупорядочивание кода.

А чтоб проверить себя остается только наврать в резюме и найти интересное место работы :)

Как по мне, это хорошая стратегия — выучить Х и сказать что ты его использовал. Но тут главное «выучить». А не просто написать, что пользовался, как большинство делает.

[1] Сейчас asdpm скажет, что я свойства жаба-объекта переменными назвал. Какой ужос. :)

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

Ну заранее-то не знаешь, что тебя ждёт, если нет каких-то инсайтов.

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

Раз человек ищет работу

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

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

изменения значение поля не будет висеть в регистре/кеше а будет записано в ячейку RAM

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

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

А если два проца? Там же между ними отдельная шина, по ней и синхронизироваться, не?

Как раз в таком случае RAM будет общей памятью.

а то и просто из другого ядра подтянуть свежее значение

Как?

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

Смотри про барьеры памяти.

Если бы процессор постоянно бегал в память за volatile то они бы были очень дорогими, а на деле ее чтение (понятно, когда она не меняется) почти как чтение обычной переменной.

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

Зионы так вообще умеют сетевые пакеты с сетевухи сразу на кеш себе принимать, а не из памяти их считывать. Так что, тут ещё от конкретного проца всё зависит.

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

Протоколом отвечающий за общение ядер друг с другом,

А у x86/amd64 ISA есть прямой контроль над этим? Т.е. прямо инструкция которую можно вызвать, или interrupt сигнал? Я просто не систенмый кодер, я о таком не знаю, интересно было бы узнать что-то новое.

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

А у работодателя там не какой-то код на гитхабчике, у него там поэзия и шедевр в сорцах. Гет реал.

Да, и никак не задашь им задачку-нерешайку. Так вот в этом проблема-то, а не в том, что вопросы не те какие-то.

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

Да, и никак не задашь им задачку-нерешайку.

Как это не задашь. Я как то на одном собезе в ответ на вопрос сказал «я скорее всего не знаю, скажите вот вы мне», на что паренек мне сказал «э! да так собеседования не проводятся, мы задаем вопросы». Я ему говорю, ну погодите, я ж вам уже ответил, что не знаю – расскажите вы теперь. После чего он что-то там зачитал заготовленное на бумажке голосом обиженного диктора с регионального тв.

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

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

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

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

Точно так же и на собеседованиях. Раз уж пошли - поначалу стоило подстроиться под интервьюера и отвечать как надо ему. А потом вам никто не мешал выяснять - окажется ли этот чел вашим начальником, плох ли он в самом деле, чего там вообще делают и как. Короче, вы просто недостаточно проявили софтскиллы )

vaddd ☆☆
()
Ответ на: комментарий от qount_25

Нет, там была какая-то контора, которой нужен был ровно 1 программист в штате

Зачем ты туда пошел? Это же путь в деградацию.

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

Тут ты соврал, там я показал, что такую формулировку используют везде.

Нет. Ты там сослался на пример, который осмысленность твоей формулировки никак не подкрепляет.

Как вы относитесь к тестовым заданиям? (комментарий)

Как вы относитесь к тестовым заданиям? (комментарий)

что что-то там не кешируется. Я ошибся в оценке, по-твоему?

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

на жаве писал давно и мало. ключевое слово volatile позволяют получить такое поле, запись и чтение которого являются (парными) synchronization actions. SA нам нужны чтобы программировать против JMM вместо конкретного поведения конкретной машины, обеспечивать видимость устанавливая HB. будет ли это запретом перестановки, добавлением барьера или сдерживанием какой-то еще as-if-serial оптимизации - нам, согласно идеи «моделей памяти» разрешено не думать. во-вторых, запись 64битных полей volatile будет наблюдаться другим тредом атомарно (например это актуально для long на 32битной машине). сойдет?

Из своего опыта, и коллег.

Честных людей с реальными резюме собеседовал, они есть, они не 1%. Ты сам врешь в резюме?

хохота

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

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

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

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

Ладно, отвечать не нужно, вопрос слишком всеобъемлющий, я уже загуглил по фразе memory barrier cache core coherency я пока не готов полностью осознать ответ с текущим уровнем понимания архитектуры CPU :)

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

ровно 1 программист в штате

Это же путь в деградацию.

может быть и наоборот имхо

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

Это подразумевает, что он им заведомо интересен как специалист.

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

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

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

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

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

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

«ну не все же умеют крон использовать»

Это правильно. Подрастёшь, поймёшь.

А можете пояснить мысль? Это в сторону девопсов/облаков/кафок надо думать?

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

Так ты можешь создавать свои великолепные проекты в свободное время. Зачем тебе работодатель? Ну ладно, з.п. платить, но ведь можно было бы создать что-то свое доходное :)

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

Нет. Ты там сослался на пример, который осмысленность твоей формулировки никак не подкрепляет.

Разницу (по-твоему существующую) ты там так и не объяснил.

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

При чем тут пуп? Ты эту же тему выше почитай, тут уже обсудили volatile. Даже человек не совсем в теме и по Жабе дал ответ лучше чем большинство кандидатов даёт.

на жаве писал давно и мало. ключевое слово volatile позволяют получить такое поле, запись и чтение которого являются (парными) synchronization actions. SA нам нужны чтобы программировать против JMM вместо конкретного поведения конкретной машины, обеспечивать видимость устанавливая HB. будет ли это запретом перестановки, добавлением барьера или сдерживанием какой-то еще as-if-serial оптимизации - нам, согласно идеи «моделей памяти» разрешено не думать. во-вторых, запись 64битных полей volatile будет наблюдаться другим тредом атомарно (например это актуально для long на 32битной машине). сойдет?

Витиевато, но да, сойдет. В таком случае я дальше спрашиваю: а может ли volatile переменная влиять на другие non-volatile переменные?

Честных людей с реальными резюме собеседовал, они есть, они не 1%.

Да.

Ты сам врешь в резюме?

Есть немного.

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

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

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

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

для раннего выявления проблем с MT тесты нужно гонять на ARM процессорах

я видел отрывок, в какой-то книге (может даже в контексте жабы), было сказано, что проводились тесты, и оказалось, что [к сожалению] плохо-синхронизированные программы зачастую в целом работают. но это был вроде бы конец 90х и было сказано, что железо (проц) в будущем будут идти по пути более агрессивных манипуляций и все они очевидно будут as-if-serial.

но вообще направление обеспечения корректности конкурентного кода путем тестирования программы мне видится странным.

asdpm
()

Сейчас 90% резюме это сгенеренная форма с hh, а на гитхабах ничего кроме пустых хелловорлдов нет

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

может ли volatile переменная влиять на другие non-volatile переменные

что значит «влиять на»? опять проблемы с формулировками? на саму переменную нет - она из класса никуда не пропадет. (каков вопрос - таков ответ)

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

Разницу (по-твоему существующую) ты там так и не объяснил.

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

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

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

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

Честных людей с реальными резюме собеседовал, они есть, они не 1%.

Да.

Вот, уже что-то.

Ты сам врешь в резюме?

Есть немного.

А я нет, вообще. Но уже подумываю.

asdpm
()

Ути пусеньки, вопросы ему неправильные задают xD

На одну из прошлых работ меня взяли потому что я правельно наотвечала на базовые вопросы а ля «что такое load».

На заботе ху* написан, а там дрова. Так и в резюме. На той же работе задалбывались искать сотрудников. В резюме все умные, а на деле смотришь на них и не понимаешь как они вообще существуют до сих пор и не самовыпилились побочкой своей тупости.

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

Вопрос на абстрактное мышление

Почему люки круглые и сколько шариков от пинг понга помещается в боинг?

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

А у x86/amd64 ISA есть прямой контроль над этим?

Нету. Если дать такой доступ не будет возможности делать внутренних оптимизаций на новых процах, менять внутреннюю архитектуру. Все программы каждый раз потребуется переделывать. Считай вот тебе и ООП с его инкапсуляцией и интерфейсами на уровне железа и транзисторов.

Хотя возможно в этом и есть смысл, в том числе управлять кешем на самом проце. Но я не процесостроитель, поэтому чисто интуитивно хотелось бы управлять внутренностями ЦПУ. А вот будет ли с этого профит?

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

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

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

А что такое load?

Видимо, зависит от контекста. Как и школьный «класс».

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

Профессиональный музыкант крайне редко бегает по собеседованиям.

Есть такое понятие – сессионный музыкант. Он сегодня пишет гитару в одной студии одной группе, завтра подменяет заболевшего музыканта на концерте у другой, послезавтра аккомпанирует на детском утренике. Так что прослушивания у него будут регулярно.

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

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

У меня, как это говорится, есть трабл с подчинением authority

Так это ты пришел к ним в разрабы, а не они к тебе. Поэтому язык в одно место и виляешь хвостиком. Либо идёшь собирать алюминиевые банки, если ничего лучше не смог придумать. Без «authority».

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

что значит «влиять на»?

Ну вот это и хочется с кандидатом обсудить. Значение слова «влиять» достаточно просте — менять поведение.
Если кандидат в теме то он догадается с полуслова, что называется.

опять проблемы с формулировками?

Какие проблемы? Как бы ты сформулировал этот вопрос? Чтобы и не слишком подсказать, естественно.
Понятно же, что влиять не сама по себе, своим фактом существования. А при работе с ней.

на саму переменную нет - она из класса никуда не пропадет. (каков вопрос - таков ответ)

Ты коллегам на «нужно прочитать переменную foo» отвечаешь тирадой: «Не переменную прочитать, а прочитать значение из ячейки памяти, которая адресуется идентификатором переменной!»?

urxvt ★★★★★
()
Последнее исправление: urxvt (всего исправлений: 1)

...даже не удосужился...

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

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

Какой заяц? Какой орёл? Какая сигнатура? Ты утверждал, что число не может быть представлено ни массивом, ни строкой. Я тебе указал, что люди из Го считают, что число может представляться строкой.

urxvt ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)