Pull to refresh

Comments 714

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

думаю, в заголовке, речь об изоляции транзакций.
Так автор и не знает. В этом суть.
еще не забывайте, что некоторые ищут человека на бюджет, скажем (для простоты понимания) 100т. И приходит такой крутой спец, чье резюме выкраили из колуаров оффлайн баз хантинговые агенства. Знает язык с экосистемой, как он работает под капотом (много кто от нечего делать в исходниках лазит?), на все вопросы дает исчерпывающие ответы, идеальный кандидат. Но хочет 150. Или приходит такой вхожденец в айти. На собеседовании мычит, на что-то отвечает, о чем-то слышал, знает синтаксис языка. И хочет всего 70. Ну и что, что потом переделывать за ним все и тратить время на ревью — зато дешевле и в бюджет влезаем. Так что берем его. А там научится (нет).
выкраили из колуаров

Выкроили из кулуаров.
Isolation — как правило, но в зависимости от контекста может быть и Intrusion, или еще чем-то.
Почему на хабре так много статьей с кликбейтными названиями и водой внутри, так и должно быть?)
Я за прошлый год проходил собеседования в несколько компаний и везде один и те же вопросы: какие паттерны программирования вы знаете, какие типы индексов существуют, как вы ищете затык в производительности, какая функция быстрее работает — эта или эта, и так далее.
Да, я много чего в своей работе использовал, для немалой части из этого я не знаю даже названия, но знаю, что оно лучше подходит в данной ситуации. А если есть проблема, для которой я не знаю сходу решения — всегда можно изучить вопрос и найти это решение.

Только одно собеседование кардинально выделялось из общей массы, разговор шел тет-а-тет с техдиром, он распросил с какими технологиями я работал, а потом мы разговаривали про различные проблемы на их проекте и на моих прошлых проектах, и как эти проблемы решались или можно решить. Это был увлекательный полуторачасовой разговор, после которого мне предложили работу с хорошей зарплатой.
Всегда спрашивал кандидатов, что они делали раньше, как они могут об этом рассказать. Исходил из пословицы: «Кто ясно мыслит — тот ясно излагает».
И убойный вопрос: «Если Вы писали диплом, расскажите о нем.» Тут сразу отлетают те, кто сдавал по «не своему» диплому. От таких людей в производстве (тех же программ) проку немного — ведь причин для неписания диплома при окончании ВУЗа только две: лень или неумность. Есть еще презрение к навязанной практике обучения — такой работник и в подразделении будет идти наискосок (если не в обратном направлении).
Если наниматель отбирает кандидата по узкому/широкому набору знаний, востребованному в данной конторе здесь и сейчас, игнорируя его прошлый опыт, то речь идет об одной задаче, а что делать потом, наниматель и сам толком не знает.
А ведь потом придется переучиваться всей конторе :)
Мне бы про свой диплом было банально стыдно рассказывать) Убогое поделие на 1с которое 1сник с опытом сваяет за пару-тройку вечеров, да еще и текст диплома на 90% из воды)))
Мой диплом тоже «поделие», которое опытный программер сейчас сваяет, даже не заметив. Но это из-за развития технологий — в тот момент, когда оно писалось — там это было как минимум задачкой на подумать, даже для опытного спеца.
Ну я свой диплом писал в 14 году, так что тогда уже все было. Другое дело что я на тот момент только года 3 как заполучил себе компьютер, и потому в программировании на момент написания диплома разбирался как свинья в апельсинах).
«Вы нам не подходите». Человек, учащийся на ИТ и не смогший за 3 года (!) набрать из бу/списанного барахла минимально рабочий инструмент — с ним что-то явно не то.
Дипломная работа и не должна быть какой-то прорывной и инновационной. Это просто обычная инженерная задача, которая демонстрирует, что вы выучились на обычного инженера и способны с ней справиться.

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

Это же студент пишет, там ВСЕ для него новое.

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

У нас тоже требовали. Ну как, скорее делали вид, хотя это и к лучшему.

А что делать если что не новшество то легко гуглится? Уже не инженер?

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

Студенческие дипломы с рацухой от работающих студентов — это вполне обычное явление. Вот только: качество… пожалуй лучше умолчать, новизна отсутствует как класс, аналоги притянуты за уши, ибо реальной причиной является «насяльника сказала делать так», код… если соблюдают кодстайл, то код уже автоматом отличный. Помимо всего прочего, проект все еще на стадии разработки, а то и проектирования, т.к. всегда найдут более важные задачи для такой полезной трудовой единицы, как студент-дипломник.

Магистерские работы — полностью аналогично, за очень редким исключением.

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

PS. Уже лет 7 в ГЭК:)
Упс, опечатка. ГАК — которая государственная аттестационная комиссия. Те самые плохие люди, которые валят студентов на защите.

Посевы сохнут, запасы истощаются… Поторопись, Избранный! :D

Вам не кажется, что сама по себе идея — ожидать реальное полезное рацпредложение от студента, который позавчера пришёл на практику и только-только разобрался, в чём состоит работа и задача — это нечто утопическое? Может быть в далекие времена, когда инженеры были редкой уважаемой птицей, могло быть такое, что на практику типа прислали студента и он что-то придумал, до чего вокруг никто не додумался, но сегодня… Очень сомневаюсь.
Да собственно ничего утопического. Заочники поголовно работают, многие даже по специальности. Да и среди очников попадаются те, кто работает уже год-два. И если ты не водпресс-манки в мелкой студии, то особых проблем ни с темой, ни с новизной быть уже не должно. Но в реале приносят дипломник в MS Access со справкой о внедрении и лютым говнокодом внутри.

Впрочим мой опыт был еще жестче: пришел на работу за пол года до защиты, получил аппаратуру, ноут и приказ подружить это все. Что получилось, уже проходило по всем критериям новизны и отличия от аналогов, правда на диплом я выбрал еще более амбициозный проект, но это уже совсем другая история.
Вот честно — уже 5 лет работаю но у меня даже близко нет идей что можно придумать нового что не будет банальной компиляцией из давно придуманных идей, а то и вовсе аналогом чего то уже сделанного другими в лучшем случае просто с другим сочетанием плюсов и минусов.
Какую нибудь библиотеку — так их уже сотни тысяч на любой вкус и идея в любом случае новизной блистать не будет. Фреймворк — аналогично, да и за ограниченное, довольно небольшое время дальше прототипа особо не уйдешь. Какую нибудь законченную систему — так где тут новизна (если это не разработка какого нибудь альфа-го, но боюсь если мы будем такие требования к студентам предъявлять у нас вузы будут заканчивать единицы на всю страну)
А с чего вы взяли, что банальная компиляция из идей, которую еще не реализовали на вашем используемом стеке/фреймворке/CMS/языке, нельзя использовать? Дипломная работа же не научная, у нее критерии новизны намного проще. А если вы придумаете что-то уникально новое в своей сфере, то это уже уровень диссертации будет.

Так что любой проект уровня мелкой вспомогательной либы на гитхабе — это уже вполне достаточно. Проект Скайнета от студента никто не ждет и не требует.
Ну так мы обсуждаем текущие требования по которым в принципе и поделие на MS Access/1с сойдет за дипломную работу, либо же гипотетические? И где та граница?
Поделие MS Access не блещет даже мнимой новизной, качеством исполнения, полезностью или соответствию законодательству. Но на все есть распоряжение ректора: студентов на дипломе не резать:)
Так что гипотетически большая часть текущих дипломных работы не должна проходить ГАК, от слова вообще. Практически же защищаются даже с синдромом дауна (без шуток, реальный случай), когда не то, что диплом сделать, а даже речь прочитать не может. Но за счет одного дауна учится пара бюджетников, так что рыночная экономика в действии.

Но попадаются и нормальные работы. Даже АРМы с сайтами бывают вполне нормального уровня оформления, где защищают не «я сделал <название из темы>», а фактически отдельные модули, которые пилили или допиливали сами.

А граница проста: студент должен продемонстрировать полученные навыки, но в тоже время не должен делать полную копию чего либо.
Как я уже упоминал в этой ветке: любая инженерная работа в какой-то степени содержит новизну, иначе в ней нет смысла. Речь же в данном случае о том, что раньше в дипломе ожидали каких-то значимых рационализаций, на уровне «Иван Петров, пока проходил практику на нашем заводе, внедрил автоматизацию в цеху продольно-поперечного проката, в результате чего выход готовой продукции „на гора“ вырос на 12.4%».
Мне кажется, раньше ситуация была другая: в институте людям давали знания, которых, вероятно, реально не хватало где-то на местах. А сейчас что такого может сделать студент, что реально не сделали люди, у которых он проходит практику и делает дипломную работу? Такое возможно, но маловероятно.
Поэтому хороший диплом, по крайней мере у разработчиков, — это качественное решение нормальной добротной задачи, с подробным описанием и оценкой экономической пользы.
Любая выполенная на рабочем месте задача оказывает экономический эффект. Новая либа для работы с CSV — -1 час трудозатрат на работу с этими файлами для каждого разработчика, и т.п. Значимых рацпредложений от студента никто никогда не ждал. Вспомните даже старую поговорку: теперь забудте все, чему вас учили, будем учиться работать.

Потому хороший диплом у разработчика: качественное решение ЛЮБОЙ задачи. А оформление и экономическую пользу все равно заставят допилить во время оформления диплома, было бы что оформлять.:)
Потому хороший диплом у разработчика: качественное решение ЛЮБОЙ задачи.

Так об этом и говорю
Люблю дебаты, когда у обоих одна и таже точка зрения))
Да, мир и согласие!
И убойный вопрос: «Если Вы писали диплом, расскажите о нем.» Тут сразу отлетают те, кто сдавал по «не своему» диплому.

Спасибо, пополню свою личную копилку — это и правда отличный вопрос. Кто делал самостоятельно, тот и через 20 лет вспомнит как минимум основное, а кто не сам — того и через пяток лет вопрос уже в полный тупик поставит.
Хм, у меня тема диплома (на самом деле диссертации, но не суть) прямо в CV написана, под пунктом об образовании. Если работа по профилю образования, то это отличное приглашение нанимающего к разговору и вопрос, на который собеседуемый точно знает ответ)
вопрос, на который собеседуемый точно знает ответ)

Вы не представляете, какие кандидаты иногда приходят.

А также сразу отлетают те кто диплом получал лет двадцать назад.
А так же порождает вопрос: зачем меня вообще про диплом спрашивают? Как это к работе относится? )
Я получал свой диплом 17 лет назад, и вкратце о нём спокойно расскажу — то, что ты сам руками полгода пилил, так просто не забывается.
Еще как забывается. Не забывается только если ты после этого больше вообще ничего не делал! Бывает открываешь какой-то класс годичной давности, а там… «Что это за говно? Кто вообще так умудрился?» Смотришь аннотации — а это ты и писал о_О
Наверное, сильно зависит и от человека, и от эмоций. Я вряд ли вспомню бОльшую часть из тонн кода, что я написал за свою жизнь. Но вот свой диплом 20 лет назад я помню очень даже неплохо, и про что, и как софтина работала, и как защищал.
Все что я помню про свой диплом — что код был сплошным говнокодом. Ибо прогаммирование я как раз примерно в том году начинал осваивать. Хотя это было в 2014 году. Защитная реакция психики, неприятные воспоминания забываются.
Все что я помню про свой диплом — что код был сплошным говнокодом

Скажем так, он вполне соответствовал тому, что обычно пишут студенты. Поэтому в общем-то и не стыдно, и даже внимания на это нет смысла обращать.
Тем не менее это последнее что я хотел бы обсуждать на собеседовании. Да и сильно его забыл по этой причине уже.
Ну а разве про него вас сейчас, при наличии шестилетнего опыта за спиной, кто-то ещё спрашивает?
Ну так вся эта ветка тому посвящена)

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

Я уже спустя месяц после сдачи даже не помнил какая тема диплома была) хотя делал всё сам и с интересом.

Двадцатилетие моего диплома ещё не наступило, но уже недалеко. И я его помню. Потому что он был рожден лично и в муках. Детали, конечно, уже не расскажу, но в общих чертах — вообще без проблем.

Я даже помню дипломы пары-тройки однокурсников — у кого темы были мне интересны.
Ну а я работал не по диплому, и диплом писался на отвали. (Своё 4 получил)

Их ещё раньше отсеют. По возрасту.

Они отлетают по другой причине — работодатели считают их старыми.
А диплом-то как раз многие в таком возрасте помнят гораздо лучше, если вы понимаете о чем я.

Да, для статистики, моему диплому куда больше 20 лет, и я в состоянии много чего оттуда воспроизвести.

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


То естъ первые года два-три такой вопрос наверное ещё имел смысл, а вот потом уже наверное лучше про более-менее актуальные проекты спрашивать.

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

Процесс написания диплома 20 лет назад позволяет лучше понять, что вы сейчас за человек?

Не процесс написания диплома, а его рассказ о своём дипломе. Или его нежелание рассказывать о своём дипломе. Всё это нормальная беседа, знакомство с человеком, который возможно будет твоим коллегой, что в этом такого?
Диплом — это хорошо. Я свой диплом (10 лет назад было) писал примерно неделю, и параллельно взял первый свой «левый» диплом на заказ (это был диплом для студента НГТУ, Новосибирского тех.университета). Писал всё руками, даже картинки нарисовал все в Paint'е попиксельно, антиплагиат работ зашкалил. С тех пор примерно раз в год беру какой-нибудь диплом на заказ, чтобы голова не тупела, и делаю так же хорошо; как для себя. Для интереса ввязываюсь в области, с которыми напрямую не знаком, или пытаюсь закончить в рекордные сроки. Последние несколько штук за день написал с нуля. С таким подходом в любом дипломе каждая строка текста — «родная». Только как это поможет? У меня диплом об образовании почти нигде не спрашивали(а там есть что показать), не то чтобы про мою дипломную работу.
Но не сказал бы что это особо поможет работодателю понять какой я сейчас разработчик.

Говорить про это долго и подробно едва ли имеет смысл. А вот просто узнать, помнит ли вообще соискатель про свой диплом — это вполне. Если не помнит — это звоночек. Слишком серьезно на этом зацикливаться не стоит, для найма важны другие вещи, но как фактор отсева в ситуации «прочих равных» — вполне сгодится. То, что человек ничего не может сказать про свой диплом — ни о чём хорошем не говорит.
Кто делал не сам, тех прямо на защите в тупик ставят.
Вы слишком оптимистичного мнения о нашем образовании.
Это скорее мнение об утверждении про «пяток лет», нежели об образовании)
Сделал с десяток дипломов на заказ, у всех студентов были пятерки, я всегда уточнял ради интереса. Последняя дипломная подытожила красный диплом заказчику. Один раз только четверка была — знакомый обратился за сутки до сдачи и просто не успел всё выучить, и плавал в материале
Как у людей про диплом пригорает, аж минусят. Я свой диплом до сих пор помню и рассказать всё могу. Автоматизация очистных сооружений с написанием софта в ПЛК и визуализацией.
UFO landed and left these words here
Если вы химик — то почему бы и да.
UFO landed and left these words here
Кто не сам, того вопрос поставит в тупик даже сразу после защиты (не говоря уже про вопросы на защите).
А кто сам, то спрашивать надо: что вы сделали не так в своей дипломной работе? Правда с определенного момента ответ будет только один: все.
UFO landed and left these words here
На собеседовании было бы интересно послушать, как человек об этом будет рассказывать.
Так и запишем, работодателю ваш диплом нужен для того, чтобы на собеседовании послушать, как интересно вы будете о нем рассказывать.
Видимо больше «хорошему» кандидату рассказать не о чем.
Откуда такие выводы? Вроде никто ничего подобного не утверждает.
Диплом, если и нужен работодателю, то только для того, чтобы закрыть нужные требования по лицензиям/тендерам. А на собеседовании — это просто тема для разговора.
«Какая твоя любимая пони?» тоже тема для разговора. Но на собеседовании она будет не очень уместна. Собеседование — это все-таки не беседа в баре с друзьями.
Именно поэтому диплом — вполне нормальная смежная тема, а «любимая пони» — не особо.
Ну вот тема моего диплома — адаптивный фильтр Калмана-Бюси. Там чистый матан и к программированию всё это относится крайне отдаленно.
Я бы спросил, что это, из какой области (выяснил бы, что вы занимались теорией управления и статистическими методами, а это уже полезные смежные знания для разработчика). Спросил бы, как это можно применить, и была ли какая-то прикладная часть в дипломе (что именно адаптивного, получается, было приделано).

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

И как я уже говорил в другой ветке, если кандидату не хочется об этом рассказывать, видно что ему всё это не нравится — не надо его форсить, просто отметить для себя его нежелание делиться чем-то, что выходит за пределы задачи.
А с какой целью вы все перечисленное хотите выяснить? Область деятельности будущего сотрудника связана со всем этим или просто чтобы было?
И вот эти разговоры из разряда «чтобы было» больше всего раздражают.
Зачем высправшивать человека об особенностях сортировки деревьев, например, если его собеседуют на должность разработчика ПО для микроконтроллеров и ни один здравомыслящий разработчик применит готовое библиотченое решение, а не займется созданием собственного велосипеда с треугольными колесами?
Вот как раз на микроконтроллерах готовых библиотечных решений по балансированным деревьям очень негусто. И впрямую применить что-то из «общепринятого» кода из интернета тоже не получается — API не те, не лезут в мелкий эмбеддед (в применении к чужим реализациям деревьев как раз очень иллюстративно получается: я не видел пока ни одной чужой реализации балансированных деревьев, которая не хочет памяти из кучи).
Да и вообще, как эмбеддер говорю: не надо в эмбеддеде бояться треугольных колес.
Вопрос то в том, нужен этот самый велосипед или нет. Часто ли на микроконтроллере двигателя нужно сортировать деревья? Мне лично подобным заниматься не приходилось.
Именно сортировать — не приходится, так как балансированное дерево уже само по себе сортированное в любой момент времени :)
А если речь идет вообще о применении деревьев в микроконтроллерных проектах — ну, иногда приходится. Я вот сейчас страдаю от того, что в свое время не довел до ума свою пригодную для микроконтроллеров реализацию андерсоновских деревьев, без них приходится думать о производительности в одном критичном модуле, где с деревьями думать было бы не надо. Возможно, даже придется таки доделать эти деревья, там глючил только один краевой случай перебалансировки при удалении.
А в чём проблема перегрузить оператор new, и выделять память для узлов дерева не из кучи, а из отдельного пула? Тогда можно пользоваться реализацией из STL, и никаких велосипедов. Правда, самому мне так делать не доводилось, потому что необходимости не было.
Проблема в том, что этот пул тоже надо создать, и знать заранее его размер (и, скорее всего, отдельно обрабатывать ситуации, когда объект для вставки в дерево есть, а под управляющую структуру памяти в пуле уже нет).
А можно от всего этого bloat-а уйти, если управляющие структуры просто с собой таскать, в стиле структур из линуксового ядра: подструктура в качестве управляющей структуры, и container_of() для получения «прикладного» элемента по указателю на управляющую структуру. Заодно решаются всякие сложности со вставлением одного и того же «прикладного» элемента в несколько разных контейнеров — получается лаконично и запутаться сложно.
А вы попробуйте разговорить интроверта :) Особенно когда сразу видно — человек адски зажат от самого факта собеседования. И только от его любимой темы можно хоть как то перейти к собственно профессиональному разговору. Например, попросить перечислить виды и семейства этих пони и попросить спроектировать структуру данных для хранения описаний. Или интерфейс для сайта по обмену мнениями об оных…
Может это со мной что-то не так, но я бы нахрен свалил после пары таких вопросов. Работодателя касаются только мои профессиональные навыки, остальное — это не его дело.

Если собеседующий не может адекватно оценить профессиональные качества по ответу на какой-либо вопрос, то его просто не нужно задавать. Потому что просто игнорировать какую-то информацию крайне сложно, и в итоге на решение собеседующего будет влиять заведомо неадекватная оценка. Так зачем искусственно вносить такие искажения? Я уж молчу, что собеседующий тратит время кандидата подобными вопросами «за жизнь».
Профессиональные навыки не работают в офисе сами по себе, они всегда прилагаются к человеку, которому нужно будет общаться с коллегами.
Крайне редко где производственный процесс выстроен и отлажен таким образом, что люди действительно контактируют друг с другом только «профессиональными навыками».
Именно поэтому, как тут уже кто-то отмечал, компании ищут работника, который впишется в корпоративную культуру — и это едва ли не так же важно, как его умение кодить.
В этом смысле, тот факт, что вы бы свалили после таких вопросов — это удачное завершение собеседования с обеих сторон.
UFO landed and left these words here

Ого, тоже моделировал этот вопрос, но для сверхкритической хроматографии, бывает же)

UFO landed and left these words here

У меня путь более прямой) учился на факультете кибернетики в РХТУ и на дипломе начал моделировать диффузию в пористых телах. Потом продолжил тему в кандидатской — вот в качестве интересующего процесса, где была бы и диффузия и адсорбция в сверхкритической среде и в пористом теле взяли сверхкритическую флюидную хроматографию. Научная группа плотно занимается изучением таких вещей, вот и выдали мне расчетный комп с GPU, так что я ещё в 2008 начал писать на CUDA, ещё на релизе 2.3, кажется. На моей кафедре программирование давалось нормально: каждый семестр был один предмет на новом ЯП, так что диплом/кандидатскую писал на С/С++ и питоне — хорошее было время) И задача интересная, и в лаборатории побывал и в целом с людьми хорошими пообщался, про HPLC в том числе)

UFO landed and left these words here

Если человек заявил, что имеет законченное во и при этом нет диплома, это наводит на нехорошие мысли.

У меня высшее. Плюс интернатура, ординатура и аспирантура. А диплома не было) И курсовых не было)

А вас слова "интернатура, ординатура" не настораживают? У человека не инженерное высшее. Он, насколько я понимаю, на врача учился (именно оттуда возникают "интернатура, ординатура"). Вот за аспирантуру — не скажу, там можно было и по другой линейке пойти, но там один фиг диплома не будет. В случае успеха там делается и защищается диссертация, а получается степень — к(*)н.

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

Представил:
"А зачётной работой была операция по удалению у (не знаю как у медиков, но предположу вымышленную версию) поросёнка опухоли, примерно в том месте где вы пару минут назад чесали затылок… "
… далее звук падения со стула hr…
:)

Не везде дипломная работа — это часть степени. У меня первая израильская, math & CS, двадцатилетней давности, без диплома.

Вот просто даже интересно, а если человек диплом не писал? Ну вот закончил медицинский институт, а потом ушел в другое направление и уже, как минимум, не писал диплом?
Ну, у меня два друга вообще без вышки работают программистами, с исключительно ясным и системным мышлением. Такого уровня программистов даже с вышкой надо ещё постараться найти. Один из них написал для других 3 или 4 диплома.
Хотя и им образование было бы не лишним — алмазы требуют огранки.
Хотя и им образование было бы не лишним — алмазы требуют огранки

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

p.s. шучу конечно, но как говорится в каждой шутке есть доля…
Ну у меня так — я с 4го курса ушёл от скуки. Написал половине группы дипломы потом, сам так и не получил вышки. Из всей группы программистом работаю я один
Тогда послушать насколько интересно они об этом расскажут
В конце 90х у студентов ехСССР еще был выбор- пишешь диплом или лишний ГОСэкзамен.
Меня лично до диплома не допустили так как в нашем областном центре не нашлось 3 специалистов для написания рецензии по данному вопросу, а с коллегами из соседних ВУЗов региона наши спец-ы разругались вдрызг.
Ваше мнение не понравилось людям, слишком уж вы радикально говорите о тех, кто не может про свой диплом рассказать. Но сути не меняет, я с вами согласен. Вопрос про диплом очень даже хорошо смотрится на собеседовании. Притом, он не только раскрывает собеседуемого, он еще и может кое что рассказать про собеседующего. Был на собесе, где тех. спец. загуглил тему моего диплома, почитал про суть, и некоторое время поддерживал со мной разговор на эту тему. Для меня это хороший знак, компания дает возможность своим спецам подготовиться к собесу, а спецы заинтересованы взять человека c широким кругозором и нормальным образованием
UFO landed and left these words here

На собеседовании проверяют не только текущие навыки программирования. Те кандидаты, которые это понимают, при равных навыках программирования имеют преимущество. :)

UFO landed and left these words here
Стоит учитывать скорость приобретения навыка в единицу времени.
Один 1000 учил английский и дорос с А1 до В2, второй тоже учил английский 1000 часов, но с А1 дорос только до А2.
Кому-то, чтоб понять новую технологию, надо 100 часов, кому-то 500.
UFO landed and left these words here
А у меня образование — провизор по специальности фармация, и вместа диплома госы. Свои стандарты, диплом только отличникам давали писать. При этом, работаю, начальство довольно.
Лень, нетерпение и самомнение — три главных добродетели программиста. © Ларри Уолл
Проектирование плавучей судовой ядерной энергоустановки мощностью 60 МВт.
Поговорим?

Танковый балвычислитель.
Почему бы и не поговорить :)
Обменяемся секретиками.
"Если диплома нет" — как уже сказали, "звоночек" и требует от собеседующего смены алгоритма.
Работал с тремя хорошими программистами ( по делам их судите их): с профильным образованием, со смежным (радиоэлектроника, там программирование преподавали), и без образования (диплом получил потом в филиале вуза, знал больше преподов, но корочки в СНГ очень помогают). Разные бывают пути в профессию, — а вы ждали более оригинального?

Это называется «а вы точно не хотите заграницу в ближайшие 5 лет? тогда распишитесь вот тут».
Это диплом, студенческий? Какой ВУЗ?
ИМХО, крутовата тема для всего лишь диплома. Даже дисер — и то слишком общо.
Больше похоже на монографию. Или мемуары.
Диплом, студенческий, специалиста. СПбГМТУ.
Конечно, уже 6 лет прошло после защиты, но диплом был основательный. Расчёт размеров конструкций: от самого блока до ТВЭЛов; какие хим.элементы будут использоваться как топливо; как реализуются контура; чертежи-чертежи-чертежи…
Скажу так: мало мне не показалось, благо — преподаватель смог заинтересовать и всячески помогал и принимал участие.
Только вот незадача: к разработке ПО — это не имеет никакого отношения. Но если посмотреть с другой стороны, то это показывает то, что если я с этой темой разобрался и смог защитить диплом, то наверное и с веб-проектом условного интернет-магазина я тоже смогу справиться.
Собственно вопрос вот в чем: неужели вчерашний студент (пусть даже и с преподавателем) в состоянии спроектировать такой объект? или руководить проектными работами? Мне почему-то кажется, что это роль для ГК с 30летним опытом и коллектива человек в 300. Результат нескольких лет работы в виде чертежей и техдока надо будет везти на… газели хотя бы.
А такого рода диплом — просто дайджест, не больше.

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

В таких ситуациях "дьявол прячется в деталях", и в общем, на мой взгляд, тут есть некоторое пересечение с ИТ, когда сначала "набрасывают" прототип, разделяют на блоки и доводят идею до реального продукта который можно применять, просто у АЭС и т.п. деталей намного больше и технический долг недопустим :)
(В конторе по разработке для АЭС работал, чертежи делал...)

Ну, хоть я и совсем не из этих тем, но миллион лет назад участвовал в одном хозрасчетном проекте с тегами радиационная, АЭС, система, контроль, безопасность. И еще довольно неплохо помню, сколько народу было задействовано там, а ведь это очень маленький кусочек целого проекта. Более того — необязательный: к тому моменту та конкретная АЭСка уже не один год успешно работала. Просто бесконтрольно :-) ну, точнее, контроль был неавтоматическим.

А тут — диплом! Вероятно, я чего-то не понимаю.
А такого рода диплом — просто дайджест

Это скорее эскизный проект — расчёт параметров, габаритов, общей компоновки, блочной схемы управления и регулирования, прикидочная оценка эффективности — всё это без детализации вплоть до каждой трубки, клапана, электродетали. Нормальная дипломная работа в областях, где своими руками что-то сделать недоступно по цене, поэтому остаётся только считать — это игровая ситуация: воображаем себя Главным Инженером, на вход которого подают ТЗ с требуемыми характеристиками, на выходе получается более-менее технически-обоснованный набросок, как это примерно будет выглядеть и сколько стоить, а скучные детали и производство горы документации отдаём сотрудникам помладше :)

А почему ядерной, а не атомной?
Для поиска технических специалистов может и норм вопрос, но скорее похоже на какую-то месть за то что вы писали свой диплом сами. К примеру для продаж я бы искал людей с высшим образованием которые бы ничего не знали о своем дипломе, но при этом помнили цвет глаз секретаря в приемной или ФИО рекрутера который направил их на собеседование.
P.S. Сразу уточню)) учился я ОЧЕНЬ плохо, в дипломе не написал ни строчки — прокрастинация наше все. Пока эту проблему не решил, продвинутся в своем развитие так и не получилось)) Но решил я ее уже после универа, спасибо психологам
Практика показывает, что это не совсем работает.

Точнее, на этом вопросе можно сорвать джекпот, потому как если человек действительно начинает увлеченно рассказывать про свой диплом, то это практически стопроцентно хороший специалист…

А вот противоположный вариант не значит практически ничего. Ну вот не захотел человек написать нормального диплома… Что это значит? Да ничего ровным счётом…

"Что это значит?"
Вариантов три (если есть во): лень, неумелость, презрение.

Самое важное забыли: которые были когда-то. Есть ли сейчас? А чёрт его знает, по этому вопросы вычислить невозможно.

Либо адекватный выбор средства для достижения определенной цели. Вам точно нужен специалист который для типовой формочки обратной связи прикрутит туда бота с ИИ для разработки которого попросит оплатить аренду кластера? Просто потому что он увлечен и ему интересно? Диплом может быть реальным увлечением, а может быть просто средством закончить отношения с ВУЗом всех устраивающим способом. Посредственный диплом не говорит вообще ничего. Особенно если вы не в курсе как в этом заведении вообще учат и чему.

Ещё есть куча вариантов. Например, родители в этот вуз запихнули, отучился для галочки

"умение оптимизировать свой труд и не заниматься бесполезной неоплачиваемой работой"


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


А так работал с 2-3 курса универа. И мне в целом к 5 курсу было уже до фиолетовой лампочки закончу я его или нет по большей части. Приходил туда поспать после ночных смен и сдать лабы. Закончил только потому что уже потраченного времени было жаль и бросать на пол пути не рационально.


Диплом писал на коленке за вечер, ибо знал что какую фигню не напиши его все равно читать никто не будет.

Я буду считать это презрением.
Возможно, Ваш ВУЗ ещё за пару лет до поступления именовался техникумом ( причём не IT ориентации), или это был филиал, открытый в помещении музучилища (к примеру).

Ну вообще то имеет статус НИУ.


Что не отменяет того что диплом это бесполезная никому не нужная работа, за которую не платят. И что вуз не нужен если не собираешься сваливать из РФ (там нужно для галочки что у тебя вышка). А учеба на IT специальность это пустая потеря 5 лет жизни если ты не собираешься заниматься чем то фундаментальным и матаном. И выпускник любого вуза, без опыта реальной работы может рассчитывать только на работу в макдаке. Ну максимум на какаю то бесплатную стажировку по профилю.


P.S. у нас с выпуска самый успешный парень так и не забрал корочку. Ему лень было и она нафиг не нужна уже была ибо к 4 курсу он свою IT компанию открыл.

Чем глубже приходится погружаться в ИТ, тем сильнее потребность в вузовских знаниях. Можно, конечно, учить самостоятельно. Вопрос в том, насколько удачно выйдет.
После вуза, на мой взгляд, проблема не столько в практическом опыте, сколько в опыте работы, как таковой. Потому что опыт программирования никто не мешает получить в пет-проекте, а вот опыт труда за деньги, и соответствующей социализации, вряд ли.

Чем больше опыта и чем старше становлюсь. Тем меньше базовых знаний в IT требуется для работы и больше софт скиллов, если ты хочешь расти в ЗП и развиваться. Ибо с опытом тебя с удовольствием ставят на руководящие должности или просто ответственные где нужно разруливать процессы. А как специалистов ставят молоденьких ребят из универа, которые готовы фигачить что угодно за чашку риса и не задавать вопросов.

Это далеко не всегда так. У нас например все ведущие технические специалисты люди с возрастом 40+. Что программисты, что инженеры. А процессами местами рулят ребята и девчата до 30, но при этом с образованием вроде «ИТ-менеджемент» или «Бизнес-информатика».

Печально что ещё могу сказать.


Обычная компания с "эффективными менеджерами", которые не понимают и не знают что делают.

Ничего печального я в этом не вижу. Вполне себе нормальные менеджеры и нормально делают свою работу. Я бы скорее всего делал её хуже и однозначно с гораздо меньшим удовольствием.

Ну если их задача обеспечивать свежим кофеем и печенками или сидеть на собраниях то пойдут.


А вот тимлида который ничерта не понимает в IT и в том что его команда делает, спасибо мне не надо.

Тимлидов у нас вообще нет :)

Отсутствие такой должности в штатном расписании не отменяет что кто то к команде берет на себя эту обязанность.

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

Может, но не между вчерашними студентами.

Между вчерашними студентами конечно нет. Но 25-30 лет это уже не вчерашние студенты.
Ничего печального. Давно и не мной подмечено — отличный опытный инженер вовсе не обязательно окажется хотя бы неплохим менеджером. Это совершенно разные профессии, требующие разных знаний и наклонностей.

Менеджером да. Я же говорю кофе приносить и инвесторов в жопу целовать сойдут.


А вот человеком к которому джуны и мидлы будут подходить и спрашивать как что делать и человеком который тащит на себе проект, он никогда не будет. И тут уже куда важнее умение объяснить что почему и как делать и куда копать, а не давание в детали. Это они и сами в книжке прочитают.


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

Джуны и мидлы за советом по работе, подходят максимум к тимлиду, эт опо сути такой-же инженер. Выше него еще туева хуча менеджеров, чьи обязанности посложнее целования жопы и разноски кофе.
О, ларчик просто открылся. Меня руководящие должности, в плане личного роста, не интересуют. Да и вообще не интересуют, по большому счёту.

А они много кого не интересуют. Но в какой то момент на проекте оказывается что если не ты. То возьмут фиг знает кого и все пойдет через жопу.


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

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

Должность это только строчка в трудовой. Вопрос в тех обязанностях которые ты на себя берешь.


С опытом очень редко получается сидеть в своем мирке и заниматься чем то там не взаимодействуя с людьми. Хотя такие узкие специалисты есть. Но это скорее исключения.

Да, право каждого решать, на какие именно обязанности он будет затрачивать своё, путь даже оплачиваемое, время.
Ох, речь не о сидении в своём мирке. Управление банально новая сфера деятельности.

Конечно это право каждого решать.


Но по мне так если специалист с 20 летним стажем скажет что то вроде "Я вижу что мы делаем не оптимально и это работать не будет, но ничего не скажу ибо меня взяли кодить, а не управлять. зато мой алгоритм работает на 0.005 попугая быстрее". То это весьма хреновый специалист. Который просто протирает на работе штаны.


Ибо задача коммерческого IT специалиста сделать продукт, а не бенчмарками мерится. Для этого идите в олимпиадное программирование или в демосцену и т.д.

У вас на мой взгляд какое-то очень узкое понимание «управления» в целом и «управления процессами» в частности.

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


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


Как пример знал одного человека который про novel сети знал все. Вот прям все что не спроси знал. Теперь он никому не нужен.

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

И с чего вы вот это вот вдруг взяли? :)

P.S. Просто представьте себе с другой стороны «опытного менеджера», который вдруг начинает везде лезть и рассказывать программистам как им надо код писать. Ведь его задача тоже «сделать продукт» и ему тоже надо развиваться и не быть «исключительно узким специалистом» :)
Специалист действует в рамках своей зоны ответственности. Его мнение имеет в указанных рамках вес. Или, по крайней мере, должно иметь. Вот здесь он обязан высказываться. И, по идее, его мнение должны принять во внимание.

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

Да, будучи руководителем, он имеет право высказываться и его должны выслушать по поводу того, что, будь он на старом месте, могли раньше проигнорировать. Вина ли его, если он не боролся за место ради цели быть услышанным? Нет, так я не думаю.

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

Т.е. должны сложиться определённые условия. Редкий случай человека в определённой ситуации. Отсюда, нельзя делать общий вывод, т.к. подобные ситуации редки и они являются не целями, а постепенно формируются в процессе трудовой деятельности. Нет в них чистого карьерного роста, который можно было бы спрогнозировать.
Это если вы растете как менеджер, а не как специалист.
Чем чаще я слышу подобное, тем отчётливее убеждаюсь в том, что стране не следует оплачивать так много бюджетных мест для бесплатного высшего образования.
С одной стороны, слишком много людей не ценят того, что им достаётся бесплатно. С другой стороны, плодятся вузы, не годные ни на что, кроме распила денег и прохождения аттестации.
Проблема не в количестве бюджетных мест, а в неадекватных требования по наличию высшего образования к месту и не к месту. Не будут требовать высшего образования там где его реально не надо — не будут люди так стремиться получить корочку, а будут стремиться получить знания (те, кому они нужны).

Как Вы думаете — нужно ли программистам высшее образование?
И как вы думаете — требуют ли его? )
И пункт третий: как вы думаете, какие знания остаются через 1-2-5 лет после выпуска?
PS Искали человека с опытом С/С++, знанием математики и опытом с параллельными вычислениями, нашёлся единственный специалист возрастом в 61год, сидит, переносит пару полезных библиотек на CUDA, ибо или люди математику уже (ещё?) не помнят, или С не знают.
И пункт третий: как вы думаете, какие знания остаются через 1-2-5 лет после выпуска?

Ну по моему опыту если человек что-то один раз понял или хотя бы выучил, то он уже знает что это существует в природе. А во вторых вспомнить это всё через 5-10-15 лет гораздо проще чем выучить с нуля. Ну или как минимум мой мозг именно так работает.

ибо или люди математику уже (ещё?) не помнят, или С не знают.

Или просто не хотят такими вещами заниматься за те деньги что вы им предлагали :)
Как Вы думаете — нужно ли программистам высшее образование?

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

Вообще, требования по высшему образованию напрямую происходят из законодательства. У тебя, к примеру, не может быть в штате программиста без высшего, ты можешь назвать его только техником. Соответственно, не пройдешь какие-то тендерные условия по софту, не получишь лицензии по безопасности на свои продукты и т.д. Так что очень часто это никакая не прихоть эйчаров, а реальное жёсткое требование бизнеса.
Вообще, требования по высшему образованию напрямую происходят из законодательства. У тебя, к примеру, не может быть в штате программиста без высшего, ты можешь назвать его только техником.

Мне интересно было бы посмотреть где и как конкретно это прописано в законодательстве.
Гуглите: «профессиональный стандарт программист», ну в целом про статус профессиональных стандартов.
Какой занимательнейщий образчик бюрократии. Спасибо, не знал что такое существует :)

Но кстати там чтобы называться именно программистом ВО вроде бы и не обязательно. По крайней мере по тому что я смог найти по быстрому.
Назваться-то иначе не проблема, если есть открытая ставка или как оно там называется. Только зарплата окажется ниже.
Уже сейчас люди без высшего образования испытывают, в ряде случаев, проблемы с трудоустройством.
Это полностью зависит от сферы применения продукта. Там, где велика ответственность и цена ошибки, я считаю, должны работать люди с высшим образованием, потому что это просто показатель определённой инженерной культуры. ПО для транспортных систем, медицинского оборудования, финансовых приложений, оперирующих деньгами и проч. — я бы хотел, чтобы этим занимались люди с достаточной широтой знаний и системным мышлением. А вот всякие веб-сервисы делать или мобильные приложения для заказа кофе, — для этого действительно долго учиться не обязательно.
Может, достаточно что бы на этих должностях были люди с широкими знаниями и системным мышлением и инженерной культурой?
А ещё лучше — знаниями и опытом?

Да и… думаете у специалиста с 10, к примеру, годами опыта работы с ВО и у специалиста с 10 годами опыта работы без ВО будет очень разный уровень широты знаний, инженерной культуры и системного мышления (ну пусть опыт работы у них будет примерно одинаковый)?
А 20 лет?

Я не к тому, что бы сказать что ВО не нужно. Я к тому, что бы вы реально задали эти вопросы себе.

То что джуны с ВО скорее всего знают и умеют чуть больше — это вполне возможно. Но… джуны это очень узкая область и их и так и так не будут брать на что то серьёзное ещё очень долго.

ЗЫ: ну, про требования законодательства — это сильно за уши притянуто. Но пусть будет так — это как раз то о чём я и говорил — неадекватное требование к наличию ВО.
Я к тому, что бы вы реально задали эти вопросы себе

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

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

Я не прошу людей показать диплом на собеседовании, и у меня не возникнет никаких проблем с образованным человеком без диплома. Мне хочется видеть сотрудника с образованием, диплом — это некий маркер, который, плюс ко всему, нужен для отдела кадров, чтобы соблюсти все придирки ТК. Поэтому в наших вакансиях такое написано.
Мне хочется видеть сотрудника с образованием, диплом — это некий маркер, который, плюс ко всему, нужен для отдела кадров, чтобы соблюсти все придирки ТК. Поэтому в наших вакансиях такое написано.
Ну вот поэтому и такая ситуация с ВО. Маркер нужен всем, по делу и без дела — поэтому «маркер» и продают/покупают или отсиживают ради его наличия, а не знаний. И, раз есть спрос — есть и предложение.
=)
Не очень понимаю, зачем пытаться разговаривать со мной так, как будто я студент на семинаре. Я думал на эту тему ещё пятнадцать лет назад, когда был студентом и искал работу, думал и семь лет назад, когда искал сотрудников себе в помощь, думаю и сегодня, когда участвую в найме в нашу компанию.

Прошу прощения, если мой тон вам показался снисходительным или лекторским. Ничего такого не имел в виду )

НИУ… Случайно, не МИЭТ?
Без корочек в СНГ тоже непросто. Работал в корпорации, постоянно кадровые чистки по дипломам (понятно, что блатных не затронут, но безродным приходится напрягаться), и по наличию и по соответствию требованиям к занимаемой должности. Та же история с госслужбой. И даже работа в маленькой конторе не всегда спасает: регулярно сканы дипломов прикладываем к заявкам на участие в тендере.
Но если реально по знаниям и навыкам, можно ли их определить по рассказу о дипломе, можно. Иной раз человек критикует свой диплом, что только добавляет ему профессиональных баллов.

Хорошо что я не писал диплом.
Есть еще презрение к навязанной практике обучения — такой работник и в подразделении будет идти наискосок (если не в обратном направлении).

И это прекрасно, потому что он укажет на неэффективности вашего рабочего процесса(если он адекватный, а не примадонна которой всё не нравится).
Если наниматель отбирает кандидата по узкому/широкому набору знаний, востребованному в данной конторе здесь и сейчас, игнорируя его прошлый опыт, то речь идет об одной задаче, а что делать потом, наниматель и сам толком не знает.

Ага и это нормально. Есть планы на год-два-три. Нужны такие то навыки. А что там дальше — не знает НИКТО.
UFO landed and left these words here

Да какая разница писал или не писал диплом человек с 10-15 годами опыта, если он в остальном устраивает? Для меня в более выигрышной позиции был бы человек, который вместо учёбы в бестолковом вузе по программе 10-ти летней давности пошёл получать знания на работе. Ну, наверное, за исключением физиков-ядерщиков, врачей, пилотов и иных специальностей, где на работе ошибаться нельзя.

причин для неписания диплома при окончании ВУЗа только две: лень или неумность.

эм… а как насчет «в ВУЗе знания были весьма поверхностные, за то к этому моменту уже 5 лет работал по специальности и перерос в тим.лида и совладельца»?

это можно, конечно, под «презрение к навязанной практике обучения» записать, но чую вы еще мнооого вариантов отсекли и вполне толковых специалистов на рынке где и без того не всегда просто найти достойных кандидатов
UFO landed and left these words here
Соискателей с не профильным образованием не рассматриваете то есть?

А если не ИТ специальность? Ну гидравлика(не моя но один факультет) к примеру, много будет понятно? А если прочнисты? Нет я бы с удовольствием рассказал про то как на OpenGL + delphi делал визуализацию, как перводил решение с Maple в код на паскале и сделал бы ответвление о том что Паскаль изучал ещё в школе и участвовал в олимпиадах и до сих пор неуютно за нерешённую задачу про шахматы с визуализацией… Но ведь это практически не имеет отношения к тому кем я являюсь сейчас, т.к. за эти годы произошло много событий а люди со временем меняются, но мало того, их воспоминания могут сильно отличаться от того что происходило на самом деле, даже без учёта того, что очень сложно понять рассказывают ли вам то что думают или сильно фильтруют :)

Совершенно с Вами согласен — и про диплом и про «переучиваться всей конторе». Думаю, что читатели «Хабра» со стажем, прекрасно это сознают. А молодежь, которой «сделали диплом» — пусть не обижается.
Диплом сильно зависит от уровня учебного заведения и научного руководителя. Я бы например был бы рад написать что-то резонирующее с моим профилем, но МГТУ хотел другого, так что там вода водой на 90% и маленькая утилита под капотом. Зато я могу рассказать темы всех 5 дипломов, которые я делал в голодные студенческие годы для других.

Это я к чему: к сожалению, диплом (поведение в стенах ВУЗ-а) не показатель, пока с образованием беда.
И убойный вопрос: «Если Вы писали диплом, расскажите о нем.»

Интересно, что вы делаете с людьми, тема диплома которых вам вообще ни о чем не говорит.

И вы даже не можете себе это представить?

И убойный вопрос: «Если Вы писали диплом, расскажите о нем.»


Диплом пишется для того, чтобы пройти босса. Поэтому какой в вашем заведении босс, такой и диплом. Ориентироваться по диплому — это абсолютно неправильно.
(подразумеваются институты/универы в СНГ).
Да и ежу понятно, что если много ходить по собеседованиям, то можно наловчиться их хорошо проходить, даже не имея особого практического опыта. Т.к. вопросы и задачки все однотипные.
в opensource хорошо — можно поглядеть на _результаты_ работы человека до собеседования.
в отдельных случаях можно даже оценить прочие аспекты, типа коммуникабельности, английского и проч.
Да, но туда редко кто смотрит. Как-то обсуждали с коллегами этот вопрос. Но, может быть, это и к лучшему: когда я показываю кому-либо свой код, люди обычно демонстрируют поведение из соседней статьи про веб-сервер Actix & community.

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

А ещё — каждая новая порция кода, залитая на открытый GIT или SVN, имеет своего автора. По стилю и качеству авторского кода очень хорошо видно компетенцию, опыт, эстетические предпочтения и даже темперамент его создателя. Специалисты-кадровики из любой крупной фирмы могут легко составить психологический портрет каждого из ведущих разработчиков и либо переманить их у конкурентов, либо демотивировать их каким-либо образом (это не паранойя, а обыденная реальность того мира, в котором мы все пытаемся выжить).

Из данного обсуждения некоторых реалий opensource на форуме одного публичного проекта

P.S. Но это, похоже, не приемлемо для Вашего описанного случая кадровиками. :)
Простите меня, но такие специалисты-кадровики, которые знают и применяют и гит, и психологию в достаточном объеме, встречаются реже именных бриллиантов.
И если компания может позволить себе таких кадровиков — то уж сказать «чувак, вот тебе открытый бланк с требованиями к рабочему месту, зарплата *1.5 -2 от твоей текущей, вот список проектов и задач, где ты будешь полезен, пошли к нам, будешь звездой» компания тем более сможет.
Скажите, вы бы отказались от такого оффера, если задачи и проекты как минимум, не хуже/не скучнее?

В реальности когда сисадмин вам пишет что с бд у него всё замечательно… ты спрашиваешь че такое эйсид и зачем нужны индексы, а он говорит "что? а для этого есть сетевик"… хочется выбить лицензию на убийства.

А сисадмин то тут причём? ДБА такие вопросы нужно задавать. А вот если он (что сисадмин что ДБА) говорит что нужен сетевик для этого, тогда да, печаль беда.
При том, что хотелось бы, чтобы он знал, что за это отвечает не сетевик.
Ну как это при чём? Вы ещё скажите, что сис.админ не должен 1с конфигурацию за пол-часа написать или проводку в автомобиле директора поменять.
Конечно должен, ещё юристу бумаги подписать, аудит провести и с секретаршей переспать пока шеф в отпуске.
Ремонтировал на предприятии кран Liebherr в должности сисадмина, потому что мог. Даже премию не дали.
UFO landed and left these words here

Сисадмину нужно знать, что если в приложении используются транзакции с изоляцией, то для MySQL это гарантированно означает InnoDB. А если InnoDB storage никто не чистит, то оно распухнет и выжрет все место на диске.

А вы точно-точно не путаете системного администратора с администратором баз данных?

В наших неидеальных реалиях это часто один и тот же субъект...

UFO landed and left these words here

Ну, идеальная картина мира-то мне известна.


Только очень часто всякие БД не являются сильно критичными и важными для инфраструктуры и нанимать для них отдельного DBA бизнес не очень хочет. Ну и усугубляет ситуацию распространенный нынче agile-подход где все должны делать всё.


У нас в департаменте, например, зоопарк разных баз различной степени важности — от стандартных MySQL/PostgreSQL до всякой аналитики вроде Clickhouse и вороха NoSQL Mongo/Cassandra/etc. Выделенного DBA нет, да и на мой взгляд не нужен он особо т.к. большинство из этих баз не customer-facing.


Так что зависит от ситуации.

Только очень часто всякие БД не являются сильно критичными и важными для инфраструктуры и нанимать для них отдельного DBA бизнес не очень хочет.


Если база данных не является критичной на предприятии, то уж нюансы MySQL, Postgres, MS SQL, Oracle и тем более NoSQL сисадмину знать не обязательно.

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

Вообще говоря, если я вижу контору у которой нет бюджета/желания иметь отдельно сисадмина и отдельно DBA, но при этом у нее таки зоопарк из 4-5 видов баз данных (а сколько самих БД внутри каждого сервера еще отдельный вопрос), то я бы рекомендовал такую контору обходить стороной за километр. Что-то у них там не в порядке с менеджментом.

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

agile-подход где все должны делать всё.

Можно ссылочку про то что «agile-подход = все должны делать всё.»?
Как я понимаю agile-подход, это все делают то же самое, только без нормального планирования. То есть кастрированный или обрезанный процесс разработки по части планирования. Но это не значит что девелопер должен поднимать упавший прод, а QA делать код-ревью, а DBA заниматься настройкой сетевых фильтров.
Если база данных не является критичной на предприятии, то уж нюансы MySQL, Postgres, MS SQL, Oracle и тем более NoSQL сисадмину знать не обязательно.

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


Вообще говоря, если я вижу контору у которой нет бюджета/желания иметь отдельно сисадмина и отдельно DBA, но при этом у нее таки зоопарк из 4-5 видов баз данных (а сколько самих БД внутри каждого сервера еще отдельный вопрос)

Я бы не был столь категоричен, у нас большая компания с 20к+ сотрудников, но много департаментов и везде разные порядки и требования. Есть, конечно, отделы которые облизывают исключительно
Oracle т.к. он там не просто так стоит и его простой будет стоить много денег. А есть как у нас, где почти все базы — для служебного пользования.


Можно ссылочку про то что «agile-подход = все должны делать всё.»?

Дело не в том как "в книжке", а в том как менеджмент это у себя в голове видит.


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

у нас большая компания с 20к+ сотрудников,

Но в ИТ департаменте до сих нет понимания что сисадмин и DBA это разные люди и нет бюджета чтобы нанять обоих?
Повторюсь — никому не рекомендую заходить в такую контору.
Дело не в том как «в книжке», а в том как менеджмент это у себя в голове видит.

Туда же. Есть проблемы роста. Когда люди из 90х попали на руководящие роли и контора выросла с пары человек или пары десытков человек до как у вас до 20К если менеджмент не успел вовремя все осознать и переобучиться, то не стоит тратить свое время и силы на то чтобы бороться с ветряными мельницами. Когда я иду в большую контору где работает 20К людей, я ожидаю что это они меня будут чему-то учить чего я никогда не могу и представить в маленьких или средних конторах. Но если я могу прийти и увидеть «детские» ошибки в подходах и менеджменте и внезапно оказываюсь «самым умным в комнате», в этот момент я понимаю что попал и надо срочно искать другое место работы.
. Поэтому мы реорганизовались и теперь имеем узкие специализации,

Вы уж определитесь вы имеете узкие специализации или нет. А то топик начался с того что сисадмин и DBA это должны быть разные люди с разной квалификацией. А вы как бы защищали позицию что нет.
Затем я высказался в том плане что от подобных контор стоит держаться подальше. И вы снова как бы не согласились, ссылаясь на свой опыт и видимо пытаясь сказать что у подобных контор есть некие объективные «оправдания». На мой взгляд у всего на свете есть оправдания, но это не повод тратить пару лет своей жизни на то чтобы впитывать неправильные практики, вместо того чтобы пойти в нормальное место и прокачиваться в том направлении которое реально интересно.

Я же вас лично ни на что не агитирую. Но не вижу как ваши доводы могут повлиять на мою позицию в этом вопросе. В 90-ые было модно, доходно и интересно порой быть эникейщиком. И я тоже все это делал. Но постепенно я увидел как быстро я начинаю проигрывать тем кто выбрал специализацию и пошел прокачиваться в каком-то направлении. Эникейщики по сути нужны тем руководителям которые ничего не понимают в ИТ и у которых мало денег. Тем кто ничего не понимают, но у которых есть деньги — предпочтут грамотного CTO или архитектора и отдел или департамент в подчинении у этого человека. Если же в роли такого CTO оказывается не очень компетентный человек, то, на мой взгляд, именно тогда мы и получаем обсуждаемую ситуацию. Для меня это очевидно. Для вас видимо нет. Но уровень очевидности для меня такой, что я не вижу смысла писать трактаты в комментариях. Это как объяснять «почему колесо катится, а кирпич нет», настолько очевидно, что при попытке объяснить, чувствую себя идиотом или глупцом одновременно.
DBA — администратор, а не архитектор. Очень разные роли =)
UFO landed and left these words here
Размышляю: в мои обязанности входит подъем ДБ сервера начиная с ОС и заканчивая всякими флагам трассировки, планами обслуживания, бэкапами. В промежутке снимаю статистику по самым ресурсоёмким запросам и пинаю программистов 1с на тему оптимизации… Таки я все-таки админ :-)
При том, что постоянно это указывают в резюме. Если бы не указывали — я бы и не спрашивал.
Ну да, у меня, например, с бд всё замечательно. Лежит на диске, бекапится, иногда бекапы подключаются для проверки. Хотите узнать про индексы — купите себе ДБА и… ему мозги. Можете прям меня-же(на самом деле нет, в ДБ плаваю), но за те-же деньги. А не за цену эникея.
Если понадобиться — так и будет) Но если человек в резюме прямым текстом указывает, что у него замечательные знания баз данных (тут бесчисленные перечисления продуктов), то я просто обязан узнать насколько, чтобы в случае чего акцентировать его работу на этом. По факту каждый почти админ в резюме пишет про базы данных и хорошо ещё, если это значит бэкапы, подключение, репликацию… Потому, что зачастую «ну там у нас была программа, мы в ней набирали текст и оно в базу летело». Не надо указывать в резюме то, с чем работать не умеешь. Лишняя строчка тут это минус, а не плюс.
Странные вопросы вы своему сисадмину задаете, имхо…
Ну дак не я). Человек сам себе задаёт вопрос акцентируя в резюме на этом внимание.
Про то когда валят, могу предположить несколько причин (без сортировки)
  • На самом деле вакансии нет, это бывает когда главе отдела человек не нужен, а глава департамента например думает что нужен. Или HR нужно выполнять KPI по собеседованиям не зависимо от запроса со стороны проекта, или это вакансия нужна чтобы нанять иностранного специалиста, но местной службе занятости, трудовой инспекции и миграционной службе нужно показать что такого специалиста на месте нет.
  • Молодой руководитель с задранным ЧСВ и только учащийся тому как на самом деле нужно использовать авторитет, знания, уважение и вообще софтскиллз, такой может просто так валить на собеседовании
  • Очень часто вывод о том что мы не хотим работать с этим человеком делается по его поведению, внешнему виду и прочим факторам. Многие будут это отрицать, но это действительно часто так работает. И нам нужно отказать. И многие руководители сделают вывод что проще всего завалить и человек будет думать что не подходит по скилам, а не по другим причинам. В современном лицемерном мире не принято говорить что я не хочу с тобой работать потому что ты больно дерзко отвечаешь на вопросы, и я вижу что наше общение не будет продуктивным
  • Кандидат реально не тянет. Когда я собеседовал людей на разработку графдвижка, то собеседования, в основном, поделились на два типа: 1. Люди не понимали зачем я спрашиваю те тонкости которые я спрашивал и думали что я их завалил. 2. Диалог быстро перешёл а обсуждение тонких моментов и граблей со взаимным обменом опытом и шишками и закончился оффером.
В современном лицемерном мире не принято говорить что я не хочу с тобой работать потому что ты больно дерзко отвечаешь на вопросы, и я вижу что наше общение не будет продуктивным

Тут проблема не в лицемерии а банально в трудовой инспекции которая может заинтересоваться чегойто работника не берут не по скиллам а по характеристикам мало имеющих отношения к работе (и нет, всякое «не впишется в команду» насколько знаю для них не аргумент).
Ну и еще некоторые соискатели после отказа по личным качествам такой хайп и вой поднимут на хабре/в твиттере — что репутации компании кирдык придет.
Именно это я и подразумеваю под
В современном лицемерном мире не принято говорить
Лицеме́рие — моральное качество, состоящее в том, что заведомо безнравственным поступкам (совершаемым ради эгоистических интересов, по низменным мотивам и во имя антигуманных целей) приписываются псевдоморальный смысл, возвышенные мотивы и человеколюбивые цели[1].

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

Вы забыли ещё один пункт. Иногда, по резюме кандидата понимаешь, что человек сильно круче тебя практически по всем фронтам и чтобы не ударить в грязь лицом перед начальством, начинаешь такого человека валить. Так сказать возвышаешься через унижение. У меня, конечно, опыт не такой богатый, как у автора статьи, но я тоже с таким сталкивался, причём именно в РБ (было пару собесов в Польшу, Нидерланды, Украину, Россию).

В 90% моих собеседований совершенно не смотрят на мой гитхаб. Их это не волнует. Им интереснее меня про определение ООП спросить.

банальная лень — разбираться в коде на гитхабе требует времени и усилий.
особенно актуально, если соискателей не 2-3.


ИМХО логично "спросить про определение", отсеять нескольких кандидатов, и уже у немногих оставшихся смотреть код.

UFO landed and left these words here
Вот это очень правильная вещь. Собеседование одно одновременно важно для обоих сторон. Будучи кандидатом очень важно в обратную сторону собеседовать компанию. И понимать что часто в тексте вакансии написано совсем не то что есть по факту, и оценивать нужно не те мечты которые нарисовались в голове исходя из вакансии, а то что будет реально встречено, какие отношения в коллективе, кто собеседует, какой офис и т.п.
А то, что поиск по B-tree индексам в PostgreSQL имеет логарифмическую сложность?

О! Спасибо за отличный вопрос, завтра задам его кандидату.

А если серьёзно, то я уже давно заметил одну странную вещь. Многие мои знакомые (разработчики с опытом по 15 лет) проводят собеседования. Иногда мы обсуждаем, какие вопросы они задают. И оказалось, что они периодически задают то, что узнали буквально вчера совершенно случайно. Т.е. то, без чего они 15 лет прекрасно работали, а через две недели забудут напрочь. При этом искренне удивляются, что кто-то может не ответить на такой элементарный вопрос: «Какой Senior?!!! Он же проффнепригоден!». И это удивление искреннее, у них нет ни желания специально завалить кандидата, ни как-то возвыситься за чужой счёт.

Это мне напоминает один психологический факт. Дети до какого-то возраста не могут понять сказку про Белоснежку. Почему она ест отравленное яблоко? Ведь это известно, что оно отравлено! У них в голове не укладывается то, что у другого человека может быть совершенно другой «контекст», другие знания. Может это как-то связано?
Вероятно, инфантильность это беда нашего общества.
Ну, справедливости ради про сложность поиска можно по названию типа индекса догадаться. А какая собсно еще сложность кроме логарифмической может быть при поиске в сбалансированном дереве?

B-tree — это не только balanced tree, как может показаться.


На самом деле точного ответа автор этой структуры не дал, поэтому существует два распространённых варианта: balanced (широкий класс деревьев, вообще говоря) и block (что гораздо лучше описывает конкретно эти деревья).


Главное, что совсем не binary :)

Но ведь любое B-дерево является идеально сбалансированным вне зависимости от происхождения буквы B.

Сбалансированные деревья всё же куда более широкий класс, чем блочные.

А это и не важно. Если некоторое утверждение справедливо для любого сбалансированного дерева — то оно будет справедливо и для любого блочного.

И этим простым утверждением вы доказываете то, что вам пишет оппонент. :)
Раз утверждение верно для множества (сбалансированных деревьев), то оно автоматически верно и для подмножества (блочных деревьев), ну же.

Но обратное не верно. Число случайных обращений к диску в произвольном сбалансированном дереве будет куда больше, чем у B-tree, специально для этого спроектированном.

Но оно всё равно будет логарифмическим, а ответа точнее и не требуется.

Всё так, только константа может в сотни раз отличаться :)

И что? Во-первых, это всё равно будет быстрее полного прохода по таблице. Во-вторых, автор даже асимптотику придумать не сумел.

Поздравляю, в этой ветке комментариев все получают оффер.
Получется, что ваши знакомые тоже не в курсе. Так какие вопросы нужно задавать на собеседовании? Задачки на сообразительность типа по лампочкам в вагонах определить не циклический ли поезд? Паттерны проектирования? Или про диплом опять же? (у меня есть знакомый дев опс с 9 классами образования)

Гораздо интереснее вопрос, почему Белоснежка жила с семью гномами. Количество переходит в качество? При каком N?)

Один гном не справляется, очевидно же.
Ну разбойничать на дороге одной как-то опасно.
А вот с семью краснолюдами сам-то! :-)
UFO landed and left these words here

Кхм… двусмысленно звучит такое уточнение.

UFO landed and left these words here
UFO landed and left these words here

именно чтобы написать это и пришёл в комментарии.
другое дело, что не всем нужно писать что-то связанное с БД, или таблицы очень небольшие, но раз заявляется знакомство с SQL — вопрос вполне уместный.


P.S. ИМХО это вполне нормально на собеседовании ответить не на все вопросы.

Ну в общем это базовое понимание

Серьееезно? Это знание даром ненужное, вообще, совсем.

то как ты узнаешь когда они тебе нужны

А у вас есть другие типы индексов? Второй по распространенности это pg_trgm индекс (да, внезапно на GIST но знания о существовании его — достаточно), все остальные еще более ситуационные настолько, что среднему разработчику они нужны будут примерно никогда.

Вот спросить про например GiST индексы в Postgre это было бы другое дело.

А они действительно используются в вашей компании? Не подскажите какими операторами вы используете этот индекс?

PS ну опять адепты алгоритмической сложности в карму набежали) Господа аргументы в студию, с use-case'ами)
UFO landed and left these words here
Но заявлять знание БД и не знать индексов — а собственно что он тогда знает?
«Нуу, БД состоит из плоских таблиц?»
Не знать про индексы ≠ не знать как устроены индексы.
UFO landed and left these words here
Так вам шашечки или ехать?
Возможно в таком случае не стоит заявлять о знании БД.

Так можно зайти ну очень далеко, потом идет вопрос о формате WAL, потом page-cach линуха, и так далее. А на самом деле там база, которая дохнет на жалких 100 млн строк на запросах которые писаны левой пяткой и проиндексированны правой.

Потому что знатоков которые мне ответят

Проясните пожалуйста, как устройство индекса может использоваться кем либо кроме собственно разработчика БД.
Ну я вот выше вам задал вопрос, давайте по нему составим интересную беседу?
UFO landed and left these words here
«Быстрее не становится. Даже план не поменялся и индекс не используется. Как же так???»

И вы такой: нуда! тыже не знаешь структуру b-tree, а вот знааал бы!
Он естественно унижен, идет читает, разбирается в алгоритме, проверяет свой индекс, а база ему все равно говорит «seq scan».

всё ещё не знает что индекс сделан на основе дерева

Не надо предположений, просто объясните мне, дурачку, чем это знание ему поможет.

Он что ли запомнил по примерам правила работы чёрного ящика, ускоряющего ему запросы

Огромная часть разработчиков даже на этом уровне не запоминает, вон на битрикс посмотрите.
просто объясните мне, дурачку, чем это знание ему поможет

Не вопрос, приходит менеджер к этому программисту и задает вопросы

1. У нас есть Hadoop кластер, Redis с журналированием изменения раз в минуту и mysql с терабайтной базой, что будем ставить на hdd и что на ssd и почему?

2. Нам нужно создать составной индекс у sql базы в каком порядке нам лучше добавить туда колонки? Нужно ли при наличие составного индекса по колонкам A + B + C, создавать отдельные индексы по колонкам A, B и С или мы просто потратим место на диске?

3. У нас есть множество однотипных запросов, но с производительностью все плохо. Как использовать кластерный индекс в таком случае и почему он сможет нас спасти?

4. Когда и при каких данных нужен разрежённый индекс (ключевое слово SPATIAL в mysql) и почему обычный индекс будет работать хуже?

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

я бы не стал противопоставлять теорию и практику, нужно И то, И другое.

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

Понятно что в конторе где все три роли исполняет один и тот же человек — он же и разработчик и менеджер и специалист по БД — ему приходится знать всё выше перечисленое. Но так ли Важна производительность для такой конторы, не является ли это «стрельбой из пушек по воробьям».
Менеджер с такими вопросами это утрированный образ, конечно.

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

Далее, на мой взгляд критическое мышление возможно только если хоть немного понимаешь как все работает под капотом. Помните всякие шутки с введи «format c:» или «sudo rm...»? Вот человека, которые понимает чуть как оно работает внутри намного сложнее обмануть всякими рекламными штуками или ошибочными советами в инете…
Какое у него будет отношение к вам, особенно если он считал вас экспертом по БД?

странная точка зрения

Допустим я начальник подразделения разработки, беру нового сотрудника, который знает больше меня и оптимизирует систему так что она начинает работать быстрее.
И типа чё, давайте меня понизим, а нанятого сотрудника повысим — типа он умнее?

это совершенно разные категории. Если вы в одно лицо запилили огромный сервис, напрямую работаете с владельцем бизнеса, потом берете себе помощника который знает какуюто технологию лучше вас — это блин НОРМАЛЬНО и обычно. А если собственник начинает мерить эффективность персонала такими методами и не понимает что человек который в состоянии спроектировать и запилить большой проект в одно лицо — скорее всего знает хуже узкие технологии чем человек который например 10 лет только dba и работал, то из этой конторы надо бежать

странная точка зрения

Допустим я владелец бизнеса и нанимаю Java/Javascript архитектора и Lead Developer за большие деньги, у которого по CV и тех.интервью огромные опыт и большая экспертиза. Он разрабатывает системы, потом я нанимаю аудиторов, которые выдают заключения, что мой якобы супер специалист не знает банальных Java коллекций и у него в хаш.мапах одни hash коллизии, в вебе одни sql injection'ы и т.п. дыры, а бд не использует тривиальные индексы и нормализации.
Отчего вся система дырявая и дико медленная и из-за его тривиальных ошибок я переплатил намного больше его зарплаты за сервера и теперь проще все написать с нуля чем переделывать.
Вопрос, что я должен сделать как владелец? Дать ему премию?
Я не знаю каков ваш управленческий опыт.
Но обычно владелец не знает и не понимает таких понятий как:
банальных Java коллекций и у него в хаш.мапах одни hash коллизии, в вебе одни sql injection'ы и т.п. дыры, а бд не использует тривиальные индексы и нормализации.

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

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

Так что на уровне бизнеса если ваш Ит менеджер нанял спеца, который за месяц ускорил что-то в 100 раз, надо похвалить и менеджера за такую находку и премировать нового сотрудника, чтобы продолжал в том же духе. А если у вас как у владельца чешутся руки кого-то наказать, ваш бизнес постепенно скатится в яму, потому что люди не любят работать в такой среде. Люди любят чтобы их хвалили. Особенно после улучшений. А вы хотите после улучшений, найти виновного почему раньше было хуже.
Так что на уровне бизнеса если ваш Ит менеджер нанял спеца, который за месяц ускорил что-то в 100 раз, надо похвалить и менеджера за такую находку и премировать нового сотрудника

Два чая этому господину.
Вот про это почти все руководители забывают.
Отчего вся система дырявая и дико медленная и из-за его тривиальных ошибок я переплатил намного больше его зарплаты за сервера и теперь проще все написать с нуля чем переделывать.

Хороший пример, правда. Беда что вокруг ровно все так и есть и даже еще хуже.

Но вы упускаете нюанс, как раз лид уж точно скоре йвсего не помнит структуру R-tree, B-tree. К тому же лид это уже нее совсем программист, это уже менеджер в том числе.

Вопрос, что я должен сделать как владелец? Дать ему премию?

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

Заменим программиста на дантиста. Будете ли вы ходить дальше к стоматологу с просьбой поправить (за отдельные деньги), если вам станет понятно, что он некомпетентен и удалил несколько здоровых зубов и не вылечил больных?

Будете ли вы предлагать криворукому автослесарю, загубившему ваш автомобиль, исправить свои ошибки за вменяемое время и дополнительные деньги?
Даже у стоматологов есть разделение функций — терапевт, хирург, ортодонт, ортопед, пародонтолог. Если ортопед начинает лечить людей, или терапевт ставить импланты — тогда жди беды. А почему от разработчика в 2020 году ждут многостаночности.
Эка вы радикально.
Без косяков не работает вообще никто, вопрос только в том как справляться с кризисными ситуациями.

И кстати мне переделывали работу по зубам. Хожу дальше.
Есть же все-таки разница между просто косяками и косяками, показывающими полную профессональную некомпетентность. Будете ли вы лечится у некомпетентного человека?
А вы знаете способ определения?)
Если мне врач ненра я обычно меняю, в пределах клиники.

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

Да, обратится к N экспертам в той же области с консультацией (лучше с рекомендация друзей или хотя какой-то репутацией).

Если условно пять других экспертов не сговариваясь дадут похожий диагноз с тем же списком проблем — вероятно проблема все-таки именно в некомпетенции.
Если вы готовы СТОЛЬКО тратить, то цена неверного найма у вас запредельная, следовательно собеседования не должны проводиться в классическом ключе: «лучше не нанять подходящего человека, чем нанять не подходящего». Поскольку в таком случае, вы рискуете спугнуть как раз того кто вам нужен.
Сколько столько?

Условно, если мне кажется, что доктор лечит меня плохо, я схожу на консультацию еще к парочке докторов. Если мне кажется, что автослесарь либо некомпетентен, либо обманывает, я отвезу машину еще парочке. Если аудит програмного кода показывает очень большие проблемы, вполне логично обратиться еще к 1-2 экспертам, это будет дешевле неправильного решения или продолжать разрабатывать продукт в неправильном направлении.
Если аудит програмного кода показывает очень большие проблемы, вполне логично обратиться еще к 1-2 экспертам,

и получить 5 совершенно разных мнения, начиная 'всё надо переписать на go сейчас он в тренде, а у вас устаревшая java которая скоро умрет' до 'переходим на 1С' и 'оо, это PHP на нем только лузеры пишут'

ИТ оно такое… миллион мнений и ни одного единственно верного ;)
ИТ оно такое… миллион мнений и ни одного единственно верного

Нет, нужно задавать правильные вопросы и привлекать правильных экспертов (в смысле не звать оценивать Java приложение фаната GO).

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

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

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

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

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

Вот вы удивитесь, когда 5 докторов дадут 5 разных диагнозов. Я лично такое видел.

будет дешевле неправильного решения

Даже по готовому заключению, на подтверждение, каждому эксперту нужно сколько? Часов 100 в лучшем случае? по 50 баксов в час на два плюс стоимость самого аудита + стоимость простоя + стоимость найма (совокупная) нового сотрудника и его обучение.

А на собеседовании вместо «как бы вы решили вот такие проблемы» вы спрашиваете «сортировку пузырьком» и уменьшаете шанс нанять действительно подходящего вам сотрудника. Отсюда либо еще разок п1 по кругу либо + значительное время простоя.
Вопрос, что я должен сделать как владелец? Дать ему премию?


для начала понять что
— универсальных специалистов не бывает
Архитектор-Лид — не может знать ВСЁ, и он должен работать не в одно лицо, а с командой, где будут узкие специалисты по всем направлениям.
Это блажь — считать что если чел прямо как бог рубит в базах и индексах, то он сможет спроектировать крупную работающую систему которая будет зарабатывать вам деньги, это нереально.
И если вы берете человека который на словах 'господьбог-суперзвезда' — и считаете что он в одно лицо построит вам звезду смерти — блин да это понятно что получится хоть и работающий продукт но построенный из костылей и затычек потому что количество человекочасов превышает человеческие способности
и вы как владелец себе должны по голове постучать и себя лишить премии за то что у вас какието странные ожидания от людей
===
Я работал в конторе где ядро системы было написано одним человеком, дичайшее легаси которое потом поддерживает и переписывает отдел из 5 человек… причем с точки зрения менеджмента это гениальный и практически недостижимый по конкуретноспособности продукт, а с точки зрения разработчика — кошмар и ужас и вообще бывает не верится что оно вообще функционирует… а всё потому что это писал один человек, и фронт и бек и десяток баз начиная от оракла заканчивая кликхаусом и sqlite причем чел осилил в одно лицо даже некое подобие cicd на всё это хозяйство.
Как думаете надо было с позором выгнать этого человека? (он сейчас гдето в США работает) и проклясть его что он паразит за зарплату в 100тыр написал систему которую надо было писать отделом из сеньоров? и она тормозит и жрет ресурсы. помоему тут виновато отсутствие денег, а не конкретные личности и их скиллы
Ну я представил есть 50 человек которые разработали систему, и тут пришел новы сотрудник и полез менять индексы. Сразу вопрос, а кто его вообще допустил до продакшен серверов и кто ему дал задание менять индексы. Вам не приходит в голову что разработчикам может быть запрещено даже знать на каком железе работают продакшен сервера и им запрещено получать информацию с них. И если какой-то сотрудник полезет не в своё дело, будет заниматься индексами вместо своих прямых обязанностей, то он быстро вылетит работы.

Не ну я представил — делаете Вы систему для какого-нибудь Wallmart и тут к Вам приходит владелец бизнеса в говорит; «Выдыхай, Бобер, Выдыхай!»
А теперь представьте, что это не новый сотрудник, а новый СТО или владелец заказал аудит и внезапно оказалось, что 50 человек написали редкую фигню с дырами в безопасности, ужасной архитектурой и производительностью и проще уволить всех и написать все с нуля, потому что тех.лиды/архитекторы были некомпетентны и набрали некомпетентных исполнителей.
Что-то похожее я пару раз в жизне видел, вот именно примерно в таких же размерах команд и, да, помню случай когда команду человек в сто уволили, а проект перезапустили с нуля из-за похожих проблем.
В команде из 50 человек функции каждого достаточно специализированны, требовать скажем от back-end разработчика глубокого знания БД довольно странно. Как там устроены деревья индексов не его вообще проблема. Хорошо если он раньше был full-stack и что-то знает о БД и индексах. А если нет — то и суда нет…
Не ну я представил — делаете Вы систему для какого-нибудь Wallmart и тут к Вам приходит владелец бизнеса в говорит; «Выдыхай, Бобер, Выдыхай!»

Я делал системы для куда более крупных компаний, чем Wallmart и что? Некоторые проблемы доходят и до СТО компаний с миллиардным оборотом (владельцы там обычно акционеры).

Причем это вы перевели разговор о командах на 50 человек (кстати, проект на 50 человек — представляю, а вот за именно команду более 10-15 человек с трудом, при том что у меня десятки лет опыт в многомиллиардных компаниях). Вообще-то речь шла о разработчиках вообще, не объязательно к разрезах команд на миллион человек.

Вам не приходит в голову что разработчикам может быть запрещено даже знать на каком железе работают продакшен сервера и им запрещено получать информацию с них.

Незнание на каком железе — ни разу не встречал, это крайне странно и нелепо, доступ на прод как на прием к президенту — бывало.

Хорошо если он раньше был full-stack и что-то знает о БД и индексах

У вас странное понимание о full-stack, фул стек это про связку бека и фронта. Для back-end разработчика знание индексов и БД это скорее необходимый минимум на звание старшего и тем более архитектора/тим.лида и т.п. Весьма нелепо звать DBA для каждой N+1 проблемы с которой он столкнулся при использовании ORM. Не говоря уже о том, что DBA вряд ли полезет копаться в недра ORM бека. Более того нормальный старший back-end разработчик отлично понимать, что такое SQL injection и как их избежать без обращения к специлизированным ребятам.

В команде из 50 человек функции каждого достаточно специализированны

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

глубокого знания БД довольно странно

У вас неправильное понимание глубокого знания БД, глубокое это настройка репликаций, сложных хранимых процедур, двухфазных удаленных транзакций, всяких иерархических запросов с дисплейными функциями и т.п. Как работают, индексы это вообще самые основы основ, примерно как left/rigth join'ы или базовые sql запросы, без знания этого можно говорить, что СУБД вы вообще не знает даже на начальном уровне. ИМХО.
У вас неправильное понимание глубокого знания БД

Вы берете две крайности.
Между ними пропасть:
— нюансы оптимизатора
— оконные функции
— аналитические запросы
— CTE
— частичные, функциональные, pg_trgm/ctxcat индекс и тд
— секционирование
— наследование
— итак далее и тому подобное

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

Ну вот мой пример: допустим вам надо повесить индекс, база у вас Postgresql(забудем про пространственные данные сейчас) вариант индекса у вас целый один — b-tree. Осталось решить какие поля и в каком порядке, проанализировав запросы, ну можно еще его частичным сделать.
Вроде бы Wallmart — крупнейший работодатель в США. Вы Звезду Смерти делали?
Мда… Вы серьезно? В этих темах даже 1сники поверхностно разбираются у которых вообще основная специализация не программирование а больше предметная область и бизнес анализ, и только немного программирования (причем как UI так бека + rest/soap сервисов, так что база для них хоть и важна но далеко не их основная специализация). Как можно называть себя бекенд программистом понимая в базах даже меньше 1сников — не представляю.
В большой компании, где есть разделение ролей, разработчик кода вообще не пишет SQL сам. Это не его обязанность и толку что он знает как устроено дереве индекса вообще никакого. Эта информация для него в принципе бесполезна. Если компания маленькая эта информация для разработчика так же избыточна — он же там одновременно выполняет сто ролей, понимание дерева индекса это не про него. Если большая компания от каждого кандидатов требует такой специализированной информации — они просто забивают мозги кандидатам. Ну это лютый бред, пусть выделят одного или двух, может пятерых, кто будет знать как там устроены индексы внутри, и они уже занимаются такими вещами.
В большой компании, где есть разделение ролей, разработчик кода вообще не пишет SQL для сам. Это не его обязанность и толку что он знает как устроено дереве индекса вообще никако

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

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

Мой опыт разработчика кода:
1. Компания на 10 тыс. разработчиков. Разработка продукта для почти половины мирового телекома. Писали огромные SQL, хранимые процедуры и сложные индексы и оптимизации в Oracle,
2. Разработка продукта для крупнейших рекламных онлайн сетей мира — оптимизация mysql и mongoDb на самом низком уровне,
3. Одна из крупнейших аутсор компаний мира, разработка для крупнейших финансовых компаний в мире — самостоятельная разрабкта базы данных для продуктов, много оптимизации БД,
4. Разработка продукта для одного из крупнейших поисковых систем отелей в мире, оборот около миллиарда — приходилось постоянно оптимизировать индексы и запросы в базу,
5. Разработка продукта для одного из крупнейших стриминговых сайтов мира (в топ30 в alexa rank) — постоянная оптимизация запросов в базу данных и работа с кешами,

Вы все еще утверждаете, что во всех больших компаниях, разработчик вообще не пишет SQL сам?

P.S. Разделение ролей везде было.
Ой как я завидую пунктам 1,2. Тоже хотеть.

Правда с таким бекграундом логичней было бы все же postgresql форкать, или не форкать а писать свои индексы и операторы.
А потом получаем текущие абстракции, проблемы коммуникации из за непонимания одних специалистов что там на стороне других и прочие проблемы узкой специализации в больших коллективах. Я и не топлю за знание всего и сразу, но как по мне модель I-shape специалиста гораздо более проблемная чем T-shape. Я так вообще планирую к Ш-shape ползти, но, тут признаюсь, уже больше по фану а не из реальной необходимости.
а новый СТО

И вы совершенно точно знаете меньше своих сотрудников в совокупности, это нормально.
проще уволить всех

Сразу нахер такого CTO. Пинком прям. Уволить всех это никогда, слышите меня, НИКОГДА, не проще.
Уволить всех — это просто: ставим начальника — идиота с ЧСВ в облаках, который будет обращаться с подчинёнными как стереотипный американский сержант к рекрутам и пишем общее письмо «R&D дураки, секретарше и бухам — премию, остальным — банан, с новым годом, крысы» и вся разработка сама разбежится. Без доп. окладов и по собственному.
Но не понятно, как собрать команду вместо прошлой (слухи-то пойдут, как объяснить потенциальному работнику, почему вся команда разбежалась?) и кто будет в это время выполнять контракты?
Вот вы хихикаете, а он РЕАЛЬНО НЕ ПОНИМАЕТ что не так с его подоходом.
Тут недавно аж 3 статьи про «красную корпоративную культуру» написали, думаю, он даже если их прочёл, то не понял.
C чего вы взяли, что это мой подход? Или я что-то не понимаю? На данный момент, я работаю обычным старшим разработчиком. Когда я говорил, что менджерам проще уволить, я не говорил, что я одобряю таких менджеров.
Дискуссия вообще была о необходимости разработчику понимать основы БД.
У нас есть Hadoop кластер, Redis с журналированием изменения раз в минуту и mysql с терабайтной базой, что будем ставить на hdd и что на ssd и почему?

Ответ простой: «Извините, вы нам не подходите». Это работа админов.

Как использовать кластерный индекс в таком случае и почему он сможет нас спасти?

Как ни странно неплохой вопрос. Однако, если у вас все настолько плохо то ничто вас не спасет)

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

Или открыть мануал по индексам где все это подробно и кратко описано.
Кроме того, спустя годы это можно просто знать.

На самом деле вопросами лично я впечатлен (хотя на вопрос типо «как» я бы ответил «понятия не имею», для экономии времени). Но беседу я думаю можно было бы составить интересную. Вот только у меня прям сильные сомнения, что такое вообще возможно.
Если у компании так остро стоит вопрос с БД, производительностью и индексами — они просто должны иметь выделенных людей, которые специализированно занимаются только БД. Если они от каждого требуют такой специализации — то они просто забивают мозги своим работникам. Если у них проблем с производительностью на самом деле нет, а они требуют знаний от каждого — значит тем более забивают мозги.

Скорее всего просто компания не может нанять себе нормального узкоспециализированного профессионала по БД, а требует знаний от каждого вновь пришедшего разработчика. Короче свои косяки за счет кандидатов решают. И сразу большой вопрос стоит ли с такой компанией связываться.
Да тут дело в другом, на хабре секта расчетчиков алгоритмической сложности, причем аргументов от них я добиться ни разу так и не смог. Это забавно, учитывая голод на рынке кадров и тот факт, что люди, работающие с базой, SQL не знают.
Ну нужно понимать психологию людей же.

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

Второе — «Может им ещё и печеньки покупать»; если компания не «современная модная молодёжная», то людей реально корёжит от того, что обычный человек может что-то получать, не выпрыгивая из штанов от натуги.

В России процветает социал-дарвинизм самого низкого пошиба, когда если ты не гений — ты должен даже не бедно жить, а просто тупо умереть. Причём те, кто его продвигает, сами далеко не гении, от того фрустрация и ненависть к обычным людям — не сильно напрягающимся, допускающим ошибки — ещё сильнее, т.к. эти люди «позволяют себе» быть обычными, а такого НЕЛЬЗЯ, они все должны умереть, если они не атланты.

Третье — «Принцеждалки»; ну тут всё просто, вакансия может висеть полгода, год, но её не закроют любым подходящим сотрудником, только тем, кто сразу пишет на доске код без ошибок, знает про круглые люки и работает за 45к (gross).

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

Кстати, забавнейший парадокс.
С одной стороны так как качество не важно — можно было бы набрать абы кого; и часто именно так и делают, например, устраивают по блату или в госучреждения за копейки с улицы собирают. С другой стороны — но если уж соискатель придёт на вакансию, нельзя его взять, если он не мега-гига-мозг, потому что а как же тогда потешить своё эго?
Как раз была недавно статья про красную модель управления)

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