Реальная история, основанная на вымышленных событиях.
Все совпадения — неслучайны.
Все шутки — несмешны.
— Сергей, здравствуйте. Меня зовут Биби, моего коллегу — Боба и мы два… тимлида, очень давно в проекте, знаем все todo наизусть и сегодня будем общаться на тему ваших знаний и умений.
У вас в CV написано, что вы — senior, работаете преимущественно с .NET’ом, разбираетесь в асинхронном и многопоточном программировании, уверенно владеете основами алгоритмов и структур данных, имеете опыт как рефакторинга, так и проектирования крупных модулей с нуля. И все же, нельзя не задать этот тупой вопрос: вкратце расскажите о себе?
— Здравствуйте, Биби и Боба. Я таки работаю преимущественно с .NET’ом, разбираюсь в асинхронном и многопоточном программировании, уверенно владею основами алгоритмов и структур данных, имею опыт как рефакторинга, так и проектирования крупных модулей с нуля. Это вкратце.
— Спасибо. Ну что ж, начнем! Для разогрева что-нибудь попроще: какие вы знаете деревья и методы их обхода?
— Дуб, акация, клен, вишня…Так сходу больше ничего в голову не приходит. Что касается обхода дерева, то совершать обход можно с разных сторон: слева или справа. Также я знаю, что на дерево можно залезть и что в деревьях бывают дупла, где иногда живут белки.
— Хорошо. Тогда такой вопрос — в чем разница между передачей объекта по ссылке и полным его копированием?
— Разница в том, что в первом случае объект передается по ссылке, а во втором — полностью копируется.
— Что вы знаете о графах?
— Глубоко уважаю творчество графа Льва Николаевича Толстого, в детстве зачитывался книгой “граф Монте Кристо”. Да и кто ж не знает графа Дракулу?!
— Что такое “SOLID”?
— “Твердый”, реже — “сплошной”. Зависит от контекста, конечно.
— Как работает сборщик мусора?
— Это я тоже знаю. Типичный сборщик мусора одет в ярко-оранжевый комбинезон и спецобувь. Работает он в основном в ночное время — на мусоровозе. Главная задача сборщика мусора — перенести содержимое мусорных ящиков в кузов мусоровоза, стараясь не рассыпать зловонный мусор на дорогу. Подводя итоги, можно сказать, что важность сборщиков мусора недооценена нашим обществом, а ведь их труд так же ценен, как труд учителей и пекарей!
— И последний тупой вопрос на сегодня: предположим, у нас есть сферический конь, который умеет ходить на задних лапах как человек. У коня есть контекст выполнения, завязанный на текущий пространственно-временной континуум. Необходимо реализовать пул таких коней с возможностью развязывать военные конфликты на Ближнем Востоке. Как бы вы это сделали за O( n * log(n) )?
— Хм… для начала, я бы отказался от оценочных суждений. Я бы наконец осознал, что никакого пула сферических коней не существует — и сама постановка вопроса утратила бы всякий смысл. Я сам стал бы одновременно и этим конем, и пулом таких коней, и Ближним Востоком. Для Слившегося С Вечным O( n * log(n) ) совершенно неотличимо от O ( n ^ n ).
— Спасибо, Сергей. Мы вам перезвоним.
— Вот уж действительно: не за что. Перезванивать не надо.
Все совпадения — неслучайны.
Все шутки — несмешны.
— Сергей, здравствуйте. Меня зовут Биби, моего коллегу — Боба и мы два… тимлида, очень давно в проекте, знаем все todo наизусть и сегодня будем общаться на тему ваших знаний и умений.
У вас в CV написано, что вы — senior, работаете преимущественно с .NET’ом, разбираетесь в асинхронном и многопоточном программировании, уверенно владеете основами алгоритмов и структур данных, имеете опыт как рефакторинга, так и проектирования крупных модулей с нуля. И все же, нельзя не задать этот тупой вопрос: вкратце расскажите о себе?
— Здравствуйте, Биби и Боба. Я таки работаю преимущественно с .NET’ом, разбираюсь в асинхронном и многопоточном программировании, уверенно владею основами алгоритмов и структур данных, имею опыт как рефакторинга, так и проектирования крупных модулей с нуля. Это вкратце.
— Спасибо. Ну что ж, начнем! Для разогрева что-нибудь попроще: какие вы знаете деревья и методы их обхода?
— Дуб, акация, клен, вишня…Так сходу больше ничего в голову не приходит. Что касается обхода дерева, то совершать обход можно с разных сторон: слева или справа. Также я знаю, что на дерево можно залезть и что в деревьях бывают дупла, где иногда живут белки.
— Хорошо. Тогда такой вопрос — в чем разница между передачей объекта по ссылке и полным его копированием?
— Разница в том, что в первом случае объект передается по ссылке, а во втором — полностью копируется.
— Что вы знаете о графах?
— Глубоко уважаю творчество графа Льва Николаевича Толстого, в детстве зачитывался книгой “граф Монте Кристо”. Да и кто ж не знает графа Дракулу?!
— Что такое “SOLID”?
— “Твердый”, реже — “сплошной”. Зависит от контекста, конечно.
— Как работает сборщик мусора?
— Это я тоже знаю. Типичный сборщик мусора одет в ярко-оранжевый комбинезон и спецобувь. Работает он в основном в ночное время — на мусоровозе. Главная задача сборщика мусора — перенести содержимое мусорных ящиков в кузов мусоровоза, стараясь не рассыпать зловонный мусор на дорогу. Подводя итоги, можно сказать, что важность сборщиков мусора недооценена нашим обществом, а ведь их труд так же ценен, как труд учителей и пекарей!
— И последний тупой вопрос на сегодня: предположим, у нас есть сферический конь, который умеет ходить на задних лапах как человек. У коня есть контекст выполнения, завязанный на текущий пространственно-временной континуум. Необходимо реализовать пул таких коней с возможностью развязывать военные конфликты на Ближнем Востоке. Как бы вы это сделали за O( n * log(n) )?
— Хм… для начала, я бы отказался от оценочных суждений. Я бы наконец осознал, что никакого пула сферических коней не существует — и сама постановка вопроса утратила бы всякий смысл. Я сам стал бы одновременно и этим конем, и пулом таких коней, и Ближним Востоком. Для Слившегося С Вечным O( n * log(n) ) совершенно неотличимо от O ( n ^ n ).
— Спасибо, Сергей. Мы вам перезвоним.
— Вот уж действительно: не за что. Перезванивать не надо.