Веб-разработка

Почему IT-проекты срываются: дело не только в коде

2366 
 

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

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

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

Именно поэтому в Codex IT мы построили собственную инженерную систему — Codex Engineering Framework (CEF), которая закрывает эти проблемы не точечно, а на уровне всего процесса разработки.

С какими проблемами сталкиваются заказчики и как их решает CEF

1. Проект начинается без полноценного технического контекста

Частая ситуация: у клиента есть идея, дизайн, список экранов или общее описание продукта. Команда хочет быстрее начать разработку и сразу переходит к задачам и коду.

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

Как это решается в CEF

Каждый проект начинается со структурированной спецификации.

Мы используем единый шаблон, в котором фиксируются:

  • бизнес-цели проекта;

  • роли пользователей;

  • права доступа;

  • пользовательские сценарии;

  • сущности системы;

  • статусы и переходы;

  • интеграции;

  • уведомления;

  • сценарии ошибок;

  • требования к безопасности;

  • критерии готовности;

  • состав первого релиза.

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


2. Требования хранятся в голове, переписках и созвонах

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

Когда проект растёт, разные участники начинают по-разному понимать одну и ту же задачу. Появляются переделки, споры и потеря контроля над проектом.

Как это решается в CEF

Вся информация фиксируется в стандартизированной документации.

Для этого используются шаблоны:

  • спецификаций;

  • технических заданий;

  • пользовательских сценариев;

  • описаний ролей и прав;

  • интеграций;

  • API;

  • чек-листов готовности.

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


3. Каждый проект собирается с нуля

Если у команды нет внутренних стандартов, каждый новый проект превращается в эксперимент.

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

Это увеличивает сроки и стоимость разработки.

Как это решается в CEF

Мы не начинаем проекты с пустой папки.

Внутри Codex IT используются:

  • готовые скелеты проектов;

  • архитектурные стандарты;

  • шаблоны модулей;

  • типовые интеграции;

  • стандарты инфраструктуры;

  • единые правила безопасности.

Для типовых задач уже существуют проверенные решения:

  • авторизация;

  • роли пользователей;

  • личные кабинеты;

  • административные панели;

  • работа с файлами;

  • уведомления;

  • платежи;

  • каталоги;

  • поиск;

  • отчётность.

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


4. Искусственный интеллект используется поверхностно

Сегодня многие команды используют AI только для генерации отдельных фрагментов кода или поиска ошибок.

Такой подход помогает локально, но не влияет на качество процесса в целом.

Как это решается в CEF

В CEF искусственный интеллект встроен в производственную систему.

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

Через MCP-серверы система получает доступ к:

  • архитектурным шаблонам;

  • готовым модулям;

  • документации;

  • проектным скелетам;

  • инженерным стандартам.

Это позволяет использовать AI для:

  • анализа требований;

  • проверки полноты сценариев;

  • поиска архитектурных рисков;

  • подбора типовых решений;

  • генерации документации;

  • ревью кода;

  • анализа производительности;

  • проверки запросов к базе данных.

Дополнительно AI используется в ежедневной инженерной практике. Например, сложные SQL-запросы, Prisma-запросы и архитектурные решения проходят дополнительную проверку через Claude или Cursor для поиска N+1-запросов, лишних join-операций и потенциальных проблем производительности.

AI становится частью инженерного процесса, а не просто помощником разработчика.


5. Качество проверяется слишком поздно

Во многих проектах качество начинают проверять перед релизом или уже после демонстрации заказчику.

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

Как это решается в CEF

Контроль качества встроен в процесс разработки.

Первый уровень — автоматические проверки:

  • линтеры;

  • форматирование кода;

  • проверки типов;

  • проверки сборки;

  • аудит зависимостей;

  • правила прохождения кода в основную ветку.

Второй уровень — аудит технического лидера.

Но важно понимать, что аудит проводится не по субъективным ощущениям и не по принципу «код нравится или не нравится».

Внутри CEF действует инженерный стандарт Tech Stack & Engineering Practices, который определяет требования к:

  • фронтенду;

  • бэкенду;

  • архитектуре;

  • базам данных;

  • инфраструктуре;

  • безопасности;

  • CI/CD;

  • использованию AI.

По этому документу технический лидер проводит аудит проекта в конце каждого спринта.

Что проверяется на фронтенде

Для разных типов проектов используются заранее определённые технологии:

Сценарий Стек:
- Простые проекты и SPAReact + Vite
- Сложные проекты, SSR и SEO-нагруженные решенияNext.js

Если используется Next.js, дополнительно проверяется применение инструментов оптимизации:

  • Server-Side Rendering (SSR);

  • Dynamic Import для тяжёлых компонентов;

  • снижение размера initial bundle;

  • корректная работа с ленивой загрузкой.

Также аудит включает проверку производительности React-приложения.

Например:

  • не используются ли useMemo и useCallback без необходимости;

  • нет ли лишних ре-рендеров;

  • корректно ли применяется React.memo;

  • используются ли throttle и debounce там, где это необходимо;

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

В стандарте отдельно зафиксировано правило: оптимизация должна применяться только там, где профилирование показывает реальную проблему. Использование useMemo и useCallback «на всякий случай» считается нарушением стандарта.

Также проверяется работа с анимациями. Приоритет отдаётся CSS-анимациям и transitions, поскольку они выполняются на compositor thread и не блокируют JavaScript.

Что проверяется на бэкенде

Для fullstack-проектов основным стеком являются:

  • Next.js API Routes и Route Handlers;

  • Prisma ORM.

Отдельно проверяется архитектура API.

Публичные и административные маршруты должны быть строго разделены:

  • /api/public/ — публичные маршруты;

  • /api/admin/ — защищённые маршруты.

Они не должны смешиваться в одном роутере или файле.

Также аудит включает проверку безопасности:

  • Swagger и OpenAPI не должны быть доступны публично;

  • доступ к документации ограничивается через Basic Auth, VPN или whitelist IP;

  • секреты хранятся только в переменных окружения;

  • S3 и аналогичные хранилища не должны быть публичными;

  • доступ к файлам осуществляется через presigned URL или серверный прокси.

Что проверяется в работе с базой данных

Отдельный блок стандарта посвящён производительности запросов.

Технический лидер проверяет:

  • наличие индексов на часто используемых полях;

  • отсутствие N+1-запросов;

  • отсутствие лишних join-операций;

  • корректность выборки данных;

  • отсутствие запросов без ограничений.

Например, получение всей таблицы через findMany() без фильтрации считается нарушением стандарта.

Вместо этого используются:

  • фильтрация;

  • ограничение количества записей;

  • выбор только необходимых полей через select.

Для сложных запросов дополнительно применяется AI-анализ через Claude или Cursor.

Что проверяется в архитектуре проекта

CEF стандартизирует структуру проектов.

Для бэкенда используется модульная архитектура:

  • controller;

  • service;

  • repository;

  • DTO.

Для фронтенда используются два подхода:

Для простых проектов:

  • components;

  • hooks;

  • lib;

  • types;

  • pages или app.

Для сложных проектов:

  • Feature-Sliced Design (FSD);

  • app;

  • pages;

  • widgets;

  • features;

  • entities;

  • shared.

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

Что проверяется в инфраструктуре и CI/CD

CEF фиксирует единый процесс доставки кода:

GitLab CI → Ansible → Docker → Yandex Cloud VM

Проверяется:

  • наличие CI/CD-пайплайна;

  • автоматическая сборка;

  • прохождение тестов;

  • контейнеризация через Docker;

  • корректная настройка Nginx;

  • HTTPS;

  • защита dev-стендов;

  • скрытие внутренних сервисов.

Для высоконагруженных проектов дополнительно проверяются:

  • несколько реплик сервисов;

  • rolling updates;

  • health checks;

  • автоматический перезапуск контейнеров.

Что проверяется по безопасности

Стандарт включает обязательные требования:

  • все секреты находятся в переменных окружения;

  • .env не хранится в репозитории;

  • HTTP перенаправляется на HTTPS;

  • административные маршруты отделены от публичных;

  • dev-стенды защищены авторизацией;

  • Swagger закрыт от публичного доступа;

  • S3-бакеты не имеют публичного доступа.

Что проверяется по зависимостям

Перед релизом и в CI-пайплайне выполняется аудит зависимостей.

Уязвимости классифицируются по уровням:

Уровень Требование
- CriticalНемедленное исправление, блокирует релиз
- High Исправление до релиза
- Moderate Исправление в ближайшем
- спринтеLow / Info Исправление по возможности

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

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


6. Изменения не управляются

Требования меняются всегда. Это нормально.

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

Как это решается в CEF

Каждое изменение проходит оценку.

Команда анализирует:

  • что меняется;

  • зачем это нужно бизнесу;

  • какие части системы затрагиваются;

  • как это влияет на сроки;

  • как это влияет на бюджет;

  • какие появляются риски;

  • что потребуется перенести или перепланировать.

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


7. Риски становятся видны слишком поздно

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

Как это решается в CEF

Управление рисками является отдельной частью процесса.

Мы регулярно анализируем:

  • риски интеграций;

  • архитектурные риски;

  • риски производительности;

  • риски безопасности;

  • риски сроков;

  • риски изменения требований;

  • риски зависимости от внешних сервисов.

Если риск обнаружен, он фиксируется, оценивается и обсуждается с заказчиком заранее.

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


Разместите
тендер бесплатно

Наша система сама подберет вам исполнителей на услуги, связанные с разработкой сайта или приложения, поисковой оптимизацией, контекстной рекламой, маркетингом, SMM и PR.

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


Что ещё входит в CEF

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

Архитектурные стандарты

Для разных типов проектов используются заранее определённые архитектурные подходы:

  • веб-сервисы;

  • CRM-системы;

  • маркетплейсы;

  • административные панели;

  • личные кабинеты;

  • интеграционные платформы.

Стандарты описывают:

  • структуру проекта;

  • работу с API;

  • организацию модулей;

  • обработку ошибок;

  • логирование;

  • права доступа;

  • масштабирование;

  • интеграции.

Инфраструктура и CI/CD

Для доставки кода используется стандартизированный процесс:

  • GitLab CI;

  • Docker;

  • Ansible;

  • Yandex Cloud;

  • Nginx.

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

Безопасность

CEF включает обязательные требования безопасности:

  • хранение секретов только в переменных окружения;

  • закрытые административные маршруты;

  • защищённые dev-стенды;

  • контроль доступа к документации;

  • безопасную работу с файлами и объектными хранилищами;

  • аудит зависимостей на уязвимости.

Демонстрация только готового функционала

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

Перед демонстрацией функционал должен пройти:

  • разработку;

  • автоматические проверки;

  • тестирование;

  • внутренний аудит;

  • проверку соответствия требованиям.

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

Что получает бизнес

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

Быстрее запуск проекта

Готовые архитектурные решения, шаблоны и проектные скелеты позволяют быстрее переходить к реализации бизнес-логики.

Более предсказуемые сроки

Проект проходит через понятные этапы: спецификация, проектирование, разработка, аудит и демонстрация результата.

Меньше переделок

Большая часть ошибок и недопониманий устраняется ещё на этапе подготовки требований и проектирования.

Прозрачное управление изменениями

Каждое изменение оценивается заранее, поэтому заказчик понимает последствия своих решений.

Стабильное качество

Качество обеспечивается системой:

  • автоматическими проверками;

  • инженерным стандартом Tech Stack & Engineering Practices;

  • аудитами технического лидера;

  • архитектурным контролем;

  • аудитом безопасности;

  • аудитом зависимостей;

  • использованием AI для анализа и проверки решений.

Возможность безопасно развивать продукт

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

Меньше зависимости от отдельных специалистов

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

Почему это важно

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

Именно для этого в Codex IT существует CEF.

Он объединяет:

  • спецификации;

  • документацию;

  • архитектурные стандарты;

  • готовые проектные скелеты;

  • типовые модули;

  • инженерный стандарт Tech Stack & Engineering Practices;

  • искусственный интеллект;

  • автоматические проверки;

  • технические аудиты;

  • управление изменениями;

  • управление рисками.

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

Лучшее
Выскажите мнение
Авторизуйтесь, чтобы добавить свой комментарий.




2366

Лучшие статьи

Поделиться: 0 0 1
Коммерческий директор в  CODEX IT , Нижний Новгород
 0  5  5

Оцените статью
Спасибо за оценку