А в целом, стоит ли вообще пытаться улучшить это взаимодействие с разработчиками? Почему это заказчик должен еще и об этом думать. Заказчик платит, так пусть разработчики и думают как улучшить это взаимодействие, верно? Неверно.
Почему для заказчика ВЫГОДНО иметь эффективное взаимодействие и хорошие отношения с разработчиками.
Если отношения хорошие и взаимодействие построено грамотно:
Если плохие отношения:
Далее мы разберем элементы, которые позволяют улучшить это взаимодействие. Это должно идти как от разработчика, так и от заказчика.
Это сильно упрощает программисту жизнь, когда не нужно постоянно разгадывать полунамеки клиента в плане негатива. В нашей практике были такие клиенты, которые постоянно держат в полунапряжении без каких-то конструктивных решений. Обычно это рамка проблемы (кто виноват, почему так вышло и т.д.). Т.е. задача не в быстром движении вперед, а в выяснении отношений и поиска виноватых. Работать над такими проектами очень некомфортно и совершенно неэффективно. Вместо написания код под проект и проработки заданий, время тратится на бесконечные коллы ни о чем.
Если же отношения нормальные, конструктивные и все недомолвки говорятся сразу и доброжелательно - все гораздо упрощается, нет этого давлеющего эмоционального фона. Ошибки бывают. От этого никуда не деться. Именно они часто становятся предметом таких микроконфликтов.
Если каждая ошибка превращается в конфликт с темой Кто виноват, программист просто будет искать способ выхода из подобного проекта.
Важно договориться о нормальном взаимодействии для быстрого решения проблем и минимизации подобных ошибок.
Время - деньги. Особенно для программистов. Не нужно тратить время программистов на шелуху и просто болтовню.
Формулируйте конкретно свои пожелания. Чем точнее вы понимаете, что вы хотите, тем быстрее это сделают и это будет дешевле (меньше нужно времени для обработки пожелания).
Некоторые любят приседать на уши менеджеру или разработчику. Вместо написания кода для проекта заказчика разработчик слушает про экономическую ситуацию в стране. Для программиста его ресурс - это время. Не нужно разбазаривать этот ресурс попусту.
Если даете задачу программисту, сразу укажите значащие детали: скрины, адреса, логины. Он все равно это запросит для решения задачи - нет смысла заставлять его это делать. Сразу все дайте в одном пакете.
Некоторые заказчики пытаются манипулировать оценкой задачи, говоря, что это очень просто сделать. Они думают, что программист же не может признаться "это сложная для меня задача и смогу сделать только за 3 часа", и он согласится сделать это за 1 условный час. Эта манипуляция очевидна и неприятна, и она портит отношения.
Сразу возникает желание сказать "Если такой умный, то почему бы тебе самому не сделать за это время эту задачу, заодно и сэкономите немного".
Лучше действовать наоборот - подчеркивайте важность и сложность работы. Хвалите за хороший результат. Давайте конкретную адекватную обратную связь при неточностях.
А вдруг программист все же накручивает оценку? В этих ситуациях нужно запросить детализацию задачи.
Оценил он, например, задачу в 30 часов. Вам кажется много - запросите детализацию задачи по частям. Также сравните это с другими оценками в проекте. Другой вариант - иметь внутреннего тех специалиста, который может адекватно оценить сложность работ и требуемое время.
Если сомнения продолжают одолевать, рекомендуем посмотреть нашу статью Как программисты обманывают клиентов.
Зачастую клиент дает свои "дельные" технические советы из лучших побуждений. Но большинство таких советов неуместны, оторваны от реальности и не несут никакой пользы. Гораздо лучше действовать на своем уровне. На уровне заказчика. А именно - точно формулировать свои бизнес-потребности. Обосновывать их важность для бизнеса. Принимать взвешенные решения по сложным вопросам.
Если вы залезаете на территорию программа, то это похоже как пассажир самолета начинает давать рекомендации пилоту или хуже того, лезет в бортовую технику.
Опасным следствием для проекта может быть потеря разработчика. Когда тебе начинают давать дурацкие советы по твоей специализации от дилетанта - ощущения ниже плинтуса. Т.е. это негативно влияет на самооценку разработчика. Он может немного приуныть и просто уйти из проекта (в нашей практике такое было - клиент начал давать ценные замечания по запросам SQL, хотя при этом не имел даже базовых знаний по этой теме. В итоге мы потеряли хорошего разработчика).
Если решение позволяет что-то сделать гибко, это совсем не значит, что нужно постоянно делать гиперсложные решения под лозунгом "я так хочу". Публика любит истории про Стива Джобса и его маникальное стремление к совершенству. Но это ошибка выжившего. А сколько таких джобсов так и не запустилось? 99% Почему не запустились - просто денег не хватило, либо решение слишком сложное и не особо нужное.
В любой системе есть свои объективные ограничения. Обходить их через костыли - плохая идея. Рано или поздно эти костыли обломятся и все упадет. Либо поддерживать такое решение будет сущим адом.
Когда система сильно наворочена каждого новое внедрение дается все тяжелее и дороже. Ставьте во главу угла простоту и органичность. Если новая возможность не укладывается стройно в вашу систему - не внедряйте ее.
И очень важно прислушиваться к доводам специалистов. Сильная воля - это хорошо, но без мозгов она просто погубит проект.
Программист - обычно интроверт. Именно внутренняя направленность программисту позволяет ему концентрироваться на задачах долгое время. Не любят они торговаться. Если их постоянно поджимать - они либо найдут более простого заказчика (который не выносит мозг по каждой мелочи), либо найдут способ как уменьшить издержки за счет качества проекта.
Если вам нужна скидка, то она должна даваться за что-то. Заказчик может что-то предложить и попросить за это скидку.
Например, написать статью о работе над проектом или разместить ссылку у себя (реклама услуг разработчика). Либо заказчик может часть работ взять на себя (в теории красиво, на практике - не очень это работает).
Стоимость и сроки всегда можно уменьшить. Это делается за счет объема.
Нужно меньше бюджет? Давайте убирать часть работ. Главное, чтобы при этом смета была достаточно детализированной.
Во-первых, нужно понять, как вообще получилось так, что вы работаете с таким человеком. Т.е. надо улучшить свою систему фильтрации, иначе в будущем история повторится.
Во-вторых, надо постараться прояснить отношения, построить новые ожидания, договориться о соблюдении неких соглашений. В основном проблема возникает в разных ожиданиях и подходах. Важно понять в каких именно аспектах у вас идет различие.
В-третьих, если вас что-то кардинально не устраивает, всегда есть выход из взаимодействия. Но выход должен быть экологичный, чтобы ваш партнер вышел из них с минимальными потерями и дискомфортом.
У каждого есть свои принципы работы. Это нормально, когда вы не готовы ими жертвовать ради очередного клиента или исполнителя.
Посмотрите нашу статью о том как с минимальными потерями сменить разработчика для своего проекта.
Исправив эти моменты, ваше взаимодействие с разработчиками (да и другими исполнителями) выйдет на новый уровень. Вовремя отслеживайте появление негативных факторов (как со своей стороны, так и со стороны партнера) и выкорчевывайте их сразу же. В этом случае ваш огород будет всегда давать хороший урожай.
P.S. Посмотрите нашу статью о дистанционном взаимодействие с программистом, чтобы не опасаться, что программист создает имитацию работы.
Источник: https://falconspace.ru/blog/kak-uluchshit-vzaimodeystvie-s-programmistom