Мы попробовали в реальном проекте Dynamic Workflows от Claude Code. Рассказываю, что сработало, а что нет
⏳ 9 мин | 🟤🟤⚪️
Перейти | @ba_and_sa
💙 BA|SA | 💬 BA|SA
Перейти | @ba_and_sa
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
❓Как стать незаменимым специалистом в системном анализе?
Получите актуальные навыки анализа данных на практике и научитесь применять на реальных проектах с поддержкой преподавателей.
Объедините знания в финальный проект экспертного уровня на курсе «Системный аналитик. Экспертный уровень»
🎁 Записывайтесь на 3 бесплатных вебинара — познакомьтесь с программой обучения и преподавателями. Задайте свои вопросы экспертам!
Вебинар 1: «Шпаргалка по проектированию REST API»
⏰ 2 июня в 20:00 мск
В программе:
1. Что такое REST и его отличия от других подходов.
2. Правила проектирования ресурсов, эндпоинтов, HTTP-методов и кодов ответа.
3. Стандарты обработки ошибок, валидации данных и версионирования.
4. Безопасность, логирование и документация в OpenAPI/Swagger.
Вебинар 2: «Создаём ИИ-ассистента для системного аналитика за 1 час»
⏰ 11 июня в 20:00 мск
В программе:
1. На практике с нуля соберем ИИ-агента, превращающего сообщения из Telegram в готовые задачи с ТЗ и приоритетом.
2. На живом примере разберём путь от голосового сообщения коллеги до структуры в трекере за 2 минуты.
3. Готовые схемы автоматизации рутины: создание задач, документирование требований, сборка статистики
4. Разбор «подводных камней» при настройке ИИ.
Вебинар 3: «OAuth 2.0, JWT и коварные куки: Проектируем безопасную аутентификацию»
⏰ 22 июня в 20:00 мск
В программе:
1. Use Case: сквозной сценарий защиты Access/Refresh токенов для веба, мобильных и десктоп-клиентов прямо в Use Case
2. Sequence-диаграммы: перестройка уязвимой модели Bearer token + localStorage в безопасную BFF + httpOnly Secure Cookie
3. Соберём «радар» типовых атак: защита требований от брутфорса и Replay-атак, так, чтобы эти сценарии не выпали из поля зрения разработки
4. OAuth 2.0 на языке аналитика: понятный разбор Flow и PKCE; готовый чек-лист выбора гранта под ваши бизнес-процессы
Записывайтесь ➡ OTUS.RU
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Получите актуальные навыки анализа данных на практике и научитесь применять на реальных проектах с поддержкой преподавателей.
Объедините знания в финальный проект экспертного уровня на курсе «Системный аналитик. Экспертный уровень»
🎁 Записывайтесь на 3 бесплатных вебинара — познакомьтесь с программой обучения и преподавателями. Задайте свои вопросы экспертам!
Вебинар 1: «Шпаргалка по проектированию REST API»
⏰ 2 июня в 20:00 мск
В программе:
1. Что такое REST и его отличия от других подходов.
2. Правила проектирования ресурсов, эндпоинтов, HTTP-методов и кодов ответа.
3. Стандарты обработки ошибок, валидации данных и версионирования.
4. Безопасность, логирование и документация в OpenAPI/Swagger.
Вебинар 2: «Создаём ИИ-ассистента для системного аналитика за 1 час»
⏰ 11 июня в 20:00 мск
В программе:
1. На практике с нуля соберем ИИ-агента, превращающего сообщения из Telegram в готовые задачи с ТЗ и приоритетом.
2. На живом примере разберём путь от голосового сообщения коллеги до структуры в трекере за 2 минуты.
3. Готовые схемы автоматизации рутины: создание задач, документирование требований, сборка статистики
4. Разбор «подводных камней» при настройке ИИ.
Вебинар 3: «OAuth 2.0, JWT и коварные куки: Проектируем безопасную аутентификацию»
⏰ 22 июня в 20:00 мск
В программе:
1. Use Case: сквозной сценарий защиты Access/Refresh токенов для веба, мобильных и десктоп-клиентов прямо в Use Case
2. Sequence-диаграммы: перестройка уязвимой модели Bearer token + localStorage в безопасную BFF + httpOnly Secure Cookie
3. Соберём «радар» типовых атак: защита требований от брутфорса и Replay-атак, так, чтобы эти сценарии не выпали из поля зрения разработки
4. OAuth 2.0 на языке аналитика: понятный разбор Flow и PKCE; готовый чек-лист выбора гранта под ваши бизнес-процессы
Записывайтесь ➡ OTUS.RU
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
❤7👍3
Постанализ юзкейсов, или Как спроектировать непрерывную ABAC-авторизацию UI и API. Часть 1
⏳ 8 мин | 🟤🟤⚪️
Перейти | @ba_and_sa
💙 BA|SA | 💬 BA|SA
Перейти | @ba_and_sa
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Как превратить стохастический ИИ в детерминированную машину
⏳ 14 мин | 🟤🟤⚪️
Перейти | @ba_and_sa
💙 BA|SA | 💬 BA|SA
Перейти | @ba_and_sa
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Как спроектировать REST API без ошибок: 3 задачи с разбором
⏳ 11 мин | 🟤🟤⚪️
Перейти | @ba_and_sa
💙 BA|SA | 💬 BA|SA
Перейти | @ba_and_sa
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍4🔥1
Что сегодня отличает зрелую BI-платформу от просто инструмента отчетности?
Судя по новому рейтингу CNews, бизнес все больше ценит не отдельные функции, а способность системы объединять данные из разных источников, обеспечивать единые правила расчета метрик и поддерживать self-service-подход. Именно поэтому среди лидеров исследования оказались решения, которые делают ставку на интеграции, доступность аналитики для бизнеса и развитие ИИ-инструментов, включая DataLens.
Для бизнес- и системных аналитиков это важный сигнал: ценность BI постепенно смещается от визуализации к управлению данными и качеству аналитической модели. Чем сложнее ИТ-ландшафт компании, тем большее значение приобретают единые метрики, прозрачная логика расчетов и возможность быстро получать ответы без множества ручных операций.
BI становится не витриной данных, а полноценным инструментом принятия решений.
Судя по новому рейтингу CNews, бизнес все больше ценит не отдельные функции, а способность системы объединять данные из разных источников, обеспечивать единые правила расчета метрик и поддерживать self-service-подход. Именно поэтому среди лидеров исследования оказались решения, которые делают ставку на интеграции, доступность аналитики для бизнеса и развитие ИИ-инструментов, включая DataLens.
Для бизнес- и системных аналитиков это важный сигнал: ценность BI постепенно смещается от визуализации к управлению данными и качеству аналитической модели. Чем сложнее ИТ-ландшафт компании, тем большее значение приобретают единые метрики, прозрачная логика расчетов и возможность быстро получать ответы без множества ручных операций.
BI становится не витриной данных, а полноценным инструментом принятия решений.
От кода к людям: как вырасти в руководителя команды и не возненавидеть свою работу. Бесплатный урок курса «Руководитель команд в ИТ»
Сильный инженер не становится сильным руководителем автоматически. Часто всё происходит наоборот: вчера человек отвечал за свой код, а сегодня — за людей, сроки, конфликты, ожидания бизнеса и результат всей команды. Без подготовки это быстро превращается в выгорание, микроменеджмент и ощущение, что проще всё сделать самому.
На открытом уроке 16 июня в 20:00 разберём, почему начинающие руководители команд чаще всего ломаются не из-за слабых технических навыков, а из-за непонимания новой роли.
На практических примерах посмотрим, как желание «сделать самому» убивает делегирование, почему к разным сотрудникам нужен разный стиль управления и как руководителю перестать тонуть в потоке задач. Отдельно обсудим разрыв между мышлением инженера и руководителя: как меняется фокус, результат, инструменты и ожидания от вашей работы.
Урок не для тех, кто считает управление «естественным продолжением разработки», не готов работать с людьми и хочет остаться главным исполнителем, просто с новым названием должности.
👉 Записаться: https://clck.ru/3U7ehS
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Сильный инженер не становится сильным руководителем автоматически. Часто всё происходит наоборот: вчера человек отвечал за свой код, а сегодня — за людей, сроки, конфликты, ожидания бизнеса и результат всей команды. Без подготовки это быстро превращается в выгорание, микроменеджмент и ощущение, что проще всё сделать самому.
На открытом уроке 16 июня в 20:00 разберём, почему начинающие руководители команд чаще всего ломаются не из-за слабых технических навыков, а из-за непонимания новой роли.
На практических примерах посмотрим, как желание «сделать самому» убивает делегирование, почему к разным сотрудникам нужен разный стиль управления и как руководителю перестать тонуть в потоке задач. Отдельно обсудим разрыв между мышлением инженера и руководителя: как меняется фокус, результат, инструменты и ожидания от вашей работы.
Урок не для тех, кто считает управление «естественным продолжением разработки», не готов работать с людьми и хочет остаться главным исполнителем, просто с новым названием должности.
👉 Записаться: https://clck.ru/3U7ehS
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
System Design: проектируем Rate Limiter, ограничитель запросов
⏳ 29 мин | 🟤🟤⚪️
Перейти | @ba_and_sa
💙 BA|SA | 💬 BA|SA
Перейти | @ba_and_sa
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
System Design: проектируем Rate Limiter, ограничитель запросов
Видеоразбор этой задачи на русском языке можно посмотреть здесь - https://www.youtube.com/watch?v=D7sulsN-qJw Проектирование Rate Limiter Постановка задачи 🚦 Что такое Rate Limiter? Rate Limiter...
❤3🤔1
Салют! Хочу тоже затронуть тему, проектировать REST API и рассказать на своем примере
Знаете, что меня до сих пор выбивает из равновесия? Когда на ревью спрашиваешь разработчика: “почему эндпоинт называется именно так?” — и в ответ: “ну, так исторически сложилось”🤯 За 10 лет я слышала это столько раз, что уже завела внутренний счётчик.
🚨 Давайте разберём REST API нормально — один раз, по-человечески, с примером.
Сначала главное: REST — это не технология, это договорённость
REST — архитектурный стиль. Просто набор правил о том, как клиент и сервер общаются через HTTP. И первое правило, которое нарушают чаще всего — ресурсы именуются существительными, не глаголами.
❌ Так не надо:
✅ Так правильно:
HTTP-методы сами несут смысл действия — GET получить, POST создать, PUT/PATCH обновить, DELETE удалить. Глагол в URL — это дублирование, которое потом запутает всех, включая вас саму через полгода.
💡 Живой пример: API интернет-магазина
Есть товары, заказы, пользователи. Поехали.
Базовые операции:
Здесь сразу вопрос, который почти никогда не задают вслух: PUT или PATCH?
PUT — заменяет ресурс целиком и обязан быть идемпотентным — то есть хоть десять раз вызови с одними данными, результат одинаковый
PATCH — обновляет только то, что передали
На практике PATCH выигрывает почти всегда — никто не хочет слать весь объект ради изменения одного поля статуса.
Вложенные ресурсы — и вот тут начинается самое интересное
Заказ принадлежит пользователю. Отражаем это в структуре:
Но если заказы нужны и сами по себе — например, в админке — добавляем отдельно:
И вот моё личное правило, выстраданное на проектах:
Вложенность глубже двух уровней — тревожный сигнал. Если у вас
/users/{id}/orders/{orderId}/items/{itemId}/reviews — это не REST, это маршрут до боли.
Коды ответов — то, на что аналитики машут рукой зря
“Разработчик разберётся” — нет. Или разберётся по-своему, и тогда фронт получает 200 с телом {"error": true} и тихо плачет.
Минимальный джентльменский набор:
200 - Успешный GET, PATCH, PUT
201 - Успешный POST — ресурс создан
204 - Успешный DELETE — тело пустое
400 - Синтаксически сломанный запрос (битый JSON и т.п.)
401 - Не авторизован 403 - Авторизован, но нет прав 404 - Ресурс не найден 409 - Конфликт (дубль email, например)
422 - Запрос понят, но данные не прошли валидацию
500 - Ошибка сервера
Отдельно про 400 vs 422 — это путают постоянно. 400 — когда запрос синтаксически сломан, сервер вообще не смог его прочитать. 422 — запрос понятен, но внутри что-то не то: поле обязательное, формат не тот, логика не сходится. Для ошибок валидации форм почти всегда нужен именно 422.
И 401 vs 403 — классика жанра: 401 = “кто ты вообще?”, 403 = “знаю кто ты, но нет”.
Формат ошибки — договоритесь до начала разработки
Лучший момент для этого — старт проекта. Худший — когда фронт уже написал сорок обработчиков.
✅ Хорошо:
❌ Плохо:
Второй вариант — это не API, это квест.
Версионирование — заложите сразу
API когда-нибудь изменится. Поменяется логика, добавятся поля, что-то удалится.
Если не заложить версионирование с самого начала — первое же обновление превратится в боль для всех.
Самый простой и понятный способ:
___________
Источник: @ba_and_sa
💙 BA|SA | 💬 BA|SA
Знаете, что меня до сих пор выбивает из равновесия? Когда на ревью спрашиваешь разработчика: “почему эндпоинт называется именно так?” — и в ответ: “ну, так исторически сложилось”
Сначала главное: REST — это не технология, это договорённость
REST — архитектурный стиль. Просто набор правил о том, как клиент и сервер общаются через HTTP. И первое правило, которое нарушают чаще всего — ресурсы именуются существительными, не глаголами.
POST /getUser
POST /createOrder
GET /deleteProduct?id=5
GET /users/{id}
POST /orders
DELETE /products/{id}
HTTP-методы сами несут смысл действия — GET получить, POST создать, PUT/PATCH обновить, DELETE удалить. Глагол в URL — это дублирование, которое потом запутает всех, включая вас саму через полгода.
Есть товары, заказы, пользователи. Поехали.
Базовые операции:
GET /products — список товаров
GET /products/{id} — конкретный товар
POST /products — создать товар
PATCH /products/{id} — обновить часть данных
DELETE /products/{id} — удалить товар
Здесь сразу вопрос, который почти никогда не задают вслух: PUT или PATCH?
PUT — заменяет ресурс целиком и обязан быть идемпотентным — то есть хоть десять раз вызови с одними данными, результат одинаковый
PATCH — обновляет только то, что передали
На практике PATCH выигрывает почти всегда — никто не хочет слать весь объект ради изменения одного поля статуса.
Вложенные ресурсы — и вот тут начинается самое интересное
Заказ принадлежит пользователю. Отражаем это в структуре:
GET /users/{userId}/orders — все заказы пользователя
GET /users/{userId}/orders/{orderId} — конкретный заказ
POST /users/{userId}/orders — создать заказНо если заказы нужны и сами по себе — например, в админке — добавляем отдельно:
GET /orders/{id}И вот моё личное правило, выстраданное на проектах:
Вложенность глубже двух уровней — тревожный сигнал. Если у вас
/users/{id}/orders/{orderId}/items/{itemId}/reviews — это не REST, это маршрут до боли.
Коды ответов — то, на что аналитики машут рукой зря
“Разработчик разберётся” — нет. Или разберётся по-своему, и тогда фронт получает 200 с телом {"error": true} и тихо плачет.
Минимальный джентльменский набор:
200 - Успешный GET, PATCH, PUT
201 - Успешный POST — ресурс создан
204 - Успешный DELETE — тело пустое
400 - Синтаксически сломанный запрос (битый JSON и т.п.)
401 - Не авторизован 403 - Авторизован, но нет прав 404 - Ресурс не найден 409 - Конфликт (дубль email, например)
422 - Запрос понят, но данные не прошли валидацию
500 - Ошибка сервера
Отдельно про 400 vs 422 — это путают постоянно. 400 — когда запрос синтаксически сломан, сервер вообще не смог его прочитать. 422 — запрос понятен, но внутри что-то не то: поле обязательное, формат не тот, логика не сходится. Для ошибок валидации форм почти всегда нужен именно 422.
И 401 vs 403 — классика жанра: 401 = “кто ты вообще?”, 403 = “знаю кто ты, но нет”.
Формат ошибки — договоритесь до начала разработки
Лучший момент для этого — старт проекта. Худший — когда фронт уже написал сорок обработчиков.
{
"error": {
"code": "VALIDATION_ERROR",
"message": "Поле email обязательно",
"field": "email"
}
}Второй вариант — это не API, это квест.
{
"status": false,
"msg": "err"
}Версионирование — заложите сразу
API когда-нибудь изменится. Поменяется логика, добавятся поля, что-то удалится.
Если не заложить версионирование с самого начала — первое же обновление превратится в боль для всех.
Самый простой и понятный способ:
/api/v1/products
/api/v2/products
___________
Источник: @ba_and_sa
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍24❤7🔥2🙏1
Архитектурный крест: как приручить System Design interview
⏳ 10 мин | 🟤🟤⚪️
Перейти | @ba_and_sa
💙 BA|SA | 💬 BA|SA
Перейти | @ba_and_sa
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
AIналитик v2 по BABOK: как я переписал AI-платформу для бизнес-анализа, чтобы она работала c любыми LLM
⏳ 16 мин | 🟤🟤⚪️
Перейти | @ba_and_sa
💙 BA|SA | 💬 BA|SA
Перейти | @ba_and_sa
Please open Telegram to view this post
VIEW IN TELEGRAM
💯1
🔥24 июня в 20.00 мск. приглашаем на открытый урок: "Отказоустойчивый и высоко-доступный кластер RabbitMQ"
На вебинаре разберём практические подходы к созданию отказоустойчивой и высоко-доступной очереди сообщений для высоконагруженных систем.
📌 Что будет:
— Запуск и настройка кластера: Quorum Queues и Mirrored Queues (синхронная репликация)
— Синхронизация очередей и обеспечение согласованности
— Dead Letter Queue + правильные настройки durability
— Гарантии доставки для Producer: баланс между надёжностью и производительностью
— Asynchronous cluster-to-cluster message routing: Exchange Federation и Shovels
🎯 После вебинара вы сможете:
— Самостоятельно развернуть отказоустойчивый кластер RabbitMQ
— Настраивать Quorum Queues и Mirrored Queues под разные сценарии
— Правильно работать с Dead Letter Queues и гарантиями доставки
— Организовывать межкластерное взаимодействие сообщений
— Проектировать надёжные асинхронные коммуникации в микросервисной архитектуре
👉 Регистрация открыта: https://clck.ru/3UErYW
Вебинар приурочен к старту курса «Высоконагруженные системы: архитектура и масштабирование».
🎁При покупке курса вы получите в подарок мини-курс по Kafka, который поможет подготовиться к собеседованию в бигтех
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
На вебинаре разберём практические подходы к созданию отказоустойчивой и высоко-доступной очереди сообщений для высоконагруженных систем.
📌 Что будет:
— Запуск и настройка кластера: Quorum Queues и Mirrored Queues (синхронная репликация)
— Синхронизация очередей и обеспечение согласованности
— Dead Letter Queue + правильные настройки durability
— Гарантии доставки для Producer: баланс между надёжностью и производительностью
— Asynchronous cluster-to-cluster message routing: Exchange Federation и Shovels
🎯 После вебинара вы сможете:
— Самостоятельно развернуть отказоустойчивый кластер RabbitMQ
— Настраивать Quorum Queues и Mirrored Queues под разные сценарии
— Правильно работать с Dead Letter Queues и гарантиями доставки
— Организовывать межкластерное взаимодействие сообщений
— Проектировать надёжные асинхронные коммуникации в микросервисной архитектуре
👉 Регистрация открыта: https://clck.ru/3UErYW
Вебинар приурочен к старту курса «Высоконагруженные системы: архитектура и масштабирование».
🎁При покупке курса вы получите в подарок мини-курс по Kafka, который поможет подготовиться к собеседованию в бигтех
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🙏1
Forwarded from Analyst IT
Плохое ТЗ — это не вина одного человека. Это результат работы команды
⏳ 10 мини | 🟡⚪️⚪️
Читать статью | @analysis_it
💙 Analyst IT | 💬 Analyst IT
Читать статью | @analysis_it
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍3🔥1
Что на самом деле мешает работе с ИИ
Типичный сценарий выглядит так: в ChatGPT ставится задача, прикладываются документы, объясняются внутренние термины, уточняется актуальный регламент — и только после этого появляется полезный ответ. Через день все начинается заново.
Может показаться, что проблема в промптах, что нужно просто лучше формулировать запросы. Но дело не в этом.
Обычный чат не знает компанию. Не знает регламенты, требования, протоколы встреч и накопленный контекст. Поэтому каждый новый диалог начинается с ручной передачи знаний, которые уже давно существуют внутри организации.
Чем больше документов и процессов появляется в компании, тем заметнее становится проблема. ИИ используется для ускорения работы, но значительная часть времени по-прежнему уходит на объяснение того, что система должна знать сама.
Поэтому главный вопрос сегодня уже не «как правильно писать промпты». Главный вопрос — как дать ИИ доступ к знаниям компании.
23 июня пройдет бесплатный вебинар от karpovꓸcourses, на котором покажут, как устроен ИИ-ассистент, который работает с регламентами, требованиями, протоколами встреч и базой знаний компании. И почему обычным промптингом такого эффекта не добиться.
Узнайте, как дать ИИ доступ к знаниям компании и перестать объяснять одно и то же в каждом чате: https://clc.to/erid_2W5zFGPpEYH
Реклама. ООО «КАРПОВ КУРСЫ». ИНН 7811764627. erid: 2W5zFGPpEYH
Типичный сценарий выглядит так: в ChatGPT ставится задача, прикладываются документы, объясняются внутренние термины, уточняется актуальный регламент — и только после этого появляется полезный ответ. Через день все начинается заново.
Может показаться, что проблема в промптах, что нужно просто лучше формулировать запросы. Но дело не в этом.
Обычный чат не знает компанию. Не знает регламенты, требования, протоколы встреч и накопленный контекст. Поэтому каждый новый диалог начинается с ручной передачи знаний, которые уже давно существуют внутри организации.
Чем больше документов и процессов появляется в компании, тем заметнее становится проблема. ИИ используется для ускорения работы, но значительная часть времени по-прежнему уходит на объяснение того, что система должна знать сама.
Поэтому главный вопрос сегодня уже не «как правильно писать промпты». Главный вопрос — как дать ИИ доступ к знаниям компании.
23 июня пройдет бесплатный вебинар от karpovꓸcourses, на котором покажут, как устроен ИИ-ассистент, который работает с регламентами, требованиями, протоколами встреч и базой знаний компании. И почему обычным промптингом такого эффекта не добиться.
Узнайте, как дать ИИ доступ к знаниям компании и перестать объяснять одно и то же в каждом чате: https://clc.to/erid_2W5zFGPpEYH
Реклама. ООО «КАРПОВ КУРСЫ». ИНН 7811764627. erid: 2W5zFGPpEYH
👍4🔥3❤2