четверг, 14 августа 2025 г.

Собес с G5 Entertainment

Собес с G5 Entertainment

yurembo

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


Итак, в июле я прошел собес на позицию C++-программиста в компании G5 Entertainment. Интервьюрер пообещал отчет. Жду неделю, две. Эйчарка не отвечает в Телеграмме. Нашел ее емайл. Отправил письмо. Она: «Наш специалист был на больничном. В ближайшее время составит отчет, отправит.»


Через несколько дней приходит письмо со стандартными фразочками. Я говорю: «И это все, на что он способен?» Проходит еще несколько дней. И в отчете: «Вы неправильно рассказали про ключевое слово override». Я тут же на эмоциях отвечаю: "Ваш специалист никчемный болтун и пиздабол".


На собесе про override я сказал, что это факультативное слово, для визуальной пометки переопределения унаследованной виртуальной функции базового класса. Его можно не писать, его добавили только в C++11, раньше без него обходились. И было норм.


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


По пунктам расскажу об их претензиях, и какие еще ошибки они мне нарисовали:

1) возникли сложности с описанием действия модификаторов доступа при наследовании (по умолчанию);

a) Я ему подробно описал действия модификаторов доступа. Только забыл их использование по умолчанию при наследовании. Потому что всегда задаю их явно. Чтобы читающему мой код было удобнее сопровождать.


2) определение статического метода не удалось сформулировать сразу;

a) На этот вопрос я ответил не сразу. Понадобилось несколько секунд, чтобы вспомнить. Но ответил-то я правильно. Потому что цитирую Мэйерса.


3) вопрос по работе с константными и неконстантными методами вызвал затруднения;

a) Чушь! Я сразу ответил на этот вопрос! Со всеми пояснениями. Отвечая на такие вопросы, цитирую Скотта Мэйерса. Современное поколение программистов его не читает? Это же не устаревающая истина! Скотт Мэйерс, кстати, у меня в переписке. Душевный человек.


4) определение виртуального метода, а также принцип действия ключевого слова override и пример его применения вызвали трудности.

a) Чушь! Не было никаких трудностей! Я сразу ответил на этот вопрос. Также упомянул стандарт языка, в котором это слово было введено. Более подробно этот необоснованный наезд рассмотрен выше.


Кроме того были вопросы:

1) Как выкинуть исключение?

a) На что я ответил: с помощью throw.


2) Как убрать константный признак?

a) Я ответил: есть ключевое слово mutable.

        b) Я считаю, что если надо нарушать константнось, то всё это неправильно спроектировано. Гнать в шею надо тех, кто это задумал. Очень близорукое видение проекта.

c) Еще для удаления константности значения можно использовать шаблонную функцию std::remove_const, появившуюся в C++11. Но об этом на собесе я не сказал, так как интервьюрера устроило слово mutable.


3) Какие инструменты вы используете для оптимизации работы с кодом?

a) Об этом можно целую статью написать, какие я использую инструменты для оптимизации работы с кодом. На собесе я остановился на двух плагинах для Visual Studio: Visual Assist и Deleaker.


Кого они пытаются нанять? Таких же дураков, как сами?

От этого становится понятным застой, а местами регресс в области современного программного обеспечения.

Гнать в шею надо этих недоумков! 


Комментариев нет:

Отправить комментарий