Як я шукав php кодерів і що з цього вийшло

Одного разу мені доручили знайти чувака який буде шарити трохи в РНР. Це досить таки весела історія так як без жартів не обійшлось. Корисно буде для тих хто шукає або буде шукати роботу.

Отже, почалось все з того що потрібно було скласти список завдань. Вакансія junior php developer, але також я б назвав її php/web developer, так як треба було знати ще основи css/js це не було пріоритетом, але знати треба було.

Тобто junior має знати основи css js php. Має знати що таке клас і інтерфейс у php. В даній статті опишу як я проводив відбір кандидатів і які були кумедні випадки. Корисно буде як для досвідчених кодерів так і для тих хто шукає роботу у даній галузі.

Workflow

Я постарався піти по наступному принципу: відібрати резюме, назбирати 5-10 штук. Зідзвонитись з кандидатами. Протягом 2х днів провести всі співбесіди. Підібрати гідного кандидата і запропонувати йому випробний термін.

Пункт номер нуль. Відбір резюме.

Отже є тонни резюме які відправляють і які потрібно перечитати. Я розбив цей крок на декілька малих кроків)). Спочатку переглядаю чи все ок. Як я відсіював резюме:

Якщо немає ніяких технічних даних з чим працювала людина, я це резюме не розглядаю. Тобто якщо просто список технологій які знає програміст і більше нічого - я відсіюю його. Написати список зможе кожен а от що ви насправді реалізовували на цих мовах/технологіях уже набагато складніше. Переважно списки новачки складають по технології ctrl+c -> ctrl+v. Чому? Та тому що вони думають що краще взяти здоровезний список і це буде зачот. Але для мене особисто це не показник.

Ідемо дальше. Наприклад в резюме вказано з якими технологіями ви працювали і як - я його сканую за наступним правилом. А саме: наскільки ці технології корисні у компанії. Є такі кренделі які пишуть що шарять у фотошопі, ворді, екселі. Просунутий користувач ПК. Як на мене це смішно. Я раніше також був таким крендельом. Але це було багато років назад)) Дам пораду. Якщо ви створюєте резюме на посаду програміста - пишіть які саме ваші навички зв’язані з цією посадою. Ви ж не будете писати що вмієте малювати паркан, хоча ви дійсно це вмієте. Нікому це не цікаво. Хоча є 1% компаній які пишуть що їм треба гуру чувак який шарить у фотошопі, вміє верстати, шарить у ілюстраторі, розбирається у java, php, c++ і тд, але думаю це не для вас та і взагалі не для нормальних людей.

Хтось вставляє фотки в резюме, хтось ні: для відбору на посаду програміста це не впливає. Є фотка - норма. Немає - також норм. На співбесіді побачимось.

Посилання на github або на зроблені проекти. Звісно на github це кльово. Так як можна побачити код який чувак писав (скоріш за все писав). Дуже багато користувачів мають 1-2 дні контрібушина якраз за 1-2 тижні до відбору на роботу. Наскільки я можу вловити їхню логіку - треба щось запостити що б побачили що я крутий перець.  Посилання на готові проекти або на ті у яких брали участь дають тільки представлення про те у якій канторі працював програміст. Фактично по них нічого реального оцінити по цьому пункту не можна.

 хвилинка гумору

Одне кумедне резюме це коли чувак замість symfony написав symphony. Можливо автозаміна або вручну виправив))
Друге кумедне резюме це 4 сторінки А4 13 шрифтом. Читати не перечитати. Для чого аж стільки тексту? Там по пів сторінки було розписано що чувак робив у проекті. І так про все)
Резюме у яких тіпи пишуть "просунутий користувач пк" особисто для мене це смішно.
Ще один тіпок скинув посилання на zip архів з його кодом. Звісно це краще ніж нічого але краще вже на github =)

 Підведу підсумок першого пункту:

  1.  Складайте хороші резюме.
  2. Складайте лаконічні резюме (1-2 сторінки А4 норм). Пишіть тільки те що стосується вакансії + можливо ваші хобі або щось у тому роді.
  3. Посилання на ваш код на github є плюсом, але тільки тоді якщо там дійсно код викладається протягом якогось періоду а не просто що б був.
  4. Уникайте граматичних помилок особливо в назвах технологій.
  5. Фото не обов’язкове
  6. Вказуйте контактні дані.
  7. Пишіть те що знаєте, так як вас можуть перевірити.

Пункт номер один. Загальне враження.

Коли приходить людина на співбесіду я починав з одного і того ж запитання. Над чим цікавим працюєте в даний момент? Це допомагає особисто мені побачити як людина спілкується. Що дійсно вона цікавого зараз робить. Були юзери які казали: ну цікаве, не знаю... зараз роблю те і те. Норм? Норм. Були юзери які казали нічого. Були що взагалі не знають що сказати)

Наступне я питав у якій ide вони працюють. Для тих хто не знає що це таке я питав у якій програмі вони пишуть код. Якщо юзер каже що ось такий то редактор а раніше був такий, це звісно плюс. Ті хто каже що пишуть у phpstorm, netbeans або якомусь подібному це також галочка. Також питаю чи знають що таке система контролю версій.

І останнє питання не по темі але важливе, над якими проектами працювали і що ви у них робили. Свої проекти, на когось, чи взагалі комусь допомагали. Чим чіткіше ви це опишете тим краще для вас. Особисто я вважаю що будь хто у будь якій професії перед тим як іти на роботу, навіть на найнижчу посаду, має спробувати хоть щось приблизне поробити перед цим.

хвилинка гумору

Був юзер який не міг нічого чітко сказати. Як то кажуть вчителі зі школи: мекав і бекав. Щось собі бубнів і я ніяк не міг зрозуміти що він має на увазі. Вимова грає дуже важливу роль. Навіть якщо ви хвилюєтесь це менш напряжно так як завжди можна заспокоїтись. А якщо ви не можете чітко сказати те що думаєте - це серйозна проблема. Програмісти це не ті особи у яких має бути ідеальна дикція, але має бути хороша вимова. Бо як же ви будете пояснювати колезі по роботі всі свої думки?
У мене все сплановано. Якщо я кажу на 11:00 співбесіда тоді коли приходите на 10:55 норм, на 11:15 норм. Але був чувак який пришов на 20 хвилин раніше. Особисто для мене краще на вулиці 15 хв покрутитись аніж створювати незручності для тих хто вас приймає.

 Підсумок:

  1. Якщо ідеш на кодера спробуй щось перше покодь. Не просто стандартний hello world а якийсь міні проект. Цей же скорочувач урлів, або якийсь простий нотатник.
  2. Чітко висловлюй свої думки. Вимова і ще раз вимова. Якщо хочеш дома потренеруйся перед дзеркалом.
  3. Думай а потім говори: краще на 20 секунд задумайся а потім все скажи за один раз аніж розривай свою думку по середині на довгі паузи. 
  4. Важлива фішка - приходить за 5 хвилин до співбесіди. Віддихайтесь і будьте спокійні. Плануйте свій час. 

Пункт номер два. Знання мови РНР та інших технологій

Можливо хтось скаже що це смішно, але багато людей дійсно не знають основ. Я задавав наступні запитання. Що таке клас? Абстрактний клас? Інтерфейс? Чим відрізняється інтерфейс від абстрактного класу.

Складно? Ну я хз але це проста теорія. Я не питаю у вас якісь специфічні рнр функції у яких ви можете без проблем переплутати послідовність параметрів або назву. Це можна все почитати в документації. Про класи і інтерфейси також, але вважаю що прогер має знати основні конструкції.

Прості задачки на sql ін'єкції, на знання css (media queries, спрайти)

Зробив задачу про рнр яка була складною. Навіть дуже. Але хотілось побачити як думають люди. Є кусок коду і потрібно розказати що він робить його переваги і недоліки. Замудрено все тим що в операторі if зустрічаються і && i and i || i or =)

В загальному оцінював як людина орієнтується у нових тенденціях, чи знає основу, як старається вирішити задачі.

хвилинка гумору

Були юзери яких я зловив на гарячому. Для прикладу один чувак у резюме написав що шарить в jquery я дав йому приклад і запитав що він робить. Чувак каже: не знаю. Я кажу ви ж писали що добре знаєте jquery. Які функції ви використовували у jquery бібліотеці - чувак мовчить. Ось така історія. Ця сама схема працює з усім. Якщо хтось написав що шарить і крутий тіпок у php а простого не знає то відповідно і жирний мінус не за те що не знає, а за те що старається обманути.

 Підсумок:

  1. Пишіть у резюме те що знаєте, вас зможуть перевірити.
  2. Якщо не знаєте чогось кажіть - не знаю. Але не старайтесь видумувати неіснуючі конструкції
  3. Думайте а потім відповідайте
  4. Краще висловлювати свої думки коли ви вирішуєте задачу. Тобто дали задачу можете розмірковувати в голос - це норм штука і дає зрозуміти як ви орієнтуєтесь вданій області.

Final

В загальному народ потраплявся який ні бум бум. Дуже дивно як такі люди хочуть потрапити на роботу. Були чуваки які дійсно знають що і куди. Є ті які ніде і ніколи не працювали по даній спеціальності але самі розробляли якісь штуки, самі вчились І це є величезним плюсом. А були і такі які не могли чітко висловити свою думку.

Знання грають роль, але є дуже багато факторів є які впливають на вибір кандидати. Ви можете все знати але буде заплітатись язик і ви провалитесь. Ви зможете знати мову рнр але в інших областях будете обманювати - вас також можуть не взяти на дану посаду.

В загальному будьте чесними, оцінюйте реально свої знання, кодьте, кодьте і ще раз кодьте. Досвід грає значення, слава Богу у нашій професії його можна здобути безкоштовно.

Коментарів: (3)

  1. Mike
    Mike 2015-03-30 16:04 Відповісти
    Зачотна стаття. Легко читається. Десь серед тих обовтусів був і я?
  2. Яким
    Яким 2015-03-30 19:07 Відповісти
    Ой. Та не треба прибіднятися. PHP програміст це de facto також і та людина яка займається версткою. 99,8748444% відсотків PHP програмістів мають знати й JavaScript, jQuery, jQuery UI, Twitter Bootstrap, CSS 3, кроссбраузерну, кросспдатформенну, адаптивну і т.д. верстку.
  3. funivan
    funivan 2015-04-08 14:02 Відповісти
    @Mike та всі ми були обовтусами ))

    @Яким так веб розробник має знати багато технологій і з досить різних галузей