Как найти разработчика php

Чтобы найти PHP-разработчика, иногда приходится тратить недели и даже месяцы. Неприятно, если кандидат не справился с задачами — в таких случаях компания теряет деньги, и подбор запускается снова. Как не ошибиться при выборе PHP-разработчика, нам рассказала Язиля Насибуллина — IT-рекрутер в международном кадровом агентстве Onity, автор курсов для рекрутеров и сорсеров и пособия IT-рекрутера.

Чем занимаются PHP-разработчики

PHP-разработчик — это человек, который занимается разработкой сайтов и сложных web-платформ. 

Кто-то разрабатывает сайты с помощью CMC (средств управления содержимым): Magento, Drupal, WordPress и других. Это немного проще, и заработок таких специалистов будет немного ниже рынка.

Другие разрабатывают более сложные сайты, форумы, личные кабинеты и платформы. Такие PHP-разработчики обычно знают JavaScript, HTML, CSS, часто работают с базами данных MySQL, MariaDB, Oracle.

В зависимости от проекта и функций, которые он выполняет, PHP-разработчики могут иметь навыки работы с Symfony, Laravel, Yii, Zend и другими Фреймворками.

С какими трудностями можно столкнуться при поиске PHP-разработчика

При поиске PHP-разработчика рекрутер может столкнуться с такими трудностями:

  • У кандидата мало информации в резюме. Разработчики часто не пишут про свои проекты и стек технологий, который они используют в работе. В таком случае созвонитесь и пообщайтесь с кандидатом лично — так вам будет легче понять, что умеет разработчик и над какими проектами он работал.
  • Заказчик требует знания конкретных фреймворков. Например, заказчик говорит, что компания готова рассматривать только кандидатов со знанием Symfony. На практике опытный разработчик сможет разобраться с любой технологией за две первые недели. Например, переходы с Laravel на Symfony встречаются часто, а чтобы перейти с фреймворка Yii, потребуется немного больше усилий и времени.

6 площадок для поиска PHP-разработчика

Чтобы найти PHP-разработчика, задействуйте сразу несколько каналов. Вот самые популярные из них:

Как найти PHP-разработчика: 6 эффективных площадок для поиска + 5 вопросов, которые нужно задать на собеседовании

А теперь пройдёмся по каждому из каналов:

  • HH.ru. Этот сайт считается одним из самых популярных среди других работных платформ. Здесь обитают специалисты из разных секторов, включая и кандидатов узкой специализации в сфере IT. На HH.ru вы сможете бесплатно просмотреть ограниченное количество резюме, а за остальное придётся заплатить.
  • LinkedIn. Чтобы эффективно пользоваться площадкой, сначала нужно научиться обходить блокировку, узнать про Boolean Search и X-ray Search, понять, как связываться с кандидатами бесплатно. LinkedIn особенно хорошо работает в крупных городах и для международных вакансий. 
  • Хабр Карьера. Площадка создана специально для поиска IT-специалистов. Доступ к базе резюме платный, но зато здесь есть, из кого выбирать.
  • GitHub. Эта платформа — что-то вроде международной тусовки IT-специалистов. У каждого из них есть профиль с информацией о себе и контактами. Вы можете посмотреть, где сейчас работает специалист и какой вклад он уже внёс в другие проекты.
  • Stack Overflow. На этом сайте также собираются IT-специалисты со всего мира. Они размещают здесь вопросы о технологиях, а коллеги отвечают на них. Все вопросы помечаются тегами, по которым легко найти нужную тему. Чем больше качественных ответов, тем выше рейтинг пользователя. У каждого человека есть профиль, в котором указан рейтинг и информация о компетенциях и достижениях.
  • Telegram, Вк, Facebook. Чтобы найти специалиста в этих каналах, вы можете вступить в профильные сообщества, где разработчики общаются с единомышленниками, или опубликовать вакансию в специальных работных группах.

Как составить вакансию для PHP-разработчика

Перед тем, как приступить к поиску, нужно правильно составить текст вакансии. Вот несколько лайфхаков:

  • Ставьте на первый план продукт или проект, который предстоит разрабатывать. Так вы частично отсеете нерелевантных кандидатов. Если в вакансии подробно описан продукт или проект, разработчику будет легче оценить уровень сложности и понять, подходит ли он на эту вакансию и есть ли смысл оставлять отклик.
  • Прописывайте конкретные задачи, с которыми предстоит работать кандидату.

  • Указывайте стек технологий, которым должен владеть разработчик. Делайте акцент на инструментах, с которыми придётся работать, а не на дополнительных навыках, которые могут не пригодиться. Часто компании указывают в требованиях всё, что относится к PHP-разработке. Практика показывает, что отметить лучше только те навыки, которые нужны будут для конкретного проекта.

Как разобрать отклики и выбрать подходящего кандидата

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

Если стек технологий соответствует требованиям, убедитесь, что у кандидата есть релевантный опыт работы. Для этого посмотрите, какие задачи он решал на предыдущих местах работы и насколько успешно он это делал.

Тестовое задание для PHP-разработчика

Вопрос с тестовым заданием сильно зависит от проекта и задач, на которые вы ищете PHP-разработчика.

Для некоторых позиций без тестового задания не обойтись, потому что техническое интервью не сможет полноценно раскрыть знания кандидата и его логику решения задач.

В таких случаях технический специалист составляет тестовое задание. 

Чтобы вы могли оценить компетенции кандидата, тестовое задание должно отражать реальные задачи, которые предстоит выполнять разработчику.

В идеале тестовое задание должно занимать не более четырех часов времени кандидата — этого достаточно, чтобы разработчик показал свои навыки. 

По результатам тестового задания успешного кандидата приглашают на собеседование, чтобы детально обсудить условия работы и лично познакомиться с будущим сотрудником. 

Как провести собеседование с PHP-разработчиком

Перед собеседованием накидайте список вопросов. Здесь всё зависит от задач, которые предстоит решать разработчику: одни и те же вопросы могут быть незаменимы для одного проекта, но совершенно непригодны для другого. 

А чтобы вам легче было подготовиться к собеседованию, мы составили список универсальных вопросов, которые помогут раскрыть компетенции кандидата.

5 вопросов, которые нужно задать на собеседовании с PHP-разработчиком:

  • С какими проектами вы работали?
  • Какой подход вы использовали при работе с этими проектами?
  • С какими CMS/фреймворками вы работали? 
  • В чем разница между PHP 5.6 и 7.х?
  • Какая была команда, и как распределялись обязанности внутри этой команды? 

Готово! Вы можете изменять и дополнять эти вопросы, в зависимости от ситуации. Будьте гибкими, докапывайтесь до сути, и у вас точно получится найти PHP-разработчика даже на самый сложный проект!

Найти отличного программиста — большая проблема. Один не соответствует квалификации, другой затягивает сроки, третий просто не отвечает на сообщения. Многие банальные вещи пропускаются рекрутерами даже в крупных компаниях. А уж если вы проводите собеседование без эксперта в нужной дисциплине, или если у вас маленький стартап, и вы пытаетесь нанять одного из первых подходящих сотрудников, всё становится ещё в двадцать раз сложнее. Подобрать достойного и опытного специалиста без широких знаний в индустрии — задача нетривиальная.

Мы в Rubrain.com занимаемся поиском программистов уже пять лет занимаемся поиском программистов, и отобрали в базу более шести тысяч (!) сотрудников уровня middle+. Большинство из них на практике оказались отличными профессионалами. Хотя с некоторыми, конечно, первое впечатление было ошибочным. Но здесь как в отношениях: иногда нужно пожить вместе, чтобы понять, чем именно тебя могут бесить. Даже самый крутой профессионал может попасть в чёрную полосу и стать лентяем.

Но для начала, если вы не хотите обучать разработчика с нуля, нужно смотреть на кандидатов с хотя бы 2-3 годами опыта (лучше, конечно, 5). Чтобы они могли сами создавать новый продукт, брать на себя ответственность, принимать архитектурные решения. В идеале сотрудник, которого вы вызываете на первое собеседование, уже поработал в крупных фирмах, поучаствовал в больших проектах, получил нужно менторство. Если вы нанимаете фрилансера — у него должно быть несколько сайтов в портфолио (достойных или нет — это мы сейчас проверим). Кстати, фрилансеров — горячо рекомендуем, особенно если вы берёте сотрудника на удаленку. Если человек всю жизнь работал на себя, определенное чувство ответственности у него точно есть, и от внезапно нахлынувшего чувства свободы он в запой не уйдет.

Итак, у HR есть резюме программиста. Проекты, над которыми он работал, или кусочки кода. Что теперь?

Оценить качество его работы по коду вы можете, даже не имея навыков программирования. Как это сделать? Существует, как минимум, два способа определить огрехи:

1. С помощью специальных инструментов. Можно прогнать веб-приложения или сайты из портфолио потенциального сотрудника через особые онлайн-сервисы, чтобы получить общую картину его компетенции. Эти сервисы (или утилиты) обнаруживают ошибки, «мусорный» код, излишне сложные комбинации и другие признаки не очень качественного труда разработчика. Они найдут что-то в любом случае — поскольку идеального кода не существует в природе. Другой вопрос, сколько огрехов так удастся обнаружить, и насколько значимыми они будут.

Для PHP хорошо подходит Mess Detector — он как раз находит чересчур сложные методы, потенциальные баги, неиспользованные расширения, не слишком чистый или неоптимальный код и так далее. Также можно применять CodeSniffer, находящий ошибки в синтаксисе или стандартах кодинга. Он подходит не только для PHP, но и для CSS и JavaScript.

Также, отдельно, существуют подобные инструменты для CSS и HTML.

2. Пробежавшись по коду глазами. Даже HR без опыта в разработке вполне может это сделать. Нужно немного подготовиться и изучить стили программирования, но это не так сложно, как кажется. Просто понять, будет ли следующим людям удобно работать с кодом этого разработчика. Правильно ли он расставляет фигурные скобки, обрамляет ли он пробелами бинарных операторов, добавляет ли он комментарии, описывающие информацию о его коде.

Вкратце о том, как всё должно выглядеть, можно почитать тут, а намного подробнее — тут. Если код человека, написанный для коммерческого проекта, не содержит таких элементарных вещей, говорить с ним особенно не о чем: поддерживать проекты, созданные этим разработчиком, станет слишком сложно. Хороший пример того, как определить уровень профессионализма разработчика, приводит компания Edison. Даже по небольшому кусочку кода можно отличить junior от senior и от миддла.

О том, что вы нашли хорошего кандидата, также может говорить:

  • Сосредоточенность на вопросах безопасности. Ваш бэкенд — ваше всё. Отличный разработчик не только решает поставленную перед ним задачу, но и, параллельно, защищает продукт от потенциальных опасностей. Он должен знать об SQL-инъекциях, XSS-атаках, перехвате сессий, CSRF и так далее. Поговорите с ним на эти темы, и всё станет понятно.
  • Применение фреймворков. От них отказываются только совсем «зазвездившиеся», ведь их использование повышает чистоту кода и позволяет закончить задачу намного быстрее.
  • Использование готовых решений. Опять же, в этом нет ничего зазорного, наоборот: это экономит время, а их качественная адаптация под ваш проект может оказаться удачнее, чем написание нового кода. Если вы ищете программиста в команду стартапа, это тем более пригодится.
  • Постоянное обучение. Бэкенд-разработка постоянно развивается. Появляются новые технологии, PHP1 меняется на PHP 7.0. Кандидат, который ещё несколько лет назад был на вершине технологий, теперь может оказаться на свалке истории. Если человек читает профильные сайты, посещает Habr, изучает новые фреймворки — это ему большой бонус. Консервативный веб-разработчик, живущий только технологиями пяти лет назад — не ваш кандидат (даже если вы сейчас работаете на них).

Вопросы, которые стоит задать

Задачки разного уровня сложности, позволяющие быстро отделить зёрна от плевел. Или, по крайней мере, понять, насколько «плывёт» кандидат. Часть из них подходит даже для интервью специалистов уровня middle+. А познаний в языке рекрутеру иметь не обязательно.

  • Расскажите о внутреннем устройстве массивов в PHP?

Работа с массивами — огромная часть PHP. Поэтому программист для стартапа должен понимать, как они представлены изнутри (в виде хэш-таблиц, как и большинство других структур данных). PHP написан на языке C, где массивы имеют только целочисленные индексы. Чтобы транслировать индексы массивов из PHP в целочисленные индексы массивов C используется хэш-функция. Она преобразует индексы (и строковые, и целочисленные) в целые числа. Значения располагаются в итоговой хеш-таблице.

  • Какие бывают модели (подходы, парадигмы) разработки кроме ООП?

Наиболее часто встречаются такие модели как аспектно-ориентированная, функциональная и процeдурная.

  • Что такое паттерны (шаблоны) проектирования?

Типовые решения определенной проблемы, многократно повторяемое в процессе проектирования архитектуры продукта. Показывают взаимодействия между классами, позволяют сделать систему гибкой и легко изменяемой.

  • Какие магические методы вы знаете? Что это вообще такое?

Магические методы — методы в PHP, начинающиеся с двойного подчеркивания «__». Всего их тринадцать, в том числе __construct, __destruct, __isset, __set, __unset, __clone, __sleep, __wakeup, __call, __callStatic, __get, __toString, __set_state.

  • Назовите как минимум пять суперглобальных переменных, названия которых начинаются с $_. Дайте им определение. Расскажите об их связи с переменной $GLOBALS.

Человек, вступающий в вашу команду веб-разработчиков, должен понимать, что в массиве суперглобальной переменной $GLOBALS хранится информация, доступная в глобальной области видимости. В том числе и другие суперглобальные массивы. К примеру, доступ к $_ENV можно путём: $GLOBALS[‘_ENV’];

В плане других суперглобальных переменных кандидат может рассказать о:

  • $_GET — массиве, хранящем пары из ключа и значения, которые отправлялись на сервер методом get.
  • $_POST — массив, хранящий пары, отправленные методом post.
  • $_REQUEST — объединяет пары из $_GET и $_POST.
  • $_SESSION — массив, в котором находятся значения переменных сессии между запусками приложения и переходами по страницам.
  • $_COOKIE — дает доступ к переменных, находящихся на клиенте в файлах кукис.
  • $_ENV — хранит значения, связанные с кофигурацией хоста.
  • $_SERVER — выдает данные веб-сервера, относящиеся к выполнению программы.
  • $_FILES — массив входных данных, которые были получены при отправке файлов методом post.
  • Какой вариант проверки существования данных в массиве наиболее быстрый? Почему?

Есть несколько способов быстро проверить, не пустой ли массив. В том числе, среди наиболее популярных:

  • $arr = array();
  • if (empty($arr)) {echo “этот массив пуст”;}
  • if (!count($arr)) {echo “этот массив пуст”;}
  • if (isset($arr[0])) {echo “этот массив пуст”}
  • if (!$arr) {echo “этот массив пуст”;}
  • if (!sizeof($arr)) {echo “этот массив пуст”;}

Можно также устроить проверку через if/else, есть и другие варианты. Но не все PHP-программисты смогут сразу ответить, как всё это работает.

empty() — работает намного быстрее, чем count(), в обоих сценариях, как с пустым, так и с заполненным списком. Причина — когда мы считываем длину строки, используя count (или sizeof), программа должна пройти через все символы, чтобы понять, сколько знаков там есть. Она начинает в начале, и идёт до конца. На это тратится время (пусть даже небольшое). В empty же она останавливается после первого знака, когда понимает, что массив не пустой. Проводится простая проверка: является ли начало строки таким же, как и конец строки. Всё остальное работает так же, как и count. А isset — вообще подходит только для индексных массивов.

  • Даны две функции. Есть ли между ними разница? Какая?

— function f(a,b) { return a+b }

и

— var f = function(a,b) { return a+b }

Разница существует — она состоит в видимости функции. Первый пример, без var, виден везде в текущей области видимости. Даже до самого определения функции. Второй пример, с var, присваивает функцию переменной, поэтому такая функция видна только после её определения.

Если с квалификацией, с качеством кода и с ответами всё неплохо — можно проводить тестовое задание! Опять же, сделать это может даже сам руководитель небольшой компании или HR. Примеров достаточно в интернете. Желательно, чтобы тестовое (для специалиста любого уровня, даже сеньора) могло быть выполнено за довольно короткий промежуток времени, от 15 минут до четырех часов. Так количество кандидатов, прошедших собеседование до конца, можно будет повысить. И затем выбирать уже по личностным качествам и интересу к работе.

На данный момент PHP является одним из лидеров для создания динамических сайтов (сайты, состоящие из изменяемых веб-страниц). Существует мнение, что язык PHP отходит на второй план, тем не менее исследование

W3Tech

указывает рост использования языка в веб-разработке на 6,6% за последние 9 лет. По данным

Stack Overflow

за 2019 год, PHP занимает 8 место по популярности среди разработчиков.

Если говорить о серверной стороне веба, то вряд ли разработчик сможет работать в этой сфере без знания PHP. В настоящее время более

80% веб-сайтов

в мире работают с использованием PHP. Например, сайты Facebook, VK, Wikipedia, Slack, WordPress и т.д.

Поговорим о фреймворках PHP.

Laravel

— это популярный фреймворк с открытым кодом, предназначенный для разработки с архитектурной моделью MVC (Model-View-Controller). MVC описывает способ построения структуры приложения, сферы ответственности и взаимодействие каждой из частей в данной структуре. Laravel объединяет в себе всё самое лучшее, что есть в других PHP фреймворках. Он упрощает решение наболевших задач, таких как аутентификация, маршрутизация, сессии и кэширование. Изначально Laravel создавался как конкурент

CodeIgniter

, следующего по популярности фреймворка. CodeIgniter существует уже более 13 лет за счет своей простоты и удобства. В 2011 году он разделился на две ветви — CodeIgniter Core и CodeIgniter Reactor. Топ-3 замыкает фреймворк

Symfony

, который также использует паттерн MVC. Он предлагает быструю разработку и управление веб-приложениями, помогает решать рутинные задачи веб-программиста. Работает только с PHP 5 и выше.

Заработные платы разработчиков PHP по Москве начинаются с 50 000 рублей и заканчиваются в районе 200 000 рублей. Если говорить о Санкт-Петербурге, доход программистов сравним с московским — от 40 000 рублей до 200 000 рублей. В Казани PHP-специалисты получают 35 000-175 000 рублей. Данные предоставлены нашим чат-ботом в

Telegram

.

Telegram-каналы PHP

@php_jobs

— 1575 подписчиков. Вакансии и резюме по PHP, Laravel, Symfony, Yii и т.д.

@phpgeeks

— 3850. Сообщество PHP-программистов. Публикация вакансий на Telegram-канале

@jobGeeks

.

@phpGeeksJunior

— 1256 подписчиков. Сообщество начинающих PHP-программистов.

@phpclub

— 1000 подписчиков. Сообщество PHP-программистов. Публикация вакансий через Google-форму.

@laravel_pro

— 2705 подписчиков. Чат для всех программистов, работающих с PHP-фреймворком Laravel.

@laravelrus

— 1452 подписчика. Сообщество программистов фреймворка Laravel. Публикация вакансий через группу VK.

@symfony_php

— 1288 подписчиков. Сообщество разработчиков на Symfony.

@symfony_careers

— 450 подписчиков. Вакансии, связанные с фреймворком Symfony.

@phpdevjob

— 1062 подписчика. Платное размещение вакансий для разработчиков PHP.

@jobforphp

— 287 подписчиков. Вакансии для PHP Developers. Канал ведется рекрутинговым агентством New.HR.

@beerphp_moscow

— 146 подписчиков. Сообщество PHP-программистов в Москве.

@phpdigest

— 2774 подписчиков. Новости, материалы, инструменты, ссылки и комментарии по PHP.

@phptoday

— 1500 подписчиков. Новости и статьи из мира PHP.

@elephant_php

— 1045 подписчиков. Новости, хаки, статьи и интересные библиотеки.

PHP-разработчики – востребованные специалисты на рынке труда, которые работают над созданием и поддержкой веб-приложений и сайтов. Их задача – обеспечить корректную работу серверной части проекта, обрабатывать запросы пользователей и предоставлять нужную информацию. В данной статье мы рассмотрим, с какими трудностями может столкнуться IT-рекрутер при поиске PHP-разработчика и предложим практические советы по привлечению и отбору кандидатов.

1. С какими трудностями можно столкнуться при поиске PHP-разработчика

  • Большой спрос на PHP-разработчиков и недостаток качественных специалистов на рынке труда.
  • Разнообразие навыков и опыта, которые могут быть важны для разных проектов.
  • Высокие ожидания кандидатов в отношении зарплаты и условий труда.

2. 6 площадок для поиска PHP-разработчика

  1. LinkedIn – крупнейшая профессиональная социальная сеть, где можно найти профили множества PHP-разработчиков.
  2. GitHub – площадка для размещения кода и поиска специалистов, занимающихся разработкой на PHP.
  3. Stack Overflow – популярный ресурс среди разработчиков, где можно найти кандидатов, активно участвующих в обсуждении вопросов по PHP.
  4. HeadHunter – крупный российский портал по поиску работы, на котором можно найти вакансии и резюме PHP-разработчиков.
  5. Freelancehunt – площадка для поиска фрилансеров, в том числе PHP-разработчиков.
  6. Рабочие мессенджеры и социальные сети, такие как Telegram и VK, где существуют группы и каналы, объединяющие разработчиков и предлагающие вакансии.

3. Как составить вакансию для PHP-разработчика

  1. Четко определите требования к кандидату: опыт работы, знание фреймворков и технологий.
  2. Укажите предлагаемую зарплату и условия труда, чтобы привлечь внимание потенциальных кандидатов.
  3. Расскажите о проекте и задачах, которые предстоит решать PHP-разработчику.
  4. Укажите возможные пути профессионального развития и перспективы работы в компании.
  5. Не забывайте о важности оформления вакансии – сделайте текст понятным, структурированным и интересным для чтения.

4. Как разобрать отклики и выбрать подходящего кандидата

  1. Анализируйте резюме на предмет соответствия требованиям вакансии.
  2. Обращайте внимание на опыт работы с различными технологиями и фреймворками, указанными в требованиях.
  3. Изучите портфолио кандидата, чтобы убедиться в его опыте и навыках.
  4. Проверьте рекомендации от предыдущих работодателей, если таковые имеются.

5. Тестовое задание для PHP-разработчика

  1. Подготовьте тестовое задание, которое будет соответствовать реальным задачам проекта и позволит проверить знания и навыки кандидата.
  2. Определите сроки выполнения тестового задания и объясните критерии оценки.
  3. Проанализируйте результаты тестового задания на предмет соответствия ожиданиям и возможности кандидата решать подобные задачи в будущем.

6. Как провести собеседование с PHP-разработчиком

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

Заключение

Поиск и отбор PHP-разработчика может быть сложным процессом для IT-рекрутера из-за конкуренции на рынке труда и разнообразия требований к кандидатам. Однако, соблюдая рекомендации, представленные в данной статье, вы сможете эффективно провести процесс отбора и найти специалиста, который будет соответствовать нуждам вашего проекта и стать ценным членом команды. Не забывайте о важности прозрачности в вакансии, четкости критериев отбора, и активного использования различных площадок для поиска подходящих кандидатов. Таким образом, вы сможете упростить процесс найма и улучшить качество подбора PHP-разработчиков для вашей компании.

15 вопросов для PHP программиста на собеседовании

  1. Что такое PHP и каковы его основные преимущества?
  2. Как вы оптимизируете производительность PHP-скриптов?
  3. Что такое SQL инъекции и как их избегать в PHP?
  4. Что такое SPL и каковы его основные классы и интерфейсы?
  5. Что такое PSR и каковы его основные рекомендации?
  6. Какие библиотеки и фреймворки вы использовали в прошлых проектах?
  7. Как вы работаете с сессиями в PHP?
  8. Каким образом можно реализовать авторизацию в PHP?
  9. Какова роль Composer в PHP проектах?
  10. Как вы работаете с REST API в PHP?
  11. Какие существуют методы кэширования в PHP?
  12. Как вы работаете с базами данных в PHP?
  13. Какие механизмы обработки ошибок вы используете в PHP?
  14. Что такое AJAX и каковы его основные принципы работы?
  15. Каковы основные принципы объектно-ориентированного программирования в PHP?

Елена, наверное это вы мне недавно писали в почту, а потом мы так и не обсудили в скайпе. Отвечу сначала на ваши вопросы.

1) На доработку чужого шаблона люди в принципе соглашаются неохотно?

Чаще всего да. Неизвестно качество кода (количество продаж шаблона о качестве вообще ничего не говорит), неизвестно насколько легко/сложно внедрять требуемые изменения. Неизвестно насколько код “понятен”, насколько документирован. Как минимум надо потратить какое-то время чтобы в нем разобраться. Фрилансер низкой квалификации, у которого работы мало, с удовольствием поковыряется бесплатно, но вряд ли потянет в итоге. У фрилансеров посильнее и так работы валом, поэтому изучение чужого кода возможно только в оплачиваемом варианте.

2) Получается, что на Freelancehunt.com и Fl.ru тусуется одна школота или специалисты уровня ниже среднего?

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

3) Если человек предлагает свои услуги с почасовой оплатой, будет ли оплачиваться вникание в имеющийся код?

Если это чужой код, который нужно модифицировать / интегрироваться с ним – да, конечно. А также все остальное время на проект – обсуждения, согласования, правки, тестирование и тд – все это тоже работа и биллится точно так же, как и непосредственно написание кода.

4) Тестирование результатов работы тоже отпугивает людей? Просто общалась с иностранными разработчиками и они акцентировали внимание на том, что будут проводить тестирование.

Смотря что вы имеете в виду под тестированием. Написание полноценных тестов – без проблем, если это нужно. Но это тоже время, которое вам надо оплачивать. Обычное тестирование – проверить что все работает как надо, у нормальных разработчиков входит в рабочий процесс. Никто не закоммитит код, если он не проверен.

5) Если человек пишет ставку за день, сколько часов в среднем он будет работать?

Среднестатистическое количество рабочих часов. 5-6, не более. Впрочем, только некоторые виды работ можно так считать, например верстку без сложного javascript. Либо сборка темы из статики. На разработку каких-то сложных алгоритмов надо считать почасовку.

В целом, ситуация довольно простая. Есть задачи простые и задачи сложные. Есть разработчики начинающие и разработчики опытные. В экосистеме WordPress есть еще целый пласт “имплементаторов”, которые разработчиками не являются вообще – они умеют настроить тему, копипастить какие-то куски кода из интернета, не более. Начинающих много, они стадом налетают на любой заказ на бирже в надежде получить его, а сама задача – “по ходу разберемся”. Опытных разработчиков меньше, и работы у них обычно и так хватает – очередь стоит, плюс часто еще свои проекты. Поэтому есть возможность проекты выбирать – адекватные клиенты, хорошие бюджеты, интересные задачи. Рейт у опытных разработчиков выше, но в итоге может выйти иногда даже дешевле – опытный разраб задачу точно сделает, сделает в срок, и сделает достаточно быстро. Начинающий даже если и сделает, то потратит сильно больше времени.

И еще один важный нюанс с чужим кодом, о котором мало кто думает. Некоторые опытные разработчики не умеют говнокодить. Разучились давно. И если в том коде, который ему дали, есть кривые решения с которыми придется интегрироваться, то скорее вам будет предложено отрефакторить все, чтобы весь (как минимум – весь связанный с задачей) код на выходе был нормальным. Неопытный разработчик построит свои грабли поверх того, что ему дали – лишь бы работало, сдаст проект, получит деньги и забудет. Это к вопросу об отдельных таблицах в БД. Как написали вам в комментах, не факт, что они нужны – тот, кто вам это порекомендовал, вероятно, недостаточно понимал ядро и возможности самого WP. И такие моменты могут быть по всему коду проекта. Опытный разработчик вникнет в ТЗ, изучит код, и предложит вам оптимальное решение.

Добавить комментарий