Как отмечали другие, в интервью практически любой вопрос является честной игрой, если он не затрагивает какую-либо охраняемую законом территорию (например, возраст, расу, пол и т. Д.), И интервьюеры нередко бросают вопросы на вас, просто чтобы посмотреть, как вы реагируете на вопрос и как вы будете пытаться найти решение вопроса. Кроме того, поскольку кажется, что вы недавно закончили обучение, они немного ограничены в том, что касается возможности спросить вас о вашем опыте работы и о том, какие проблемы вы решили в производственных условиях. Таким образом, если компания выполняет большую работу, ориентированную на базы данных, задаваемые ими вопросы могут также иметь отношение к тому, какую позицию вы будете проводить на собеседовании.
Что касается ваших предположений:
а) Эти вопросы не могут быть справедливо классифицированы как вопросы разработки баз данных.
Может быть, а может и нет. Если вы занимаетесь разработкой базы данных, вы собираетесь использовать оптимизатор запросов и время от времени планировать, чтобы попытаться убедиться, что в ваших запросах нет явных проблем. Если в компании есть администраторы баз данных или эксперты, которые могут просматривать запросы, у них может не хватить времени посмотреть на все, и они также не захотят смотреть на каждый плохо закодированный запрос. Аналогичным образом, разработчики также несут ответственность за поддержку своей среды разработки, за включение любых баз данных и за то, чтобы администраторы баз данных занимались производственной стороной.
б) Я думаю, что вопросы подходят для интервью с DBA, но совершенно нецелесообразно для интервью с разработчиком программного обеспечения (опытным или нет).
Они, вероятно, будут подходящими для интервью DBA; но независимо от этого, они также являются темами, с которыми разработчик должен быть знаком, хотя бы на уровне способности распознавать, где может быть проблема, и самостоятельно выполнять некоторые базовые процедуры устранения неполадок. Как я уже упоминал ранее, если у компании ограниченные ресурсы, они захотят убедиться, что не тратят время людей на что-то, что может быть основной проблемой.
в) Первый вопрос относится только к поставщику базы данных.
Конкретные детали могут зависеть от поставщика, но общие концепции могут применяться в любом месте, и иногда вам может потребоваться показать, что вы понимаете общие концепции. Если вы не хотите быть привязанными к одному стеку разработки (например, LAMP ), то вам нужно будет показать во время интервью, что вы понимаете основные концепции и удобно переходить к различным стекам разработки.
d) Второй вопрос несправедлив, поскольку разработчики программного обеспечения обычно не имеют дело с журналами производительности базы данных, поскольку это работа администратора баз данных.
Обычно это так, но если часть вашей работы заключается в написании программного обеспечения для конкретной базы данных, которое должно быть быстро реагирующим, то вам нужно будет приложить максимум усилий для написания этих запросов, чтобы коллега, который эксперт в данной области не увязает в плохо написанных запросах. Хотя вам, возможно, и не нужно знать подробности того, о чем говорят журналы, вам, возможно, потребуется уметь выявить очевидные проблемы.
Надеюсь, все это поможет!