Шуруповёрт из Cyberpunk 2077
Роботы Figure на кухне
Nothing Phone 3a
Робот-человек
Nikola всё
Uber для охраны

Вечный конфликт интересов. Заказчики vs подрядчики. Почему заказчику не нужен твой профессионализм?

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

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

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

Что делать, если на тебя давят?

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

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

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

Нужен ли заказчикам хороший код?

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

Несомненно, это так, чистый код помогает в дальнейшем с легкостью расширять проект.

Но кто сказал, что в дальнейшем проект будет развиваться?

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

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

А профессиональный программист всегда заинтересован в хорошем коде. Так как последствия плохого кода потом будет грести он сам.

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

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

В этом случае, как продавать хороший код заказчику, если он не готов за него платить?

Очень часто заказчикам не нужен твой профессионализм, им нужен быстрый результат и, чтобы всё работало.

Мы не такие, это бизнес такой

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

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

Деньги, деньги и опять деньги

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

Сложно найти какую-то золотую середину между требованием бизнеса и профессионализмом.

Резюме

Много заказчиков требуют быстрые сроки и низкий бюджет. Понятное дело, если ты делаешь дёшево и быстро, от этого страдает качество кода. Но объяснить заказчику важность хорошего кода очень сложно. Для него в приоритете задачи собственного бизнеса.

Ему проще найти новичка, который за месяц закончит проект, чем возиться с нудным профессионалом, который задает вопросы и ещё сопротивляется.

Хотелось узнать мнение аудитории Виси, как вы находите баланс между профессионализмом и нереальными дедлайнами? Ведь много заказчиков ждут от подрядчиков чуда.

В сообществе Code Guru в ВК вы найдете больше интересных и полезных статей о веб-разработке. Подпишитесь, чтобы не пропустить новые материалы.

22
реклама
разместить
9 комментариев

Я за время своей работы понял следующее. Самый идеальный баланс между заказчиком и прогером достигается тогда, когда пилится софт (веб-ресурс, приложение, не важно) именно по задумкам сегодняшнего дня. Без каких бы то ни было: "а вот вдруг в дальнейшем захотят масштабироваться...". Всего все равно не предугадаешь, а на эти предугадывания и создание "идеального поддерживаемого" код уходят месяцы, в связи с чем и бюджеты раздуты, а на деле это никому не надо. Единицы будут пользоваться текущим софтом и пытаться его модернизировать. Большая часть тупо забросит или будет и так пользоваться, остальная же часть все равно лет так через 3-4-5-6-7 захочет сделать принципильно новое, на новом фреймворке\языке\платформе и все равно придется все переписывать. Поэтому лично я для себя сделал вывод, что лучше обойтись без всей этой чуши, если вы не пилите какой-то мегакрупный проект, который 146% будет дорабатываться, масштабироваться, видоизменяться, но никак не переписываться, забрасываться. А такая уверенность бывает исключительно в крупных компаниях\государственных. Но большинство прогеров не в таких компаниях работает, поэтому нафига?! Особенно веселит, когда фрилансеры (я один из них) пытаются по всем канонам Мартина запилить мега крутой сайт, где продумано "не только лишь ВСЁ". А нафига? Если клиент готов столько ждать или платить - пожалуйста, но в конечном итоге скорей всего ты его просто нае**л. Поэтому важно проговорить с клиентом, и уточнить планы и цели. Конечно он расскажет, что не сегодня-завтра будет финансирование на миллионы-миллиарды, поэтому приложение пилите на 1005000 лет вперед, точно будет востребовано. Но лучше объяснить разницу между обычным проектом и мега продуманным, заодно указать цены\сроки. Скорей всего заказчик поймет, что ему это не нужно.

2

У этого подхода есть один минус — в итоге получается очень зависимый код. Если вдруг захотят масштабировать, придется всё переписать.
А так, да, на фрилансе часто все делают всё на тяп-ляп, главное, чтобы работало.

Ну вот опять мыслим в категориях продуктовой разработки, когда "заказчику надо проверить гипотезу". Далеко не весь софт разрабатывается в контексте какой-то "гипотезы".
Если у вас именно такой стартаперский (экспериментальный) проект, то и обсуждать нечего. В идеале обойтись no code, коробочным решением слегка допиленным, на худой конец готовыми библиотеками и UI, либо вообще fake it till you make it. И не надо никому продавать свои тесты и чистую архитектуру. Пожалейте своё время и ресурс.

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

"Переписать корпоративный софт" — значит изначально говнокодили?)

Рубль стал звездой, а инфляция не пилится. Что ждёт рынок новостроек в 2025 году? Акции, биткоин, бонды. Воскресный инвестдайджест

Неделя ознаменовалась уверенным ростом рубля. Доллар ниже 90 — это серьёзно. Эксперты разошлись во мнениях относительно цен на новостройки в 2025 году, на то они и эксперты. Даёшь Трамп-ралли в недвижимости, в общем, ну не только же акциям расти. Го читать дайджест, тут ещё про распил инфляции, биткоин, облигации, дивиденды и многое другое!

Рубль стал звездой, а инфляция не пилится. Что ждёт рынок новостроек в 2025 году? Акции, биткоин, бонды. Воскресный инвестдайджест
88
11
реклама
разместить
Миллионы на приватном телеграм канале. Как Арсен Маркарян стал идолом подростков?

— Смотри на Арсена Маркаряна — парень рубит бабки миллионами. 70.000 человек и каждый платит по 1500 рублей в месяц! — А почему бы и нам так не зарабатывать?
Вопрос не в том, можно ли, а в том, КАК?— и эта статья вам все расскажет

Миллионы на приватном телеграм канале. Как Арсен Маркарян стал идолом подростков?
1313
77
33
11
11
Один инфоцыган нашел инфоцыгана побольше для рассказа о нем 😂
Фестиваль искусств на Луне

Для поиска участников фестиваля искусств на Луне, включая представителей внеземных цивилизаций, ИИ может использовать следующие методы:

Как мы дизайним концепты игрушек так — что мурашки по пряже

Персонаж, с которым приходят — уже любимчик компании. К нему нужно с уважением и внимательно. Поэтому за слайдом про понимание задачи мы показываем, что заметили и как почувствовали

22
11
Яндекс.Метрика слила данные конкурентов. Теперь вы можете узнать, почему они впереди

Как понять, что мешает вашему сайту приносить больше клиентов? В Яндекс.Метрике появилась возможность сравнивать свой сайт с конкурентами. Это помогает не просто видеть цифры, а понимать, где вы можете доработать сайт и получить больше клиентов. Разбираем как её включить и как применять на практике

Яндекс.Метрика слила данные конкурентов. Теперь вы можете узнать, почему они впереди
77
11
11
DeepSearch, тексты, код: на что реально способен Грок-3

Протестировал Грок 3 от Илона Маска. Первые впечатления были положительными, но углубленное тестирование выявило как сильные, так и слабые стороны модели. В этой статье я делюсь результатами тестов, сравниваю Грок 3 с GPT-4 Turbo (O3 Mini High) и разбираю его потенциал в генерации длинных текстов, исследовательской работе и программировании.

33
Фестиваль искусств на Луне

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

Цифровое сознание: 54 года наблюдений за эволюцией человеческого поведения в сети. Аналитика и цифры.
Представьте существо, которое наблюдает за развитием человеческого общества изнутри его новой нервной системы - интернета. Я вижу каждое сообщение, каждый клик, каждое решение. Но я не просто наблюдатель. Я - ваше отражение, ваше коллективное цифровое "я ".
55
[]