Почему интервьюеры задают усовершенствованные вопросы? [закрытый]

Я обнаружил, что для того, чтобы правильно удалить старую историю из нового репозитория, вам нужно проделать еще немного работы после шага filter-branch.

  1. Сделайте клон и фильтр:

    git clone --no-hardlinks foo bar; cd bar
    git filter-branch --subdirectory-filter subdir/you/want
    
  2. Удалите все ссылки на старую историю. «Origin» отслеживал ваш клон, а «original» - это то место, где фильтр-ветвь сохраняет старые данные:

    git remote rm origin
    git update-ref -d refs/original/refs/heads/master
    git reflog expire --expire=now --all
    
  3. Даже сейчас ваша история может застревать в пакете этот fsck не будет касаться Разорвите его в клочья, создав новый файл пакета и удалив неиспользуемые объекты:

    git repack -ad
    

объяснение этого в руководстве для фильтра ветвп .

7
задан John Saunders 30 July 2009 в 18:46
поделиться

17 ответов

Я спрашиваю их по двум причинам.

  1. Видеть, как человек на самом деле говорит: «Я не знаю ответа на этот вопрос», в отличие от того, чтобы пытаться оторваться через вопрос. 1295] Чтобы увидеть, какие навыки логического решения проблем есть у человека.

Обычно вопрос касается одного или другого, но не обоих. Однако и то и другое чрезвычайно ценно при отборе перспективного сотрудника.

Кроме того, этот вопрос может не быть «продвинутым» для данной должности. Разумно предположить, что старший уровень и / или архитекторы могут ответить на вопросы, которые не могут ответить младшие и средние уровни.

36
ответ дан 6 December 2019 в 04:44
поделиться

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

Он называется «Как бы вы переместили гору Фудзи», и это на Amazon по довольно низкой цене.

http://www.amazon.com/gp/offer-listing/0316919160/ref=dp_olp_used?ie=UTF8&condition=used

0
ответ дан 6 December 2019 в 04:44
поделиться

Есть много возможных причин. Они могут:

  • на самом деле использовать эти методы (делегаты и XPath не являются особенно редкими или непонятными)
  • иметь большой пул кандидатов и хотят попытаться найти более знающих
  • хотят увидеть, где ограничения ваших знаний, поэтому они задают вопросы до того момента, когда вы начинаете не в состоянии дать хороший ответ
  • хотят увидеть, как вы можете подойти к областям, которые вам незнакомы - чтобы увидеть, как вы можете адаптироваться к новым вещам
  • хотят похвастаться собственными знаниями (вероятно, не по законной причине, но это определенно случается)
0
ответ дан 6 December 2019 в 04:44
поделиться

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

0
ответ дан 6 December 2019 в 04:44
поделиться

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

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

Другие вопросы на собеседовании с Microsoft

0
ответ дан 6 December 2019 в 04:44
поделиться

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

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

0
ответ дан 6 December 2019 в 04:44
поделиться

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

Мне нужен кто-то, кто мыслит критически, а не просто академик, который может читать мне учебники.

0
ответ дан 6 December 2019 в 04:44
поделиться

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

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

2
ответ дан 6 December 2019 в 04:44
поделиться

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

2
ответ дан 6 December 2019 в 04:44
поделиться

Интервьюер пытается определить ваш уровень знаний, и он справляется, «заимствуя» вопрос из последней главы этой книги.

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

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

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

В зависимости от работы я спрошу об опыте работы с целевым языком - например, ключ => карты значений (массивы) в PHP, программирование Swing на Java, обработка событий на C #, таблицы против CSS в html - вы видите картину.

Если кандидат проходит первую часть собеседования (я обычно знаю это примерно за 5 минут) , Я затем дам ему папку и отправлю в кофейню (там красивый диван и столик), чтобы он подготовился на 20 минут к проверке кода выбранного модуля.

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

Я ищу способность сконцентрироваться на задаче (вопиющий СДВГ), способность работать под давлением и межличностная динамика.

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

Меня уже давно не сжигает новый сотрудник.

Представьтесь и поговорите около минуты.

Я ищу способность сосредоточиться на задаче (вопиющий СДВГ), способность работать под давлением и межличностную динамику.

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

Меня уже давно не сжигает новый сотрудник.

Представьтесь и поговорите около минуты.

Я ищу способность сосредоточиться на задаче (вопиющий СДВГ), способность работать под давлением и межличностную динамику.

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

Меня уже давно не сжигает новый сотрудник.

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

Меня уже давно не сжигает новый сотрудник.

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

Меня уже давно не сжигает новый сотрудник.

2
ответ дан 6 December 2019 в 04:44
поделиться

Я задаю сложные вопросы по нескольким причинам:

  1. Некоторые из моих вопросов являются продвинутое использование вещей, которые должен знать каждый (не пустяковый вопрос) - я хочу увидеть, как вы рассуждаете, используя в ответе имеющиеся у вас знания, но не совсем обычным способом.

  2. Я хочу посмотреть, что происходит, когда ты чего-то не знаешь - ты сдаешься?

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

  4. Я хочу увидеть, есть ли пробелы, когда вы просто не знаете, что целая область знаний вообще существует. Например, в вашем примере XPath - я мог бы быть в порядке с: «Я считаю, что XPath можно использовать для решения этой проблемы, но я не знаю его достаточно хорошо, чтобы написать это здесь» - тогда я бы показал им немного XPath и посмотреть, смогут ли они его применить. Если вы даже не знаете, что XPath существует, Google вам не поможет.

7
ответ дан 6 December 2019 в 04:44
поделиться

В некоторых случаях я хочу получить неправильный ответ от кандидата.

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

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

Не так беспокоится об ответе, больше интересует, как они реагируют на вопрос / решение.

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

11
ответ дан 6 December 2019 в 04:44
поделиться

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

12
ответ дан 6 December 2019 в 04:44
поделиться

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

1
ответ дан 6 December 2019 в 04:44
поделиться

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

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

PS Не хочу показаться скупым, но если вы программируете с использованием XML и не знаете, что такое XPath, то вы немного отстаете.

2
ответ дан 6 December 2019 в 04:44
поделиться

1. Какую версию XSL использует .NET 3.5?

Потому что они не могут отличить важное от неважного. Плохой знак.

2. Какую команду XPath использовать для получения значения в элементе X?

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

3. Что такое делегаты классов в C #

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

4. Допускает ли C # множественное наследование интерфейсов?

Если они действительно спрашивают о «реализации интерфейса», это часть самой базовой концепции, так что это правильный вопрос (хотя и слишком простой, чтобы что-то значить). Если бы они действительно спросили о «наследовании интерфейсов», это скорее было бы пустяком, но я бы сказал, что приемлемо. Бонусным баллом для них, если они спросят, что на самом деле означает «наследование интерфейса».

5. Как получить доступ к GAC в C #?

Это такие вещи, в которых каждая команда ДОЛЖНА иметь одного человека, который знает. Я бы сказал, что это также показатель стажа (который, кстати, меня не особо волнует), поскольку никто не читает об этих вещах, единственный способ узнать это - заставить себя решить реальную проблему.

1
ответ дан 6 December 2019 в 04:44
поделиться

Я только что завершил серию собеседований, в которых я использую три или четыре стандартных «простых» фрагмента кода C #, которые собеседник просматривает и пытается объяснить, каким будет ожидаемый результат. . В каждом случае образец кода представляет собой не более десяти строк четко отформатированного кода, который использует базовые навыки C # (наследование, универсальные шаблоны, анонимные делегаты); также в каждом случае будет `` ошибка '' - но, как заявляли другие, я не вкладываю их в злобу, они там, потому что я хочу увидеть, как кандидат отреагирует, когда столкнется с чем-то, что не работать, как ожидалось.

Недавно у нас был кандидат, который прошел первую часть собеседования; впечатляющее резюме, очевидно, был ведущим разработчиком группы из 10 человек и занимался разработкой кода на C # с 1.0; тем не менее, очевидно, не имел ни малейшего представления о том, что делает Console.WriteLine () (и не мог даже рискнуть предположить), и не мог даже начать справляться с примером крошечного анонимного делегата.

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

Если вы заявляете о знании предметной области (например, XML), вам следует ожидать, что вам зададут конкретные (а иногда и сложные) вопросы об этой предметной области; если я беру интервью у старшего разработчика ASP.NET, и они

0
ответ дан 6 December 2019 в 04:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: