News Grower

Независимое покрытие AI, стартапов и технологий.

GitLab как доказательство в суде. Как история коммитов помогла разработчику не вернуть 2,7 млн рублей

Компания заказала разработку платформы пропускной системы, мобильное приложение и сервис. Заплатила 2 696 000 рублей. Получила исходники, зарегистрировала программу в Роспатенте через аффилированное юрлицо, опубликовала приложение на RuMarket и в AppStore. А потом направила разработчику уведомление об отказе от дого...

GitLab как доказательство в суде. Как история коммитов помогла разработчику не вернуть 2,7 млн рублей

Компания заказала разработку платформы пропускной системы, мобильное приложение и сервис. Заплатила 2 696 000 рублей. Получила исходники, зарегистрировала программу в Роспатенте через аффилированное юрлицо, опубликовала приложение на RuMarket и в AppStore. А потом направила разработчику уведомление об отказе от договора и потребовала вернуть все деньги как неосновательное обогащение, якобы работы выполнены не были.Дело дошло до двух судебных экспертиз, апелляции и кассации. Разработчик выиграл. Ниже подробно опишем то, что стало ключевым и привело его к победе. Как это стало возможнымТакие дела начинаются одинаково. Разработчик сдал работу, заказчик её получил, какое-то время всё шло в штатном режиме - переписка, правки, уточнения. А потом что-то пошло не так. То ли ожидания разошлись с реальностью, то ли бюджет закончился раньше, то ли просто пришло понимание, что можно попробовать не платить. Дальше заказчик перестаёт выходить на связь, акты не подписывает, а через какое-то время присылает уведомление об отказе от договора с требованием вернуть всё до копейки.Логика иска в таких случаях проста и внешне выглядит убедительно. Двусторонних актов нет, значит, работы формально не приняты. Раз не приняты, значит, деньги удерживаются без оснований, то есть неосновательное обогащение. Дальше суд, и разработчику предлагают доказать, что работа вообще была и результат он передал.Именно здесь многие проигрывают, не потому что ничего не делали, а потому что делали, но не оставили следов, которые можно было бы положить в основу позиции. Нет приказа о начале работ, нет переписки с чёткой привязкой к этапам, нет фиксации передачи исходников - и тогда даже очевидная для всех участников история превращается в слово против слова.

Связанные теги

Компании и люди

Линия сюжета

Продолжить следить за темой

Переходите к связанным материалам, страницам сущностей и активным линиям сюжета.

Парсим MDN и пишем оффлайн RAG-MCP

Парсим MDN и пишем оффлайн RAG-MCP

Привет.В этой технической статье мы на практике разберёмся, что такое RAG, распарсим MDN Web Docs, научимся готовить эмбеддинги, заполним ими векторную базу данных и напишем сво...

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

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

«Рынок турбулентен» - эта фраза стала обязательным ритуалом открытия любого совещания в IT-бизнесе. Но за ней обычно ничего не следует, кроме констатации факта и беспомощного ра...

Частотный анализ сервопривода или как научить робота правильно ходить

Частотный анализ сервопривода или как научить робота правильно ходить

В робототехнике один контроллер принимает решение, а другой следит за его выполнением. Один, командный, вырабатывает общую стратегию поведения, а другой – исполнительный, выполн...

Как я написал распределенный Cron на C с P2P-репликацией и зачем это нужно админам Greenplum

Как я написал распределенный Cron на C с P2P-репликацией и зачем это нужно админам Greenplum

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

Рекламный слот

Встроенный блок в статье

Зарезервированный партнерский слот для релевантных инструментов, сервисов и аккуратных редакционных интеграций.

Партнерский слот

Похожие статьи

Еще материалы, которые пересекаются по тегам, источнику или категории.

Парсим MDN и пишем оффлайн RAG-MCP

Парсим MDN и пишем оффлайн RAG-MCP

Привет.В этой технической статье мы на практике разберёмся, что такое RAG, распарсим MDN Web Docs, научимся готовить эмбеддинги, заполним ими векторную базу данных и напишем сво...

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

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

«Рынок турбулентен» - эта фраза стала обязательным ритуалом открытия любого совещания в IT-бизнесе. Но за ней обычно ничего не следует, кроме констатации факта и беспомощного ра...

Еще материалы от Habr

Свежие публикации и продолжение темы от той же редакции.

Открыть страницу источника
Парсим MDN и пишем оффлайн RAG-MCP

Парсим MDN и пишем оффлайн RAG-MCP

Привет.В этой технической статье мы на практике разберёмся, что такое RAG, распарсим MDN Web Docs, научимся готовить эмбеддинги, заполним ими векторную базу данных и напишем сво...

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

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

«Рынок турбулентен» - эта фраза стала обязательным ритуалом открытия любого совещания в IT-бизнесе. Но за ней обычно ничего не следует, кроме констатации факта и беспомощного ра...

Дополнительное покрытие этой темы

Похожие публикации и близкие по смыслу материалы по этой же теме.

Гибридный поиск по коду в GitLab: как я ускорил поиск по 100+ GitLab-проектам с часов до минут

Гибридный поиск по коду в GitLab: как я ускорил поиск по 100+ GitLab-проектам с часов до минут

Когда проектов в GitLab становится много, довольно быстро появляется одна и та же задача: найти, где используется конкретный API, URL, env-переменная или конфигурационный параме...

GitLab CI кажется сложным, если не знать этих трюков: как убрать дублирование и ускорить пайплайны в 3 раза

GitLab CI кажется сложным, если не знать этих трюков: как убрать дублирование и ускорить пайплайны в 3 раза

У вас в GitLab несколько проектов с одинаковым CI? Или просто надоела копипаста в пайплайнах? Каждое изменение нужно отразить в 10 местах? Рассказываем, как сократить код на 56 ...

Как я перенес консольное приложение в Rust + WASM и выложил на GitLab Pages

Как я перенес консольное приложение в Rust + WASM и выложил на GitLab Pages

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