Студия разработки сайтов и приложений

Netspark.ru

Заметки и разработки

Drupal

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

Иногда при обсуждении заказов на разработку мы слышим:

— Вы серьёзно? Да нейросеть на коленке это за три дня напишет!
— Мне дешевле самому всё бросить и сесть писать.
— У меня племянник учится на программиста — он дёшево сделает.

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

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

Почему «быстро и дёшево» редко означает «хорошо»?

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

Функционал вроде есть, но… — ошибки появляются в самых неожиданных местах, а производительность оставляет желать лучшего. Скажем, 250 запросов к базе данных на одну страницу, из которых 150 одинаковых.

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

«95% готово, нужно чуть-чуть доделать» — на биржах фриланса такие проекты встречаются практически каждый день. Часто оказывается, что проще переписать с нуля, чем починить то, что сломано фундаментально.

Так за что же вы платите профессионалам?

Очевидно, не за то, что они нажимают кнопки вместо нейросети, а за:

Понимание, как делать правильно — спланировать архитектуру, не забыть про рекомендованные практики безопасности и оптимизации.
Умение предвидеть проблемы — не только написать код, но и сделать так, чтобы его было легко поддерживать и приятно развивать. Чтобы он работал, а не отправился на биржу с тегом «95%».
Опыт — знание, какие решения работают, а какие создают только видимость результата. Когда выдачу нейросети взять, когда подправить, а когда — стереть и сделать самому.

Конечно, всегда есть вариант собрать что-то быстро и сэкономить. Но если вам уже нужен продукт, а не эксперимент — то он должен быть надежным и масштабируемым. И его разработку стоит доверить тем, кто знает, как этого добиться.

А как тогда прицениться к заказной разработке?

Проще всего наверно действовать народным методом. Отправить заявку нескольким подрядчикам и сравнить предложения. Но как их сравнить? Ведь если один оценил проект в 500 тысяч, а другой — в миллион, это не обязательно значит, что второй обманывает.

Почему оценки могут отличаться?

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

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

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

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

Пример: Допустим, вам нужна авторизация на сайте.

  • Базовая версия (логин/пароль) — почти бесплатна, все современные средства разработки это сразу умеют.
  • Но добавьте к требованиям вход через Google, Яндекс, Telegram, и SMS-верификацию телефона — и стоимость решения изменится драматически.

На что же смотреть при выборе?

Помимо общей стоимости нужно учесть:

Часовую ставку и состав команды, если разработчик поделится такой информацией.
Сроки — зная сроки, часовую ставку и бюджет, адекватно сравнить предложения будет проще.
Средний уровень зарплаты в отрасли — например, как не устает сообщать ФНС, средняя зарплата в Москве по отрасли ИТ до налогов — что-то около 150 тысяч.

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

Что еще?

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

Во-первых так можно оценить современность, востребованность, распространенность предлагаемых инструментов.

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

Про CMS vs Framework мы поговорим в следующий раз.

Обсуждение

Чтобы обсудить заметку, написать комментарий, или просто связаться, заходите в Телеграм-канал. У нас весело и всем рады!

Также меня можно найти в Хвиттере, VC.ru, Дзене, или Тенчате.