100 въпроса при интервюиране на софтуерни разработчици. Част 1 – изисквания и дизайн

Публикувано от Майк Рам на 09.03.2009 г. в 07:10 часа

Управление на изискванията и функционален дизайн

Когато съм участвал в интервю за работа – било като кандидат или като работодател, често съм се сблъсквал с неподготвеност за задаване на подходящи въпроси, които да разкрият по-добре качествата на кандидата. Ако аз съм бил този кандидат, съм попадал в ситуации, когато изпитващите или не са знаели какво да ме питата, или са ми задавали елементарни задачки, като сортиране на масив по метода на мехурчето. В другият случай, пък, аз и моите колеги дълго сме мислили какви точно въпроси да зададем, за да открием чрез тях най-подходящия кандидат.

Jurgen Appelo от блога NOOP.nl е изготвил един много обширен списък с въпроси, с който до голяма степен решава всички тези проблеми. Списъкът е разделен в 10 категории, всяка от които съдържа по 10 въпроса. Категориите са избрани според областите на знание, дефинирани от Software Engineering Body of Knowledge (SWEBOK). Между другото, от този сайт можете да си свалите The Guide to SWEBOK – една изключително полезна книга за софтуерни разработчици.

Тук е моментът да се отбележи, че Юрген е привърженик на “гъвкавите” подходи в разработката на софтуер и смята, че един програмист трябва да е широк специалист и да е компетентен във всяка от 10-те области. Традиционният подход в управлението на софтуерни проекти набляга повече на специализацията и предполага, че един член на софтуерен екип може да е специалист в една или няколко области, но не и във всички.

Моето лично мнение повече клони към втория подход, но това не е чак толкова важно. Дали ще зададете всички въпроси на един човек или ще зададете само част от тях, в зависимост от неговата тясна специализация, не е толкова важно. По-важно е какво очаквате от него като знания и опит и как те трябва да бъдат проявени в отговорите на кандидатите.

Продължи към пълния текст »

10 признака, че не ставате за програмист

Публикувано от Майк Рам на 21.10.2007 г. в 10:32 часа

От скоро открих блога 10 Тhings, в който редовно се публикуват списъци от по 10 или повече интересни неща и вече съм му редовен читател. Една от последните публикации, озаглавена 10 признака, че не ставате за програмист, ми направи впечатление не само с това, че е по темата на моя блог, но и с доста странните критерии, които описва, и които, според мен, ще предизвикат доста полемики.

Hacker

Например, признак #1 гласи: Предпочиташ да те обучават, вместо сам да се учиш. И по-нататък авторът споделя:

Програмистите се очаква да притежават всички неободими знания и умения, необходими за работата. Нещо повече, предполага се, че са много умни хора, които могат да решават всякакви проблеми. Това естествено води до извода, че на добрите програмисти обучение не им трябва.

Продължи към пълния текст »