Вопросы на собеседованиях

May 12, 2015 17:17

Я вот понять одного не могу: чего добиваются интервьюеры на собеседованиях, когда задают вопрос из серии "реализуйте B/B+ дерево"?
В финском языке есть такое слово "myötähäpeä" - чувство стыда за другого человека. Вот когда я слышу на собеседовании подобное, мне, цЫничному гопнику, становится стыдно до состояния "пойти и удавиться шнурками кед".

Мне.

Становится стыдно.

Да, я сам вахуе.

Дорогие сениоры, техдиректоры и прочие системные архитекторы! Задавая подобные вопросы на собеседовании вы демонстрируете дремучесть студента 1-го курса института при зашкаливающей самооценке, рядом с которой Дейкстра, Керниган и Ричи - дети, едва изучившие BASIC. Сколько при этом котиков убивает господь, я судить не берусь, но думаю, что не меньше 9000 за раз.

Просто запомните, если не готовы сами повторить эксперимент: работоспособное B/B+ дерево начинается от 4000 строк кода. До этого момента это не дерево, а школьное поделие, ценность которого околонулевая с любой точки зрения. Дерево, которое поддерживает транзакции, требует по крайней мере 8000 строк кода (данные - про реализацию на С; но написанное актуально и для Java/C++). Добавление в дерево репликации, lock-free доступа обходится примерно в 3-5 тысяч строк для каждого изменения. Представьте себе, да: это - действительно сложный алгоритм. В любом случае это не тема ни для рисования алгоритма на собеседовании, ни даже для домашнего задания на несколько дней.

Если вы не верите написанному, велкам смотреть исходники SQLite, InnoDB и BerkeleyDB.

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

ФБ-копия поста - тут: https://www.facebook.com/sloneus/posts/476966385788196

рабочее, о том - о сем

Previous post Next post
Up