Обновить
512K+

DevOps *

Методология разработки программного обеспечения

315,93
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Как техлид без навыка кодинга руками собрал Telegram-систему закупок с OCR, модерацией и безопасным деплоем

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели12K

Я технический лидер. Обычно моя работа не в том, чтобы писать код руками, а в том, чтобы запускать сложные hardware/software-проекты с нуля, собирать архитектуру, принимать ключевые технические решения, выстраивать команду и доводить систему до MVP в условиях неопределённости.

Я работаю на стыке механики, электроники, разработки и AI, связывая это в единый контур.

При этом я не владею языками программирования как разработчик.

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

Короткий ответ: да, можно.

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

Читать далее

Квантовый скачок n8n: миграция с Traefik 1.x и Postgres 11 на актуальный стек (Traefik 3.3 + PG 16) без потери данных

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели7.6K

В этой статье поделюсь инструкцией по переносу, в которой учтены неочевидные баги несовместимости Traefik 3 с Docker API, политика безопасности свежего Postgres и конфликты ключей шифрования.

Читать далее

Отказоустойчивый Anycast DNS с управлением через IaC

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели8.7K

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

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

Это всё DNS?

Как я собрал себе C2 на малинке за один вечер

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели9.6K

Давно хотел поднять свой C2-сервер. Ну, чтобы как большие мальчики с доменом, прокси, шифрованным туннелем. Но покупать VPS с 8GB RAM и платить за Cobalt Strike как‑то жирновато. Решил: будет малинка.

ВНИМАНИЕ: Эта статья предназначена для ознакомления начинающим исследователям в области Кибербезопасности. Я не предоставляю инструкций по атакам на инфраструктуру. Я не буду тут показывать как обходить защиту windows и какие либо системы обнаружения угроз. Перед загрузкой вредоносного файла я отключил защиту в windows. Такая атака не сработает в боевых условиях это лишь материал для начального ознакомления!

Читать далее

Что такое DORA-метрики и как их измерять, часть 1

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели5.7K

Проблема большинства команд не в том, что они работают медленно. Проблема в том, что они толком не понимают, где именно теряют время, сколько стоит каждая ошибка и насколько тяжёлым стал сам процесс поставки изменений. Именно здесь и полезны DORA-метрики. Разберём, что они измеряют, где их чаще всего трактуют неправильно и как применять их без KPI-магии. 

Читать далее

Axios и проблема зависимостей

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели5.9K

Как взлом одного npm-аккаунта за 3 часа распространил RAT на 174 000 пакетов и почему стандартные инструменты вроде NPM Audit это не поймали. Разбираем инцидент с Axios: механику атаки, слепые пятна в CI/CD и то, что реально работает.

Читать далее

Я потратил 10 лет на создание легкого PHP фреймворка для разработки WEB-приложений

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели10K

Привет, All!

Как вам идея, отказаться от тегов вообще и делать WEB-проекты исключительно на классах? А еще, чтобы и клиентский, и серверный коды шли рядом, как в десктопном приложении.И чтобы с одними и теми же переменными можно было работать и в PHP, и в JavaScript.

«Зачем?» — сапросит кто‑то. Отвечу: чтобы можно было строить не DOM‑элементы, а объекты предметной области бизнес‑процессов, которые автоматизирует мое приложение. И чтобы не тратить время на разные async, promise, ajax и так далее, пусть за это отвечает фреймворк!

Я говорю примерно вот о таком построении WEB-приложения:

Читать далее

От 10 МБ/с к 700 МБ/с: заменил «Яндекс Диск» на Nextcloud/NetBird без знаний DevOps (помог Cursor)

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели18K

Бросил «Яндекс.Диск» и собрал своё облако на Nextcloud + NetBird: 700 МБ/с скорости. Без знаний DevOps, без серьёзных денег, только Cursor в помощь. Читайте, как я шаг за шагом вернул к жизни 10-летний Mac mini — и убедился, что старому псу новые трюки вполне по силам. А заодно научился общаться с ИИ как прораб на стройке.

Читать далее

Вместо 8 разных VPS: как я организовал практику студентам на одном сервере

Уровень сложностиПростой
Время на прочтение17 мин
Охват и читатели7.7K

Как дать студентам курса живой опыт деплоя, не заставляя их покупать собственные VPS и не плодя локальные виртуалки? Я решил эту задачу, «нарезав» один сервер на полностью изолированные рабочие пространства с помощью системы контейнеризации Incus. В этой статье — история одного занятия с пошаговым гайдом и разбором всех собранных граблей: почему Docker конфликтует с ZFS, куда пропадает интернет из-за IPv6 и как пробросить порты так, чтобы у каждого студента был свой кусочек сервера.

Читать далее

Данные переехали. Команда — нет

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели5.2K

Представьте: команда из 80 человек несколько лет живёт в Jira. Доски, спринты, кастомные поля, автоматизации на Groovy, сотни вложений, тысячи ссылок, разлетевшихся по корпоративным вики и письмам. 

И вот в один прекрасный день приходит задача: «Переезжаем». Дедлайн — три месяца. При этом на старте никто не знает, что в системе накопилось за годы: десятки автоматизаций, половина из которых создавалась под задачи, которых уже нет.

Читать далее

Где хранить код? Сравнение GitHub, GitLab и Bitbucket

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели9.2K

GitHub, GitLab или Bitbucket — куда податься начинающему разработчику в 2026? Казалось бы, какая разница — Git везде одинаковый. Но когда дело доходит до первого пет-проекта, портфолио или стартапа на троих, выбор платформы решает всё: от скорости сборки до шансов быть замеченным рекрутером.

В этой статье — сравнение лимитов, цен и скрытых фич. Разберём реальные сценарии, таблицу с актуальными данными на апрель 2026.

Читать далее

Почему ваш FinOps не работает: 12 тезисов от практиков

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели6.7K

Есть такая штука: чем больше компания тратит на инфраструктуру, тем меньше она понимает, куда уходят деньги. Казалось бы, парадокс. Но если посмотреть на то, как устроено управление ИТ-бюджетом в большинстве организаций, всё встаёт на свои места. Потому что считать научились, а управлять — пока нет. И проблема тут не в инструментах. Их-то как раз навалом. Проблема в том, что финансы, инженеры и бизнес до сих пор живут в параллельных реальностях и разговаривают на разных языках. А FinOps — это, по сути, попытка эти реальности склеить. Насколько успешная — вопрос открытый.

Вместе с Виталием Глушаковым мы решили разобрать, как это работает (или не работает, пусть будет сюрприз) на практике. Виталий имеет большой опыт управления и FinOps-трансформации отделов разработки и уже опубликовал свою часть на LinkedIn — «FinOps: 5 шагов к зрелости». Обязательно почитайте, там много интересного. А мы, со своей стороны, дополняем каждый тезис практическим контекстом, потому что между тем, как должно быть и как оно бывает на самом деле, иногда помещается целая пропасть.

Присоединяйтесь к нашему сообществу «Практики FinOps» в Telegram.

Читать далее

Как подписать проектную документацию УКЭП с использованием бесплатных лицензий Pilot

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели6.7K

Привет, друзья!  В начале года на Хабре проходил конкурс Heavy Digital: авторы рассказывали о том, как IT помогают заводам, где «трубы дымят и мужики в куртках бегают». Строительная отрасль – не менее heavy, здесь мужики в касках укладывают бетон и забивают сваи под фундамент. А еще всю проектную документацию при подаче на госэкспертизу теперь надо подписывать усиленной квалифицированной электронной подписью (УКЭП), и это серьёзная IT-задача.

В статье я подготовил подробную инструкцию для всех этапов: как настроить систему документооборота, установить  криптопровайдер, получить сертификат УКЭП и подписать документ.

Читать далее

Ближайшие события

Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели14K

Что делать, если синхронные REST-вызовы превращают ваши микросервисы в карточный домик? Пора вспомнить проверенные временем паттерны обмена сообщениями. В этой статье разбираем архитектуру Pipes and Filters, Content-Based Router и Idempotent Receiver — те самые кирпичики, на которых держатся надёжные системы. Схемы, best practices для проектирования устойчивых интеграций для Enterprise-разработки.

Читать далее

Поиск уязвимостей ПО: базовый минимум или роскошный максимум

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели8.9K

Привет, Хабр! Меня зовут Артем, я являюсь руководителем центра технической экспертизы по анализу защищенности в AKTIV.CONSULTING. Сегодня я хочу затронуть тему поиска уязвимостей программного обеспечения при эксплуатации и разобраться, чем это является на практике: базовым минимумом или все-таки роскошным максимумом. Ориентироваться будем на 24 процесс ГОСТ Р 56939-2024 по разработке безопасного программного обеспечения (БРПО, РБПО, DevSecOps).

Разбираемся

Infrastructure as Code: философия и лучшие практики IaC

Время на прочтение6 мин
Охват и читатели8.7K

Ручное управление серверами, «фиксы по SSH» и конфигурации, которые живут только в голове ушедшего в отпуск админа, — это не просто боль, это прямая угроза бизнесу. В этой статье разбираем, почему Infrastructure as Code перестал быть «модным словом» и стал единственным способом спать спокойно. Реальный кейс: как Knight Capital потерял $440 млн за 45 минут из‑за отсутствия воспроизводимой инфраструктуры. Практические советы, пайплайн с GitOps и лучшие практики внедрения IaC в 2026 году.

Читать далее

nxs-universal-chart v3.0: новое поколение универсального Helm-чарта

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели8.1K

Релиз nxs-universal-chart 2.8.3 был более двух лет назад и за это время многое поменялось: Ingress Nginx ушел на покой, GitOps по факту стал стандартом управления инфраструктурой, а AI все сильнее входит в наши жизни. Все эти изменения не могли пройти мимо и заставили нас задуматься о том, как адаптировать наши подход и технологии DevOps к вызовам нового времени.

Результатом этих размышлений стал релиз новой версия nxs-universal-chart v3.x: из универсального набора встроенных шаблонов мы постарались превратить его в модульную платформу для поставки приложений в Kubernetes с упором на надежность и современные практики CI/CD процессов.

Всем привет, на связи Пётр, инженер компании Nixys и по совместительству maintainer проекта nxs-universal-chart. В этой статье я расскажу как мы переработали изначальную идею и какие нововведения в чарте это за собой повлекло.

Читать далее

OpenTelemetry и Sentry: как мы выстроили сбор телеметрии в микросервисной системе

Время на прочтение7 мин
Охват и читатели6K

В распределенной системе понять, что именно произошло во время выполнения запроса, бывает сложнее, чем исправить саму ошибку. Логи показывают события по отдельности, метрики — общую динамику, но без связки между ними картина остается фрагментарной. Мы решили выстроить наблюдаемость на базе OpenTelemetry и использовать Sentry для анализа трейсов.

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

Чтобы избежать этого, мы выстраиваем связку OpenTelemetry + Sentry. OpenTelemetry позволяет стандартизировать сбор телеметрии, а Sentry — централизовать ее анализ. В результате появляется целостная картина работы системы.

Введение в OpenTelemetry: traces, metrics, logs

OpenTelemetry объединяет три типа телеметрии — логи, метрики и трейсы — и задает для них спецификации.

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

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

Читать далее

Сервинг модели Grounding DINO с BentoML

Время на прочтение11 мин
Охват и читатели7K

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

Запуск ML-моделей в production-среде — это тот еще квест:  

• необходимо хранить и версионировать модели;

• нужен мониторинг ресурсопотребления, производительности и дрейфа данных в реальном времени;

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

К счастью, есть специальные инструменты, которые существенно облегчают такую задачу. В этой статье рассмотрим сервинг модели Grounding DINO при помощи популярного фреймворка BentoML. Под катом вас ждет много кода, скриншоты и практические советы.

Читать далее

Как мы подружили QA и unit-тесты через Allure (и встроили их в регресс)

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели8.6K

Всем привет! Меня зовут Артем. Я Android QA Engineer в команде Банки.ру.

Было ли у вас такое, что unit-тесты в проекте есть, но на практике ими почти никто не пользуется? Разработчики их пишут, но для QA это “что-то где-то в коде”: нельзя нормально посмотреть результаты, оценить покрытие или использовать в регрессе.

В статье рассказал, как мы решили эту проблему: сделали unit-тесты видимыми через Allure, связали их с тест-кейсами и встроили в реальный процесс тестирования.

Читать далее