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

Разговоры на любые темы
Аватара пользователя
b0r1sus
Сообщения: 828
Зарегистрирован: Сб сен 01, 2012 9:20 am
Контактная информация:

Re: Вопросы для собеседования.

Сообщение b0r1sus »

lis писал(а):3. Какие ваши достижения в сапёра.
В каждой шутке есть доля правды: Если кандидат сможет обнаружить все мины за одну секунду на самом высоком уровне сложности, значит он умеет работать с реестром Windows 8-)

ZloY
Сообщения: 30
Зарегистрирован: Вт сен 11, 2012 1:14 am

Re: Вопросы для собеседования.

Сообщение ZloY »

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

//MySQL
Какие типы связей бывают между таблицами // Второй курс любого университета, можно гнать в шею если не отвечает
Нормальные формы баз данных // Я вот напаример помню что их 4, а какие непомню )
Есть товары есть заказы связь n-m напишите запрос который выбирает все товары которые не заказывали
Можно спросить чем жойны отличаются друг от друга и причём тут теория множеств
Тормозит как оптимизировать ? // Если человек не знает слова Explain и не умеет делать логи медленных запросов, то всё скорее всего будет тормозить
А какие движки таблиц знаете ? // Если человек отвечает на этот вопрос, то хорошо.
Чем отличаются MyISAM от InnoDB? // Транзакции, блокировки и MVCC, если человек отвечает этот вопрос, то перед вами специалист высокого класса

//PHP
Какие измения в версии php {current version} //Самый любимый вопрос на всех собеседованиях
Как вычесть из одной даты другую // Вопрос на знание SPL http://www.php.net//manual/en/book.spl.php
Чем отличается require от include?
Дана строка как правильно отрезать первую букву? // прикол с mb_* функциями если строка в юникоде всё остальное кроме mb_* функций не будет работать
Напишите функцию которая считает факториал 100 // там число выходит за рамки int в php сильно мутить надо чтобы это сделать
Какие типы данных вы знаете в php? //я с лёту не могу вспомнить все постоянно забываю объекты ресурсы и массивы

//ООП
Что такое интерфейс? // Если программист начинает говорить что то про GUI на такой вопрос - гнать в шею, он или вопрос не понял или не программист
Чем отличается интерфейс от абстрактного класса?
В каких случаях класс может не реализовывать методы интерфейса?
Когда нужно использовать наследование, а когда композицию?
Что такое слабая связность? Какими способами достигается?
Что такое IoC?
Расскажите про недостатки паттерна синглтон.
В чём недостатки и преимущества объектно ориентированного подхода?
Что такое MVC?
Что такое толстый контроллер, почему это плохо?

//PHPUnit
Мокаете ? // Если на вас смотрят круглыми глазами идём дальше

//Разное
Напишите сортировку массива пузырьком. //Это самый лютый вопрос, очень крутые проектировщики на нём бывает виснут, потому что сортировку пузырьком они писали последний раз в 9том классе на паскале, но есть же функция sort() зачем уметь сортировать? А затем!
git push -f - почему за это отрывают руки?

//Вот этот тест годнейшиея его можно прям заэтовать
http://php.feedme.ru/

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Вопросы для собеседования.

Сообщение arxont »

http://experov.d3.ru/comments/572333/
Вы ранее привлекались за хранение данных в глобальных переменных?
Какой результат выполнения команды git push me and then just touch me till I can get my satisfaction, satisfaction?
Найдите точку G бинарным поиском
Назовите свою любимую позу для стендап митинга
Вы когда–нибудь делали.Net за деньги?
Вы способны довести девушку до оргазма языком программирования?
Сформулируйте зависимость времени исправления критического бага от seniority присутствующего менеджера
В своём резюме вы указали знание php. вам не стыдно?
Почему люк скайуокер круглый?
Какой из циклов быстрее, for, while или правило буравчика?
Обоснуйте полноту Javascript по Тьюрингу с позиций фрейдистской школы программирования
Перед вами кисть, холст и мольберт. напишите компилятор
Расскажите что–нибудь про Pascal
Расскажите о плюсах и минусах автокомплита в сексе
Киберпанк не умер. Он просто наступил.

Противоречащий
Сообщения: 167
Зарегистрирован: Вт сен 11, 2012 11:40 pm
Контактная информация:

Re: Вопросы для собеседования.

Сообщение Противоречащий »

Скажите, вы когда–нибудь симулировали ООП?
убило просто :lol: :lol: :lol:

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Вопросы для собеседования.

Сообщение arxont »

Активно тут рассылаю резюме на разные вакансии связанные с удалённкой по C#. Одно из заданий -
Напишите программу, которая будет имитировать процедуру automerge в системах контроля исходников.
В чем суть: имеется исходный файл (допустим, программный код), над которым затем поработали 2 программиста, каждый сам по себе. Получилось 2 варианта измененного исходника. Нужно выполнить слияние изменений. Те изменения, которые можно разрулить автоматически, нужно разрулить. Те изменения, которые конфликтуют между собой, нужно проигнорировать, просто поставить пометку «Конфликт» (в реальных системах разработчик конфликтующие изменения разруливает вручную в редакторе, но нам это не нужно).
Пример изменения, которое можно разрулить автоматически: один разработчик добавил функцию, второй в этом месте ничего не изменил.
Пример изменения, которое автоматом нельзя разрулить: оба разработчика изменили одну и ту же строку, но изменили ее по-разному. Соответственно, нельзя однозначно объединить эти два изменения – требуется ручное вмешательство.
Список примеров неполный – остальное предлагается домыслить вам. При этом учитывайте следующие начальные условия:
• Если два изменения разруливаются автоматом, не нужно заморачиваться, будет ли это реально корректно работать. Например, если внутри цикла один разработчик в одном месте добавил строку, другой – добавил свою строку в другом месте, то такое изменение можно разрулить однозначно (добавить обе строки). То, что при этом программа может поломаться, мы в задании не учитываем. Другими словами, никакой проверки синтаксиса не нужно.
• Если один программист удалил строку, а второй с ней ничего не сделал, то мы принимаем это удаление как корректное (т.е. выполняем). Т.е. мы доверяем этому изменению.
Строки считаются равными, если в них совпадают все символы, кроме отступов в начале и конце строки.
Писать на C#, версия фреймворка непринципиальна. Делать как консольное приложение или оконное – неважно, выбираете сами.
На входе: исходный файл; его измененный вариант 1-м программистом; его измененный вариант 2-м программистом.
На выходе: файл с объединенными изменениями.
Если беретесь, то оцените предварительно срок решения и сообщите оценку сразу (вместе с подтверждением).
Постарайтесь не пользоваться чужими наработками. Мы знаем, что чаще всего нет смысла изобретать велосипед, но нам интересно посмотреть на ваш код, а не на чужой.
Просьба решение присылать в виде двух архивов: с исполняемыми файлами и с исходниками.
Киберпанк не умер. Он просто наступил.

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Вопросы для собеседования.

Сообщение arxont »

Очередное собеседование и очередной интересный вопрос -
Что выведет следующий код?

Код: Выделить всё

string s1 = "test";
string s2 = "test";
string s3 = "test1".Substring(0, 4);
		
object s4 = s3;
		
Console.WriteLine("{0} {1} {2}", object.ReferenceEquals(s1, s2), s1 == s2, s1.Equals(s2));
Console.WriteLine("{0} {1} {2}", object.ReferenceEquals(s1, s3), s1 == s3, s1.Equals(s3));
Console.WriteLine("{0} {1} {2}", object.ReferenceEquals(s1, s4), s1 == s4, s1.Equals(s4));
Киберпанк не умер. Он просто наступил.

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Вопросы для собеседования.

Сообщение arxont »

Утилита контроля включения - выключения ПК

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

Отправление результата в MySQL BD

Хочется: exe файл, который бы инсталлировал утилиту по одному клику. Ну и саму утилиту собрать.
Срок - 1 день.
Киберпанк не умер. Он просто наступил.

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Вопросы для собеседования.

Сообщение arxont »

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

Передвижений, игр на складывание не надо - просто нанесение контура на картинку.
Киберпанк не умер. Он просто наступил.

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Вопросы для собеседования.

Сообщение arxont »

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

Сервер ­ это приложение написанное на C#, которое ожидает подключение от клиента.
Клиент ­ это любой браузер.

Приложение устанавливается на компьютере, работающим как за НАТ, так и напрямую в сети.
Приложение должно иметь возможность расшаривать файлы, которые можно скачать любым
браузером с шифрованием данных (https, если есть другое предложение шифрование мы за).

Для работы приложения за НАТ, необходим сигнальный сервер, иначе мы не сможем узнать где в
сети находится приложение, то есть сигнальный сервер это методики STUN, TCP hole punching, ICE, TURN (или собственная реализация).

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

Для данной схемы протокол WebRTC не подходит так как поддерживается не во всех браузерах.
PS: ИМХО самое пока сложное из того, что мне давали в качестве тестового. По сути написать свой Infinit https://en.wikipedia.org/wiki/Infinit
Киберпанк не умер. Он просто наступил.

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Вопросы для собеседования.

Сообщение arxont »

Требование в резюме
знание английского языка на уровне достаточном для формулирования вопроса гуглу и понимания ответов со стаковерфлоу
А вот ещё несколько вопросов с последнего собеседования
1. Чем отличаются MVP, MVC и MVVM
2. Напишите синглтон, не используя static
3. Какие ORM для C# вы знаете?
Киберпанк не умер. Он просто наступил.

Ответить