Платформа объединяет архитектурные решения, инструменты разработки, рабочие окружения и правила эксплуатации. Это позволяет быстрее запускать проекты, использовать проверенные решения и сокращать затраты на дальнейшее сопровождение.
Технологии — инструмент, а не цель проекта.
До начала разработки мы определяем задачи, требования и критерии результата. На их основе выбираем архитектуру, технологии и подходящий способ реализации.
Процесс может включать проектирование, дизайн, разработку прототипа, тестирование, запуск и дальнейшее развитие.
Работа строится поэтапно. Результат можно оценивать в процессе разработки и при необходимости корректировать требования до выпуска проекта.
Большая часть веб-проектов решает множество похожих технических задач: маршрутизация, работа с данными, формы, безопасность, сборка, публикация, мониторинг и резервное копирование.
Платформа содержит готовую основу для таких задач.
Это не означает использование одного шаблона для всех сайтов. Мы повторно используем технические решения там, где это действительно оправдано, а функциональность, структуру и интерфейс создаём под конкретный проект.
Такой подход сокращает объём рутинной разработки и позволяет сосредоточиться на задачах, которые имеют значение для бизнеса.
Мы используем несколько технологических направлений и выбираем их в зависимости от требований проекта.
Express и TypeScript — для современных серверных веб-проектов, сервисов и решений, где важны производительность, SEO, гибкая архитектура и возможность дальнейшего развития.
Nuxt — для проектов, где важны быстрый запуск, современный интерфейс и возможности экосистемы Vue.
1С-Битрикс — для корпоративных проектов, которым требуется распространённая в России коммерческая платформа, интеграция с существующей инфраструктурой и сертифицированная экосистема.
Мы не привязываем задачу к технологии заранее. Сначала определяются требования проекта, затем выбирается подходящая основа для его реализации.
Не для каждого проекта необходимо реализовывать весь возможный функционал до первого запуска.
Во многих случаях эффективнее выпустить рабочую версию, получить реальные данные о её использовании и развивать проект небольшими последовательными итерациями.
Так проще проверять решения, контролировать бюджет и своевременно менять приоритеты.
Платформа поддерживает такой подход: проект можно развивать постепенно, не перестраивая его техническую основу после каждого изменения.
Каждый проект работает в контролируемом окружении с определёнными версиями программного обеспечения и зависимостей.
Среды разработки, тестирования и рабочего сервера максимально согласованы между собой. Это уменьшает количество проблем при выпуске обновлений и упрощает диагностику технических ошибок.
Изоляция позволяет проектам использовать разные версии технологий и обновляться независимо друг от друга.
Веб-технологии постоянно развиваются. Меняются библиотеки, программное окружение и требования к безопасности.
При этом работающий бизнес-проект не должен зависеть от необходимости немедленно переходить на каждую новую версию.
Изолированная архитектура позволяет планировать обновления и миграции: оценивать объём работ, выбирать подходящее время и заранее учитывать затраты.
Это особенно важно для проектов, которые эксплуатируются в течение многих лет.
Требования к размещению зависят от конкретного проекта.
Для небольшого сайта может быть достаточно стандартной инфраструктуры. Для сервисов, интеграционных решений и проектов с повышенной нагрузкой могут использоваться VPS/VDS, облачные ресурсы или выделенные серверы.
Мы подбираем конфигурацию исходя из реальных требований, не усложняя инфраструктуру без необходимости.
Если нагрузка увеличивается, ресурсы и архитектуру можно масштабировать вместе с проектом.
После публикации проект продолжает работать и изменяться.
Необходимо следить за его состоянием, безопасностью, резервным копированием, программным окружением и своевременно реагировать на технические проблемы.
Поэтому разработку, эксплуатацию и дальнейшее развитие мы рассматриваем как части одного процесса.
Платформа создаёт для этого единую техническую основу: от первой версии проекта до его последующих обновлений и развития.
Node.js · TypeScript · Express · Nuxt · 1С-Битрикс · Linux · Docker · изолированные окружения · автоматизация сборки и публикации · мониторинг · резервное копирование
Проекты могут иметь различные требования к рабочему окружению. Большая часть сайтов вполне нормально работает на разделяемых, общих серверах. Некоторые требуют изоляции ресурсов, например выделения определенного объема оперативной памяти или резервирования мощности процессора.
В своей работе мы используем хостинг Timeweb. Как для общих стандартных проектов, так и для проектов, работающих на VPS/VDS серверах. Для приложений используется инфраструктура Timeweb Cloud.
Эксплуатация проекта в современных реалиях требует постоянного внимания. Своевременной реакции на инциденты.
Для больших высоконагруженных проектов может потребоваться аренда физического, выделенного сервера, с подходящими параметрами. Эксплуатация отдельного сервера потребует специализированных работа по настройке, обновлению и эксплуатации.