Як знайти хорошого програміста 5 порад, rusbase
Чи існують способи ще на етапі співбесіди розпізнати програміста, який виявиться дійсно хороший в роботі і допоможе вивести проект на новий рівень?
Це питання поставили користувачі ресурсу StackExchange - а Олена Сизова, консультант IT-рекрутингового агентства GMS. вибрала кращі поради рекрутерам від розробників, які прозвучали в ході дискусії.
В умовах жорсткої конкуренції бізнес повинен приділяти максимум уваги створенню якісних продуктів і послуг. Технологічні компанії не можуть добитися хорошого результату без сильних розробників. Однак найняти програміста, який дійсно посилить команду, не так-то просто - часто буває, що здавався на співбесіді ідеальним варіантом кандидат після виходу на роботу не може ужитися з колегами, занадто багато часу витрачає на написання простого коду, але результат все одно не назвати хорошим.
Ось як рекрутери пропонують розпізнавати відмінних програмістів вже на етапі співбесіди.
Слід перевірити, наскільки кандидат любить програмування
Розробник з лондонського офісу Google Йон Скит (Jon Skeet) радить інтерв'юерам більше говорити про те, що цікаво кандидату-програмісту. Пристрасть, з якою людина говорить про свою роботу і свої досягнення - найнадійніший індикатор його професіоналізму. Скит каже, що за свою багаторічну практику не зустрічав програміста. захоплено розповідає про розробки, але не здатного написати якісний код.
Потрібно використовувати досвід інших компаній
Вкрай важливо перевірити навички роботи з кодом
Розробник Адам Лісс (Adam Liss) в свою чергу переконаний, що найважливішим елементам інтерв'ю з технічним фахівцем повинна бути перевірка його навичок роботи з кодом. Серед завдань може бути, наприклад, пошук помилок в шматках вже написаного коду, крім того, можна попросити кандидата розповісти, що цей код робить, а також оцінити стиль його написання, обраний алгоритм, можливість швидко внести необхідні виправлення і т.д.
Ще одним завданням може бути написання власного коду - відразу буде видно такі важливі моменти, як швидкість роботи, якість написаного і зручність підтримки. Корисним методом є і проектування невеликої системи, вирішальної конкретне завдання, прямо на співбесіді. Так можна зрозуміти, наскільки людина здатна вникнути в проблему, які підходи використовує, як взаємодіє.
Щоб оцінити чесність і реальний досвід кандидата, потрібно запитати у нього, в чому він, як їм здається, дійсно добре розбирається. Потім потрібно поставити просте запитання по темі. Якщо відповідь вірний, то запитати щось більш складне, і так крок за кроком, поки не буде досягнута межа знань інтерв'юйованого.
Цей метод не тільки показує реальний рівень знань, а й показує здатність кандидата до логічного мислення і роботи в команді. Уміння спокійно мислити і пояснювати іншим людям складні речі в обстановці стресу - важлива якість.
Дізнатися хорошого програміста зможе тільки хороший програміст
Ще один важливий момент полягає в тому, що програмісти - це люди з цілком певними навичками і талантами. Наприклад, програмування сприяє розвитку навичок вірною формулювання питань і пошуків відповіді на складні питання. Ні-програмісту складно оцінити кандидата в таких умовах, а ось професійний розробник зможе це зробити, вважає користувач під ніком Eigir.
На його думку, рекрутерам слід з самого початку запрошувати на інтерв'ю технічно підкованих людей, оскільки їхні запитання допоможуть краще розкрити кандидата - вони сформулюють завдання коректніше і запитають речі, які покажуть реальний рівень фахівця, а не те, як швидко він вміє гуглити або наскільки хороша у нього пам'ять.
Не можна забувати про особисті якості
ASP.Net-розробник Метт Джонс (Matt Jones) також підняв важливість перевірки не тільки технічних навичок кандидата, але і здатність до існування в колективі. На думку Джонса, навіть найгеніальніший програміст, який не вміє ладити з людьми, виявиться марним для компанії.
При наймі технічних фахівців же, навпаки, дуже часто цього аспекту приділяється не так багато уваги, що в майбутньому призводить до проблем і розчарування в найнятому фахівця з боку його колег.
З'ясувати, наскільки комунікабельний чоловік, можна досить просто - достатньо поставити йому кілька запитань, які часто звучать на співбесідах кандидатів на нетехнічні посади. Наприклад, питання про минуле місце роботи допоможуть з'ясувати, наскільки добре претендент ладнав з колегами. Програмування можна навчити, але навчити особистим якостям практично неможливо.
висновок
Пошук розробників і проведення інтерв'ю з ними - непросте заняття, яке вимагає підготовки. Технічних фахівців оцінюють, перш за все, на їхню безпосереднім навичкам. Однак не можна забувати і про інші важливі моменти, на кшталт комунікабельності та вміння працювати в команді.
Не завжди компанія може вирішити задачу найму якісних програмістів самостійно. І тут на допомогу приходять рекрутери - наприклад, ми в GMS Services і інші компанії. Іноді легше не винаходити велосипед і відразу довіритися професіоналам.