polenova: (Default)
[personal profile] polenova
Друзья, мне нужен профессиональный совет.

Мы на прошлой неделе интервьюировали одного парня - мы ищем людей на контракт. Он очень хорошо отвечал, интересно рассказывал, подробно объяснял задачи, которые делал. У нас всеx осталось впечатление, что он толковый и с хорошим опытом работы. Пример на LINQ разобрал легко. Прекрасно отвечал про WPF, WCF. Я была среди спрашивающих последней, и мы все, я в том числе, были уверены, что это будет формальность - я должна была поспрашивать по основам объектного программирования и по C#. И вдруг - бэмс! - парень не смог мне ответить почти ни на один вопрос. Я резко снизила планку, но лучше не стало. Он не смог написать констрактор для наслeдуемого класса ( у класса-parent  констрактор с параметрами), не знал что такое делегат, сказал что класс может имплементировать только один интерфейс, не знал как передаются параметры в функцию и не смог написать вызов функции, так чтобы входной параметер внутри измениля. Он функцию Swap не смог написать. Я, по-моему, растерялась больше чем он. Мы его отправили и задумались. Парень явно очень толковый, интервью длилось долго. Обычно мы долго не спрашиваем, но он очень хорошо отвечал, чем провоцировал новые вопросы по теме. Я бы списала его непониманий на мой акцент, но со мной сидели ребята, которые со мной работают, китаец и индус, они сказали что все прекрасно понимали и говорила я нормально. Возможно он просто устал, нервничал, и это было что-то вроде нервного срыва. Потому что не знать той фигни, которую я спрашивала - невозможно. Он this и base перепутал.
Мы решили позвать его второй раз - очень он нам понравился. Сегодня я его интервьюирую. Что бы поспрашивать. Может пример дать какой-нибудь. Если он какие-то определения не знает - бог с ними, я их сама не знаю. Но надо, чтобы он код мог писать. Любые советы приветсвуются. Среда - C#, .NET
UPD: Не взяли мы чувака. Это была не паника у него, он действительно ничего не знает. Т.е. что-то где-то, но очень плохенько. Осталась загадка - а как такие люди работают? Чувствую себя динозавром, который знает как написать сортировку, умеет переворачивать линк-лист, и знает что такое статическая переменная. Это уже четвертый чувак на интервью который не умеет программировать. Предыдущие не знали вообще ничего, этот кое-что по верхам нахватался.

Date: 2014-07-08 01:44 pm (UTC)
From: [identity profile] merzavka.livejournal.com
Дай ему сортировку array на C#. Или лучше найти максимальное число в цифровом array. Если напишет код в 2 строки-знает, а если начнет пытаться сортировку типа баблс писать, то с C# там туго.
Edited Date: 2014-07-08 01:46 pm (UTC)

Date: 2014-07-08 01:47 pm (UTC)
From: [identity profile] polenova.livejournal.com
А я как раз думала бабл попросить. Там свап есть.

Date: 2014-07-08 02:31 pm (UTC)
From: [identity profile] yucca.livejournal.com
Я не по этой части, но может такое быть, что он просто на C# не писал, а на чем-то другом? или должен был, если он все остальное хорошо знает?

Date: 2014-07-08 02:36 pm (UTC)
From: [identity profile] polenova.livejournal.com
Говорит, что на C#. Да для большинства вопросов это и не так важно, они общие, ко многим языкам подходят.

Date: 2014-07-08 03:03 pm (UTC)
From: [identity profile] fslon.livejournal.com
Может быть, просто попросить написать хоть что-то на этом Си-шарп? Как по мне, если с основами знаком и все остальное знает, то проблем не будет. А вот если незнаком, тогда засада

Date: 2014-07-08 03:07 pm (UTC)
From: [identity profile] polenova.livejournal.com
Так то и странно, что я основы спрашивала. Не могу придумать, что написать, чтобы было видно что он знает и не слишком сложное.

Date: 2014-07-08 03:17 pm (UTC)
From: [identity profile] merzavka.livejournal.com
Одно другому не мешает. Если напишет это, потом можно дать задачу на сортировку.
Понимаешь, эта задача легкая, но показывает знание языка. Ибо чтобы ее решить надо воспользоваться только одной функцией, а не огород городить. Но это надо знать.

Date: 2014-07-08 03:36 pm (UTC)
From: [identity profile] polenova.livejournal.com
Может ты и права. Хотя эту функцию он может и не знать - я ею сто лет, например, не пользовалась. Мне бы что-то что должно в пальцах быть.
Почему он на вопросы-то не ответил? И хочется взять - толковый и приятный. И нарваться очень не хочется - разгребай потом за ним. Они мне оставили принимать решение, потому что он не ответил именно на мои вопросы. Вот я теперь и маюсь.

Date: 2014-07-08 03:43 pm (UTC)
From: [identity profile] yazmeya.livejournal.com
Тут такое дело: люди читают книжки из компьютерной секции в Барнс анд Ноубл, нахватываются ключевых слов, запоминают синтаксис, шаблоны и стандартные рецепты. А программировать при этом не умеют и как устроен компьютер - не знают.

1. Write a program that prints the numbers from 1 to 100.
But for multiples of 3 print “Fizz” instead of the number and for the multiples of 5 print “Buzz”.
For numbers which are multiples of both 3 and 5 print “FizzBuzz”.

2. Write a function that checks if a given string is a palindrome. For example: "abcba" -> True, "abab" -> False, "aa" -> True, "a" -> True.

3. Write a function that takes a string and returns an unsigned integer represented by this string (in binary). For example, "1111" -> 15, "10101" -> 21, "1017" -> error (not binary). Bonus points for handling overflow. Extra bonus points for signed integers.

4. Write a program that takes an integer N and prints the Nth Fibonacci number (1, 1, 2, 3, 5, 8, 13, 21, 34, 55...).

Date: 2014-07-08 03:51 pm (UTC)
From: [identity profile] polenova.livejournal.com
Человек может и не помнить чисел Фибоначчи, я, например, не помню - на фига они мне? Переводить в двоичную систему - я бы над алгоритмом зависла. Второй мне понравился. Третий - не поняла.
Мне бы что-нибудь более практичное, из реальной жизни.

Date: 2014-07-08 03:52 pm (UTC)
From: [identity profile] old-perduccio.livejournal.com
А нельзя ли зайти на LinkedIn, а также stackoverflow.com и посмотреть что он пишет в этих социальных сетях на тему программирования - можно очень хорошо понять, что за человек профессионально. Естественно, если он в этих сетях есть.

Date: 2014-07-08 03:53 pm (UTC)
From: [identity profile] merzavka.livejournal.com
Не знаю. Стресс. Или. может, решил, что уже провалил, чего метаться-то.

Date: 2014-07-08 04:03 pm (UTC)
From: [identity profile] polenova.livejournal.com
Он попроще, ничего он не пишет. Консультант обычный.

Date: 2014-07-08 04:39 pm (UTC)
From: [identity profile] fslon.livejournal.com
Я не совсем внятно выразился, я хотел сказать, пусть претендент сам напишет, что хочет, любой код. Вопрос по выбору экзаменующегося, так сказать

Date: 2014-07-08 04:42 pm (UTC)
From: [identity profile] me-person-ua.livejournal.com
Может и вправду стресс. Но тогда вопрос как он будет работать в условиях авралов, которые всегда бывают...
Я очень давно не опускалась до уровня программирования, но управляю большими проектами внедрения софта. Некоторые вещи которые Вы описываете, даже я помню из института...

Date: 2014-07-08 04:50 pm (UTC)
From: [identity profile] polenova.livejournal.com
Да у нас авралов не бывает особенно - фирма тихая, обстановка дружелюбная. Я ни одного аврала не видела. Нам нужен толковый, а не авралоустойчвый.
Я не могу поверить, что можно уметь программировать и такую фигню забыть. А в стрессе мозги отключаются, бывает. Не у меня, у меня мозги устойчивые, поэтому мне оценить сложно.

Date: 2014-07-08 04:59 pm (UTC)
From: [identity profile] me-person-ua.livejournal.com
"Я не могу поверить, что можно уметь программировать и такую фигню забыть." Вот и я о том же...

Date: 2014-07-08 05:32 pm (UTC)
From: [identity profile] messala.livejournal.com
А нельзя ему честно сказать: "Нам показалось, что вы не знаете основ Си. Это очень странно, учитывая, что в остальном вы продемонстрировали бла-бла-бла. Мы вас берем на испытательный срок 4 месяца с условием - после этого вы сдаете тест на знание Си"?

Date: 2014-07-08 05:35 pm (UTC)
From: [identity profile] yazmeya.livejournal.com
Я на интервью даю алгоритмические задачки. Всё практичное, из реальной жизни, с лёгкостью и без исключения находится либо в мануале, либо на Гугле. А если человек не способен жонглировать более чем одной переменной и не знает, где поставить "else", а где "else if", то в программисты ему не стоит.

#3 - можно не двоичные числа, а десятичные. Обнуляем буфер, идём от начала строки к концу и каждую цифру прибавляем к буферу, предварительно умножив буфер на 10. Следим за переполнением.

#4 - Фибоначчи легко объяснить любому: F(1) = 1, F(2) = 1, F(N) = F(N - 1) + F(N - 2). Прямо из этого определения вытекает простейший рекурсивный алгоритм. Продвинутые разворачивают рекурсию в цикл, используя три переменные.

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

Date: 2014-07-08 05:55 pm (UTC)
From: [identity profile] polenova.livejournal.com
Мы его всего на 3 месяца берем, а там видно будет. И надо чтобы он сразу писать умел. Таких возможностей - учить 4 месяца - я никода и не встречала. Ну неделю, ну две. Но не основам. Я же не студента на работу беру.

Date: 2014-07-08 06:03 pm (UTC)
From: [identity profile] messala.livejournal.com
Ну я не знаю, сколько надо молодому способному программисту, чтобы просто выучить новый язык... Может, две недели хватит? И еще решил, что если его про это в последнюю очередь спрашивали, значит, предполагается, что это не самая важная часть его будущей работы. Нет?

Date: 2014-07-08 06:59 pm (UTC)
From: [identity profile] polenova.livejournal.com
Да нет. Это язык на котором он программирует. Главный. Говорит, что пишет на нем много лет. Говорит, что раньше на С++ писал, а там все также практически, сложнее. Но он на С++ тоже не написал, я предложила - на любом. Да и не такой он молодой, лет 30-35, я не очень различаю, но не пацан зеленый. Если он действительно не знает того что я спросила, то его учить бесполезно и брать не стоит - эт база, этому учат даже не в колледже, а в школе. А если нервная реакция на интервью - такое бывает - то можно выпихнуть толкового специалиста.

Date: 2014-07-10 03:06 pm (UTC)
From: [identity profile] go-away-ira.livejournal.com
вот и я так плавала. меня после джавы взяли на шарп. мне понадобилось две недели. хотя до того я брала дистанционно класс со всеми необходиыми упражнениями и работала с open source .
это стресс.

Date: 2014-07-10 03:50 pm (UTC)
From: [identity profile] polenova.livejournal.com
Мы провели второе интервью - нет, не стресс. Он основ не знает, которые во всех языках одинаковые. Статические переменные, override method. Я его попросила однонаправленный линк-лист перевернуть - не стал даже пытаться. Не взяли.

Date: 2014-07-10 09:33 pm (UTC)
From: [identity profile] vasja-iz-aa.livejournal.com
я видел подобное, когда прежние менеджеры или бизнесдевелоперы пытались устроится на позицию программиста. писать самому собственными руками техническую ерунду после некотрого перерыва очень сложно, даже если когда то делал. при этом понимание как оно должно быть в общих чертах у индивидума вполне присутствует

May 2022

S M T W T F S
123 4 5 67
8 9 10 1112 1314
15 161718 192021
22 232425 2627 28
293031    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 24th, 2025 04:35 am
Powered by Dreamwidth Studios