Как выбрать разработчика сайта?

Опубликовано

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

Программист способен решить одну и ту же задачу разными способами и эти способы отличаются сложностью реализации. Логично, что чем сложнее, тем дороже. Программист тратит на сложные решения больше времени и сил, а так же, применяет больше опыта и знаний. Возникает резонный вопрос - зачем же выбирать сложный путь? На этот вопрос можно ответить аналогией:

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

Решения:

  1. Лада Приора.
  2. Тойота Королла.
  3. Mercedes-Maybach.

Все 3 варианта решают поставленную задачу, но стоимость у них сильно отличается, так же как и качество.

Програмный код так же может отличаеться качественно. Он может отличаться скоростью исполнения, парадигмой программирования (функциональное, объектно-ориентированное, ...), ну или просто оформлением кода. Код низкого качество называется спагетти-кодом.

Спагетти-код просто и дешего реализовать, но сложно обслуживать и обновлять. Если перед вами встанет задача добавить функционала или что-то поменять, то разработчику понадобится больше сил и времени на реализацию новой задачи. Такой код будет стоить дороже в обслуживании, а стоимость обслуживания будет расти с каждым обновлением. В спагетти-коде больше вероятность незаметить/совершить ошибку (баг).

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

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

Вывод

При выборе разработчика, стоит обратить внимание не только на цену, но и на предлагаемое качество, а выбирать по соотношению цена/качество. Оценить качество кода НЕпрограммисту сложно, за этим можно обратиться к третьим лицам, к эксперту, который мог бы помочь с выбором.