Почему программисты часто не заканчивают работу над проектом?
===============================================================

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

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

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

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

 Две основных причины:  
  

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

2. Оценить время проекта в программировании заранее точно очень сложно. Почти невозможно ( читай Брукс "Мифический человеко-месяц", эту проблему осознали почти полвека назад, но до сих пор так полностью и не преодолели, а уж новички годами пытаются научиться правильно оценивать проекты). По мере работы над проектом понимаешь, что тратишь свое время за копейки.  
  

Следовательно:  
  

Осознание, что тратишь свое время за копейки, когда кругом полно проектов - заставляет сливаться.  
  

Есть еще одна проблема - вам же не придет в голову предложить таксисту перевести вашу мебель, когда для этого нужен грузовик? Вы же не нанимаете Камаз или Газель-грузовичок для того, чтобы он довез вас из кафе домой после нетрезвой вечеринки, а обращаетесь к таксисту? Это просто другой класс автомобилей и все это понимают.   
  

С программированием все не так - сложнейшую задачу могут предложить студенту. Специалисту по 1С могут предложить сделать сайт. И т.п. Путают админов и программистов и т.п.   
  

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

> На данном сайте много программистов, и наверняка, у многих есть и были такие проекты, за которые брались делать, но не заканчивали в силу определенных причин. Проекты, здесь, имею в виду - не свои личные, а заказчика.  
> 

  
  

Я - нет, не бросаю. Так как я умею объяснять заказчику, что проект будет стоить в разы дороже, чем изначально договаривались.   

Но некоторые люди, которым я давал работу - сливались тихой сапой, такое было. Причиной была проблема 2 и их стеснительность в объяснении проблемы 1 (что нужно бюджет пересмотреть). Многим проще слиться, их ломает выйти на разговор и все объяснить.  
  

Еще бывает - программист, не говоря тебе ни слово, становится занят на месяц-другой (другой проект), тянет время с "больным хомячком" и т.п. А потом возвращается и таки заканчивает твой проект.  

>   
> 
> У меня вот такая проблема наблюдается периодически. Например, месяц назад договорился с программистом о проекте по установке новой верстке на сайт с сохранением текущего функционала, который он должен был сделать за неделю. В результате проект был сдан через месяц, а еще куча багов осталась, некоторые он сделал, некоторые очень важные не доделал. Сейчас просто приходится искать другого исполнителя  
> 

  
  

В низком ценовом сегменте - это обычная ситуация.  
  

Нормальные специалисты таких косяков не допускают. Хотя 1 неделя в 2 превратиться может запросто.  
  

Есть еще особенность фриленса - вы же у него не единственный заказчик. Он не будет от новых заказов отказываться, так как вы ведь тоже можете слиться и он останется на бобах. Поэтому фриленсер берет все интересные заказы, независимо от того, насколько он занят в данный момент.  
  

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

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

  
  

Часто занижают цену и сроки или по ошибке (их очень сложно оценить точно, если речь не идет о примитивном проекте) или по ошибке  

Или осознанно, чтобы взять заказ, перебить конкурентов, а потом выставить дополнительный счет.  
  

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

  
  

1. Переходить в другой ценовой сегмент. Прекращать работать с самыми дешевыми специалистами. Хорошие специалисты косяков подобных не допускают. Но их цена не на 10% выше. А в 2-3-4 раза. Я серьезно.  
  

2. Переходить на работу с гибкой системой оплаты (регулярно пересматривать сроки и стоимость, делить проект на мелкие части).  
  

3. Или вообще на почасовку перейти (есть такие программы, которые делают скриншоты и показывают чем занимался работник и вы можете проверить, что вас не обманывают).  
  

4. Контролировать результат, например, раз в 2 дня. 

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

Выход прост - составлять ТЗ, подписывать договор (включать в него ТЗ) и не делать больше 30% предоплаты вплоть до конца завершения работы. Проверили - оплатили. 

 Психологически это гм... увы логично.  

Программист имеется ввиду же фрилансер? Фрилансеру очень трудно отказываться от заказов - могут больше не обратиться. Поэтому программист должен максимально быстро расправиться с вашим заказом, чтобы приняться за следующий - качество страдает, неочевидные проблемы могут отнять 80% времени - и эффективней становится проект забросить - сам проект же программисту не нужен - ему нужны денежки за него. 

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

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

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