Перейти к содержимому
info@mubinozdemir.com

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

Практическое руководство по вопросам владения кодом, доступа к серверу, лицензирования и процедур передачи прав после завершения работы с разработчиком. Защитите свой проект.

7 мин чтения · 1272 слов yazılımcıyla yollar ayrıldığında yapılacaklar
Статья автоматически переведена с турецкого оригинала.
Что делать, если разработчик программного обеспечения покидает компанию.

Почему необходим спланированный процесс при расставании с разработчиком программного обеспечения

В процессе разработки программного проекта возникают разногласия с талантливым инженером, заканчивается бюджет или проект движется в другом направлении. В этот момент крайне важно знать, что делать, когда вы расстаетесь с разработчиком программного обеспечения. Владельцы бизнеса часто относятся к этому легкомысленно, говоря: «Программное обеспечение готово, мы заплатили деньги, и всё». Однако, если вы не контролируете код проекта, серверы, лицензии и доступ к данным, в будущем вы можете столкнуться с серьезными проблемами.

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

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

Код — это сердце программного проекта. После окончания действия соглашения с программистом вы должны владеть всем кодом проекта. Подтвердите это в письменной форме. Если код вам еще не передали, или если оправдания вроде «он зашифрован» или «он хранится на удаленном сервере» остаются необоснованными, это означает, что вы не являетесь владельцем проекта.

  • Полный исходный код: программное обеспечение для бизнеса, мобильное приложение, веб-сайт — всё должно быть предоставлено вам в полном объёме.
  • Система контроля версий (Git, SVN и т. д.): Если код хранится в репозитории, права доступа и владения должны перейти к вам.
  • Документация и комментарии: должно быть ясно, кто написал код. Комментарии внутри кода будут полезны, когда другой инженер продолжит проект после ухода первоначального программиста.
  • Подпись и дата: Храните подписанный документ, подтверждающий: «Весь код проекта X был передан лицу Z в дату Y».

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

Шаг второй: Переоформите на свое имя доступ к серверу, базе данных и хостингу.

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

  • Учетная запись хостинг-провайдера: Сервер (AWS, Linode, Cloudways, Digital Ocean и т. д.) должен быть зарегистрирован на ваше имя, и доступ к нему должен быть только у вас. Отзовите доступ разработчика.
  • Администрирование баз данных: Измените пароль администратора для таких баз данных, как MySQL, PostgreSQL и MongoDB. Это предотвратит доступ разработчиков к ним со старым паролем.
  • Проверка DNS и домена: Ваше доменное имя должно быть зарегистрировано на ваше имя или, по крайней мере, у регистратора, которого вы контролируете. Получите обратно доступ к DNS от разработчика.
  • SSL-сертификат: Вы несете ответственность за продление HTTPS-сертификата. Примите меры, чтобы предыдущий разработчик не получал запросы на сертификаты по электронной почте.
  • Стратегия резервного копирования: Убедитесь, что вы настроили систему, которая ежедневно или еженедельно создает резервные копии проекта. После ухода разработчика эта обязанность перейдет к вам или к одному из новых инженеров.

Несмотря на предпринятые шаги, если программист говорит: «Это не моя ответственность», вы должны убедиться, что это четко указано в соглашении. Для получения дополнительной информации о том, что нужно знать при покупке программных услуг, вы можете ознакомиться с соответствующим руководством.

Шаг третий: Лицензии, ключи API и интеграция со сторонними сервисами.

Многие программные проекты используют внешние сервисы: платежные шлюзы (Stripe, PayPal), отправка SMS (Twilio), карты (Google Maps), инструменты искусственного интеллекта и т. д. Проверьте, на чье имя хранятся ключи API и права доступа к этим сервисам.

  • Учетные записи сторонних сервисов: платежный шлюз, SMS-сервис, платформа для email-рассылок — каждая из них должна быть зарегистрирована с использованием адреса электронной почты на ваше имя или корпоративного адреса электронной почты.
  • API-ключи и секреты: Перенесите API-ключи, хранящиеся в личных учетных записях разработчика, в собственную учетную запись проекта. Обновите эти ключи, чтобы они не стали недействительными после ухода разработчика.
  • Лицензии на программное обеспечение: Используемые библиотеки, фреймворки и коммерческие инструменты имеют открытые лицензии (например, MIT, Apache) или коммерческие? Ознакомьтесь с условиями лицензии и убедитесь, что вы соблюдаете условия использования.
  • SSL-сертификаты, CDN, межсетевые экраны: ведите письменный учет того, кому принадлежат все эти средства обеспечения безопасности.

Шаг 4: Получение сопроводительной документации и руководства по проекту.

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

  • Файл README: описание шагов, библиотек и настроек среды, необходимых для запуска проекта.
  • Схема базы данных: структура таблиц, связи, индексы и данные по умолчанию.
  • Документация по API: Если проект представляет собой API, то здесь представлены конечные точки, параметры и примеры ответов.
  • Внешняя интеграция: какие сторонние сервисы подключаются, как они настраиваются и какие тестовые кредиты предусмотрены?
  • Известные проблемы и план развития: Какие части не завершены, а какие функции запланированы на будущее?

Если программист говорит: «Я не буду писать документацию», это значит, что вы не включили её в договор. Для следующего проекта чётко сформулируйте требование к документации в письменном виде.

Шаг пятый: Завершение юридического и финансового урегулирования.

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

  • Определите условия окончательного платежа: письменно укажите, что «Окончательный платеж будет произведен после получения кода и документации».
  • Подпишите расписку о доставке: документ, подписанный обеими сторонами, в котором указывается: «Проект X был получен в дату X в время Y; после этого застройщик больше не несет ответственности».
  • Четко обозначьте права на интеллектуальную собственность: укажите, может ли (или будет ли) программист повторно использовать тот же код для последующих клиентов.
  • Укажите гарантийный период: например, «Поддержка при критических неисправностях будет предоставляться в течение 30 дней; после этого обновление будет платным».

Шаг шестой: Передача проекта и переход к новому разработчику.

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

  • Анализ кода: Новый инженер должен проанализировать старый код и выявить потенциальные проблемы.
  • Тестирование в тестовой среде: запустите проект на тестовом сервере, а не в рабочей среде, и проверьте наличие каких-либо проблем.
  • Обмен знаниями между опытными и начинающими инженерами: Опытные программисты должны уделять время обучению новых программистов работе с системой. Это может оплачиваться почасово, но это ценно.
  • Ознакомление с работающей средой: новый инженер должен уметь читать журналы сервера, отслеживать производительность и выполнять основные задачи по техническому обслуживанию.

В компании Alanya IT Services мы имеем опыт обеспечения плавной передачи приобретенных проектов. Полная ответственность за ваш проект имеет решающее значение для будущего успеха бизнеса.

Шаг седьмой: Определение ответственности за долгосрочное техническое обслуживание.

После ухода разработчика, кто будет отвечать за поддержку и обновление проекта? Определите это заранее:

  • Обновления в области кибербезопасности: операционную систему, базу данных и библиотеки следует регулярно обновлять.
  • Мониторинг производительности: необходимо отслеживать ресурсы сервера и выявлять проблемы на ранних стадиях.
  • Резервное копирование и аварийное восстановление: Необходимо иметь план восстановления на случай потери данных.
  • Незначительные исправления ошибок и запросы на добавление новых функций: будут ли они переданы новому разработчику или первоначальному? Какова будет стоимость?

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

Заключение: Возьмите проект под контроль и смотрите в будущее.

Когда вы расстаетесь со своим разработчиком программного обеспечения, выполнение семи описанных выше шагов защитит ваш проект и предотвратит будущие проблемы. Самая распространенная ошибка — недооценка этого перехода и вопрос «Где код, какой пароль доступа?» после ухода разработчика. На этом этапе уже слишком поздно, и вы теряете свои переговорные позиции.

Мой совет: даже при заказе услуг по разработке программного обеспечения обязательно включите эти условия в договор. Обязательно обсудите это в начале проекта. Четко укажите: «После завершения проекта код, сервер и лицензии будут полностью моими». Если разработчик возражает против этого, хорошо подумайте, прежде чем начинать сотрудничество.

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

Alanya yazilim muhendisiAlanya yazilimAlanya web tasarimozel yazilimSaaS gelistirme

Обсудим ваш проект

Опишите идею — отвечу в течение нескольких часов.

Обсудить проект

Другие статьи

5 мин чтения

Можно ли восстановить старый веб-сайт или его следует переписать с нуля: руководство по принятию решения.

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

Alanya yazilim muhendisiAlanya yazilim
Читать далее
4 мин чтения

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

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

Alanya yazilim muhendisiAlanya yazilim
Читать далее
5 мин чтения

5 первых шагов, которые необходимо предпринять при работе над недавно приобретенным проектом.

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

Alanya yazilim muhendisiAlanya yazilim
Читать далее
WhatsApp +90 538 506 55 46