Інженер виклав розшифровку невдалої співбесіди в Google

Програміст П'єр Готьє проводити співбесіду на позицію технічного директора в Google

Про це повідомляє Depo.ua з посиланням на G-Wan

На роботу його не взяли, але він не посоромився викласти розшифровку питань і відповідей з співбесіди з кадровиком компанії. Він вирішив написати про це, оскільки, за його словами, рекрутер не хотів або не міг через незнання обговорювати вірні відповіді, а очікував відповідей "за підручником". Один з коментарів, які цитує П'єр: "Це не та відповідь, яка вказана у мене на папірці»".

Самій публікації вже кілька місяців, але нещодавно це помітило співтовариство Hacker News, де повідомлення викликало бурхливу дискусію і заодно поклало сервер з блогом. Одні учасники обговорення звинувачували П'єра в тому, що жодного разу не зустрічали подібних питань на співбесіді в компанії, інші підтверджували його дані. Так що пост можна розцінювати і як неупереджене свідчення, і як помста ображеного здобувача.

Публікуємо переклад самого посту.Можливо, комусь стане у нагоді.(скорочений варіант).

П"єр Готьє: "Нещодавно мені провів  співбесіду  телефоном фахівець з підбору кадрів Google. Оскільки я підходив за критеріями на таке інтерв'ю, але не пройшов тест, в цьому блозі перераховані питання і очікувані відповіді. Це може стати в нагоді, якщо Google одного разу вам подзвонить.

Щоб прояснити контекст: я почав займатися програмуванням 37 років тому, коли мені було 11, і ніколи не зупинявся з тих пір (кар'єру П'єра можна простежити в LinkedIn . У 24 роки мене призначили R & D-директором в TWD, я розробляв найбільш відповідальні частини проектів - всі вони зараз є комерційними. Серед них глобальна WAN-мережу, (розподілена C / VHDL L2 VPN), яка базується на kernel-bypass IP-стеку і розробленому нами способі постквантового шифрування; 200-кілобайтний сервер додатків з підтримкою 17 мов програмування та ін.

Представник Google вказав, що потрібні як менеджерські навички, так і навички сучасного програмування (рідкісне поєднання). Я займався першим близько 20 років, а останнім - близько 40 років поспіль - цього виявилося недостатньо: я не зміг дати правильні відповіді. Можливо, в Google і справді занадто висока планка, а можливо, їх HR-фахівців не вистачає тих умінь, які вони покликані оцінювати?

Давайте ж з'ясуємо.

Тест Google на позицію технічного директора.

Нижче представлені питання на "високу технічну кваліфікацію" з відповідями - до тих пір, поки мене не перервали, оскільки стало очевидно, що я не підходжу.

1. Питання: Яка функція протилежна malloc () в C?

Я: free ().

Інтерв'юер: Вірно.

Думки про себе: В такі рідкісні моменти, напевно, потрібно пишатися своїми 35 роками досвіду програмування на 40-річному С.

2. Питання: Яка функція в Unix дозволяє сокету отримувати з'єднання?

Я: listen ().

Інтерв'юер: Вірно.

Думки про себе: Невже це кваліфікує мене як гуру по мережах?

3. Питання: Скільки байтів потрібно для зберігання MAC-адреси?

Я: 6.

Інтерв'юер: Вірно.

Думки про себе: Думаю, я тільки що заслужив значок знавця Ethernet.

4. Питання: Відсортуйте по тимчасових витратах наступні завдання: читання регістра ЦП, пошук на диску, перемикання контексту, читання системної пам'яті.

Я: Читання регістра ЦП, читання системної пам'яті, переключення контексту, пошук на диску.

Інтерв'юер: Вірно.

Думки про себе: Таке розповідають на першому курсі будь-якого IT-ВНЗ.

5. Питання: Що таке індексний дескриптор Linux?

Я: Унікальний ідентифікатор файлу для будь-якої даної файлової системи.

Інтерв'юер: Невірно, це метадані файлу.

Мій коментар: Це - індекс, що дозволяє унікально ідентифікувати файл в даній файлової системи, з нього можна отримувати атрибути файлу, такі як розмір, час, власник, дозволи, в деяких файлових системах можна навіть додавати власні атрибути.

Інтерв'юер: Неправильно, що не "атрибути", а "метадані".

Думки про себе: "Метадані" звучить більш інформативно, ніж "атрибути", ви серйозно?

6. Питання: Яка функція в Linux повертає дескриптор по шляху файлу?

Я: Я писав кастомізованих LIBC для нашого сервера додатків G-WAN, але не пам'ятаю жодної syscall, що повертає дескриптор.

Інтерв'юер: stat ()

Я: stat (), fstat (), lstat () і fstatat () все повертають код помилки. Вони заповнюють stat-структуру, яка містить атрибути файлу (ми обговорювали їх раніше), а не тільки індексний дескриптор.

Інтерв'юер: Це не відповідь, дескриптор містить всі метадані.

Думки про себе: Можливо, Google таємно купив ліцензію на одіозного чат-бота від Microsoft? ( розробник має на увазі бота Тей, створеного Microsoft для імітації спілкування доброзичливою дівчинки-підлітка в соцмережах. Експеримент закінчився погано: бот, випущений в Twitter, досить скоро став расистом і шанувальником Гітлера).

7. Питання: Як називається KILL-сигнал?

Я: SIGKILL, #define для якого встановлено як 9.

Інтерв'юер: Ні, правильну відповідь TERMINATE.

Я: SIGKILL зі значенням 15 відрізняється від сигналу KILL зі значенням 9.

Інтерв'юер: Це не та відповідь, яка вказана у мене на папірці.

Думки про себе: Ось що трапляється, коли чат-боти відкривають для себе легкі

аркотики.

8. Питання: Чому Quicksort - це найкращий метод сортування?

Я: Це не так, він не завжди підходить.

Інтерв'юер: Але у Quicksort кращі оцінки Big-O.

Я: Big-O ігнорує затримки зберігання даних, топологію, обсяги, доступну пам'ять, навіть обчислювальну складність для кожної команди ЦП в даній процедурі. Замість цього він просто вважає кількість алгоритмічних операцій! Big-O може бути цінним дороговказом для розробки алгоритмів, але рішення з кращою продуктивністю і масштабованість залежить від обмежень, пов'язаних з кожною конкретною завданням і оточенням.

Інтерв'юер: Невірно, ви повинні були назвати мені оцінку Quicksort в Big-O.

Думки про себе: Коли ж влада нарешті визнають вплив тютюнового скандалу на психічне здоров'я суспільства? Ядро Linux (яке викорис сам Google) обрало Heapsort, а не Quicksort, оскільки перший економніше використовує пам'ять і більш передбачуваний за часом виконання.

9. Питання: Є масив з 10 000 16-бітних значень, як найефективніше порахувати біти?

Я: Потрібно зрушити біти на всіх 64-бітових словах, по методу Керніган.

Інтерв'юер: Ні.

Я: Є і більш швидкі методи обробки 64-бітових слів з масками, але я не зможу пояснити це по телефону, щоб відповісти, мені потрібно буде писати код.

Інтерв'юер: Правильна відповідь - використовувати таблицю перекодування і потім порахувати результат.

Я: Для якого ЦП? Чому б не порівняти результати мого коду з вашими в якомусь стандартному тесті?

Інтерв'юер: Сенс тесту не в цьому.

Я: А в чому?

Інтерв'юер: Мені потрібно переконатися, що ви знаєте правильні відповіді.

Думки про себе: І скільки ж буде тривати це лайно? 8-бітна таблиця перекодування може обробляти байти один за іншим, в той час, метод на основі 64-бітної маски обробляє 8-бітові слова одночасно (і крім того, сучасні ЦП дозволяють вам обробляти 128-бітові слова з 10-кратною швидкістю, якщо вам не потрібно думати про збіжність). 64-бітна таблиця недоступна для сучасних комп'ютерів, так що немає сумнівів, що із запропонованого працює швидше.

Вночі 13 жовтня 2016 року (через майже 7 місяців після публікації оригінального посту) ми отримали звіти про те, що сервер, на якому хоститься блог, був недоступний декілька годин. Багато листів відсилали нас до дискусії на Hacker News, де люди, які заявляють, що працюють в Google, заперечували, що компанія використовує подібні питання. Інші ж підтверджували, що чули від Google ті ж питання на співбесіді ...

Я не запитував у Google цього інтерв'ю. Разом з тим, після випадку з Hacker News я отримав кілька цікавих пропозицій про роботу, а також - резюме від кандидатів, які бажають працювати в TWD. Це доказ того, що багато хто розуміє реалії світу, в якому живуть. Велике спасибі за відгуки, підтримку і відродження моєї віри в наступне покоління програмістів.

Мені б дуже хотілося мати можливість навчати і наймати всіх, хто бажає вчитися. Якщо не вийде, одного разу я напишу книгу, яка допоможе іншим досягти більшого, ніж я - і обіцяю заповнити її новою інформацією.

Більше новин про події в Україні та світі на Depo.ua
 

Всі новини на одному каналі в Google News

Слідкуйте за новинами у Телеграм

Підписуйтеся на нашу сторінку у Facebook

deneme