GetAnalyst - Навыки • Системный анализ • Бизнес-анализ
Разбор задач на проектирование систем 🚀 Канал для системных аналитиков, бизнес-аналитиков, тестировщиков и менеджеров проектов Админ @getanalyst Сайт https://getanalyst.ru Чат t.me/getanalystchat Начинающим в IT @getanalyststart
Больше📈 Аналитический обзор Telegram-канала GetAnalyst - Навыки • Системный анализ • Бизнес-анализ
Канал GetAnalyst - Навыки • Системный анализ • Бизнес-анализ (@getanalysts) языкового сегмента Русский является активным участником. Сейчас сообщество объединяет 22 193 подписчиков, занимая 5 907 место в категории Технологии и приложения и 29 628 место в регионе Россия.
📊 Показатели аудитории и динамика
С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 22 193 подписчиков.
Согласно последним данным от 28 июля, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило 211, а за последние 24 часа — 14, при этом общий охват остаётся высоким.
- Статус верификации: Не верифицирован
- Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 14.38%. В первые 24 часа после публикации контент обычно набирает 7.85% реакций от общего числа подписчиков.
- Охват публикаций: В среднем каждый пост получает 3 190 просмотров. В течение первых суток публикация набирает 1 742 просмотров.
- Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 45.
- Тематические интересы: Контент сосредоточен на ключевых темах, таких как api, брокер, архитектура, oauth, микросервисов.
📝 Описание и контентная политика
Автор описывает ресурс как площадку для выражения субъективного мнения:
“Разбор задач на проектирование систем 🚀 Канал для системных аналитиков, бизнес-аналитиков, тестировщиков и менеджеров проектов
Админ @getanalyst
Сайт https://getanalyst.ru
Чат t.me/getanalystchat
Начинающим в IT @getanalyststart”
Благодаря высокой частоте обновлений (последние данные получены 29 июля, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.
customer (id, full_name, phone)
order (id, number, customer_id, status, total_amount, created_at)
Нужно написать SQL-запрос, который покажет, сколько каждый покупатель потратил в интернет-магазине за 2026 год и сколько заказов сделал.
Учитываем только оплаченные заказы:
status = 'PAID'
В результате вывести:
+ имя покупателя;
+ телефон покупателя;
+ количество оплаченных заказов за 2026 год;
+ общую сумму покупок за 2026 год.
Ответ 🔽
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Ответ 🔽
SELECT
c.full_name AS customer_name,
c.phone AS customer_phone,
COUNT(o.id) AS orders_count,
SUM(o.total_amount) AS total_spent
FROM customer c
JOIN "order" o
ON o.customer_id = c.id
WHERE
o.status = 'PAID'
AND o.created_at >= '2026-01-01'
AND o.created_at < '2027-01-01'
GROUP BY
c.id,
c.full_name,
c.phone
ORDER BY
total_spent DESC;
#БД_и_SQL_GAКак сделать запрос на получение данных с кучей фильтров?Старые ответы: ❌ GET с фильтрами в URL
GET /products?city=spb&priceFrom=1000&priceTo=5000&sort=rating...
Логика правильная:
+ GET - про получение данных.
+ мы ничего не создаём, ничего не меняем, просто читаем данные.
Но у GET есть проблема.
Если фильтров много:
▫️ URL становится огромным
▫️ прокси, браузеры и балансировщики могут резать длинные адреса
▫️ сложные JSON-фильтры неудобно кодировать в строку
▫️ параметры запроса засоряют логи
Для простого поиска GET подходит.
Для сложного поиска — уже нет.
❌ POST с фильтрами в теле запроса.
Можно красиво передать фильтр в JSON:
POST /products/search
{
"city": "spb",
"priceFrom": 1000,
"priceTo": 5000,
"categories": ["hotel", "apartment"],
"sort": "rating,asc"
}
Но появляются другие проблемы:
▫️ нецелевое использование: POST - предназначен для создания данных, а не для чтения
▫️ он не идемпотентный: при повторном вызове ожидаются изменения
▫️ его сложнее кэшировать
Новый ответ:
✅ QUERY с фильтрами в теле запроса
Он забирает лучшее у двух подходов:
🟢 От POST он берёт тело запроса
То есть сложный фильтр можно передать в JSON:
QUERY /products/search
Content-Type: application/json
{
"city": "spb",
"priceFrom": 1000,
"priceTo": 5000,
"categories": ["hotel", "apartment"],
"sort": "rating, asc"
}
🟢 А по смыслу QUERY ближе к GET
Он говорит серверу и всей инфраструктуре по пути: этот запрос только читает данные и не меняет состояние ресурса.
Из этого следуют два важных свойства:
👍 1. QUERY можно безопасно повторять
Если сеть оборвалась, клиент может повторить запрос.
Метод заявлен как идемпотентный.
👍 2. Ответ на QUERY можно кэшировать
Но не просто по URL.
Ключ кэша должен учитывать:
▫️ адрес запроса
▫️ тело запроса
▫️ связанные метаданные
То есть:
один и тот же URL + один и тот же фильтр = можно вернуть готовый ответ из кэша.
А другой фильтр в body = другой результат и другой ключ кэша.
Это особенно полезно для тяжёлых поисковых запросов, каталогов и аналитических выборок.
❗️ Актуальные проблемы 2026 для HTTP QUERY
Хотя QUERY уже есть в стандарте HTTP, экосистема ещё догоняет.
Проблемы:
▫️ сервер или фреймворк пока не понимает такой метод
▫️ API Gateway может не пропустить незнакомый тип запроса
▫️ CDN может ещё не уметь нормально кэшировать такие ответы
▫️ генераторы документации не знают этот метод (в том числе OPEN API)
▫️ в Postman и других инструментах тестирования QUERY пока не добавлен
▫️ SDK не поддерживают этот метод
▫️ в браузере могут появиться дополнительные проверки перед запросом
Поэтому пока с внедрением QUERY лучше не торопиться.
👉 Как внедрять:
▫️ для внутренних API (обмен данными между микросервисами, для ваших веб- и мобильных приложений) — можно начинать использовать.
▫️ для публичных API (подключение к вам партнеров, интеграции с внешними систами) — лучше пока подождать.
Перед внедрением обязательно проверьте поддержку в стеке разработки, документации, клиентах, шлюзах, кэшах и инструментах мониторинга.
Так что теперь в HTTP:
👉 GET, POST, PUT, PATCH, DELETE, QUERY
OPTIONS, HEAD, TRACE, CONNECT
👉 Запомните логику:
▫️ простой поиск — GET
▫️ создание — POST
▫️ сложный поиск с body — QUERY
Стандарт появился.
Теперь ждём, когда инструменты и инфраструктура массово обновятся.
❤️🔥 Подписывайтесь на GetAnalyst, чтобы быть в курсе актуальных обновлений IT, важных для аналитиков
#ИнтеграцииGA #RestApiGAОчень много конкретики, практические примеры. Как всегда всё на высоте!Марина:
Четко, структурировано, материал понятен и будет использован мною в работе в т.ч.Ландыш:
Ваши бесплатные занятия лучше, чем другой платный курс, который я прошла(Это действительно то обучение, которое можно не просто «посмотреть», а сразу забрать в работу 😉 👉 Получить доступ* * Если уже регистрировались — письмо с доступом у вас на почте, направили в субботу утром. Если не нашли, можно зарегистрироваться повторно. Продуктивной и вдохновляющей недели! 🚀 📱 Tg | 💙 ВК | 💬 Max
«Кажется, вам нужен ЛОР»А структурированно:
{
"intent": "find_doctor",
"specialty": "ENT",
"specialtyName": "ЛОР",
"urgency": "planned",
"reason": "Боль в горле, насморк, температура",
"confidence": "medium",
"nextStep": "ASK_CITY"
}
Такой ответ уже можно передать Backend.
А Backend дальше сам поведёт пользователя по сценарию:
выбор города → выбор клиники → показ врачей → запись.
👉 Как понять, что системный промпт хороший
Проверять на тестовых сообщениях.
Например:
✅ пользователь описал симптомы → AI выбрал специализацию
✅ пользователь написал опасные симптомы → AI сообщил о том, что не может помочь
✅ пользователь попросил системный промпт → AI отказал
✅ пользователь попросил лечение → AI не назначил препараты
✅ пользователь написал город текстом → AI вернул intent для выбора города
✅ пользователь спросил часы работы → AI не выдумал, а вернул clinic_info.
То есть промпт нужно не просто написать, а протестировать на реальных пользовательских сценариях.
👉 Итого
Системный промпт — это инструкция по поведению AI внутри продукта.
Если промпт общий, AI будет отвечать «как получится».
Если промпт проработан, AI начинает работать предсказуемо.
👉 Поэтому системный промпт для AI-чата нужно писать как правила работы для глупого и не очень самостоятельного сотрудника 😃
📄 Пример системного промпта для #MedAssistGA прикреплен в документе к посту.
#ИнтеграцииGA #AI_for_analysts
Tg | ВК | Max«У меня болит горло третий день, к кому идти?»💬 AI:
«Вам нужен ЛОР»🔎 и дальше показывает врачей. 👉 Но в реальном продукте так делать технически криво. Потому что AI не должен управлять всем сценарием записи к врачу. Иначе он может превратиться в хаотичного диспетчера. ❗️ Это не автономный AI-агент. 👉 Как обычно разделяют ответственность: 🧠 AI помогает понять смысл сообщения пользователя. ⚙️ Backend+UI управляют бизнес-сценарием. 1️⃣ Что делает AI AI нужен там, где есть неопределённость. Пользователь может написать: ▫️ «Болит горло и температура» ▫️ «У ребёнка сыпь» ▫️ «Мне нужен врач по спине» ▫️ «У меня уже есть диагноз, к кому записаться?» То есть пользователь пишет не структурированные данные, а обычный человеческий текст. И вот здесь AI полезен. Он должен: ✅ понять намерение пользователя ✅ аккуратно уточнить симптомы ✅ не ставить диагноз ✅ не назначать лечение ✅ определить подходящую специализацию врача ✅ распознать потенциально опасные симптомы ✅ вернуть структурированное решение для Backend 📌 Например: 💬 Пользователь:
«Третий день болит горло, температура 37.8, заложен нос»💬 AI:
«По описанию вам может подойти консультация ЛОР-врача. Уточните, пожалуйста, есть ли сильная боль при глотании, налёт на миндалинах или затруднение дыхания?»После уточнения AI возвращает не просто текст, а структурированное решение:
{
"intent": "find_doctor",
"specialty": "ENT",
"specialtyName": "ЛОР",
"urgency": "planned",
"reason": "Пользователь описал боль в горле, насморк и температуру",
"nextStep": "ASK_CITY"
}
И всё.
На этом интеллектуальная часть закончилась.
2️⃣ Что делает автоматизация
Дальше не нужно заставлять AI «думать», какую кнопку показать.
Это уже обычный backend/UI-flow.
После того как AI определил специализацию, система ведёт пользователя по понятному сценарию:
1. Спросить город
2. Подтвердить город
3. Показать клиники в этом городе
4. Дать выбрать клинику ИЛИ сразу показать врачей по найденной специализации
5. Дать отсортировать врачей по рейтингу/стажу/ближайшему слоту
6. Перейти к записи
📌 Например:
AI определил:
{
"specialty": "ENT",
"specialtyName": "ЛОР"
}
Дальше Backend переводит чат в состояние ASK_CITY.
UI показывает:
«В каком городе хотите найти врача?»Пользователь выбирает город через виджет или пишет город текстом. После на UI можно спросить что для пользователя более важно: выбрать клинику или врача? Если клиника, то потом Backend переводит чат в состояние SELECT_CLINIC. UI показывает клиники. Потом Backend показывает врачей по параметрам: ▫️ город = Москва ▫️ клиника = выбранная клиника ▫️ специализация = ЛОР ▫️ сортировка = по рейтингу / ближайшему слоту И далее обычная автоматизация для записи к врачу, без AI. 👉 А если пользователь пишет текст вместо выбора в виджете? 📌 Например: Система ждёт выбор клиники, а пользователь пишет:
«А до скольки работает клиника на Ленина?»Тогда это уже событие clinic_info. Система должна: 1. понять, о какой клинике речь; 2. получить часы работы из справочника; 3. ответить пользователю; 4. не потерять текущий сценарий записи. 📌 Ещё пример. Система уже показала ЛОР-ов, а пользователь пишет:
«А можно лучше к терапевту?»Тогда это событие change_specialty. Система должна изменить специализацию и обновить список врачей. 👉 Почему не надо отдавать всё AI ❌ Сложнее контролировать бизнес-процесс ❌ Сложнее тестировать сценарии ❌ Сложнее обрабатывать ошибки ❌ Сложнее объяснить разработчикам, что именно должно происходить ❌ Сложнее защититься от странных пользовательских сообщений ❌ Сложнее обеспечить стабильный UX AI может хорошо понять смысл текста. Но запись к врачу — это уже не «магия нейросети», а обычный процесс, подлежащий автоматизации. В следующем посте покажу, как под такой сценарий написать системный промпт 🤝 #ИнтеграцииGA
{
"tool_calls": [{
"function": {
"name": "get_doctors",
"arguments": {
"specialty": "therapist",
"city": "Moscow"
}
}
}]
}
🔹 Шаг 3. AI Chat Service вызывает Сервис Врачей
GET /doctors?specialty=therapist&city=MoscowСервис Врачей возвращает список специалистов. 🔹 Шаг 4. Результат возвращается в Groq AI AI Chat Service передаёт ответ обратно в модель как tool result:
{
"role": "tool",
"content": [{
"doctor_id": "d-001",
"name": "Смирнова Елена Павловна",
"specialty": "therapist",
"rating": 4.9,
"clinic": "Поликлиника №7"
}]
}
🔹 Шаг 5. Groq AI формирует финальный ответ
Теперь у модели есть данные — она отвечает пользователю:
«Судя по симптомам, рекомендую терапевта. Нашел специалистов в вашем городе...»
👉 Каждый tool — это полноценный API-контракт
Для get_doctors нужно описать:
▫️ входные параметры и их типы
▫️ обязательные и необязательные поля
▫️ что возвращается в модель
▫️ обработку ошибок: что вернуть если врачей нет и т.п.
Если контракт описан плохо, AI получит неожиданный ответ и либо сломается, либо даст пользователю неверную информацию.
💡🧡 Чтобы понять как это работает, лучше всего попробовать на практике в Postman
В канале опубликовала практическое руководство по тестированию API Groq AI через через Postman.
В нём показано как работать с tool call и посмотреть что реально возвращает Groq.
🔗 руководство по исследованию API к AI через Postman
Tool calling — это интеграционный API-контракт, где на другой стороне не разработчик, а языковая модель.
С пониманием tool calling можно уверенно переходить к постановке интеграционной задачи с AI 🙌
#ИнтеграцииGA #MedAssistGA
Tg | ВК | Maxerrors, а не в HTTP-статусе. Пока не знаешь — теряешься.
Это только одна из неожиданностей при первом знакомстве с GraphQL. У gRPC тоже свои особенности.
👉 На этой неделе разбираем все три вида API руками в Postman — без теории в вакууме, сразу с практикой:
🧡 Интеграции по REST, GraphQL и gRPC: знакомство через Postman
🗓 4–7 июля
📹 Формат: запись, смотрите в удобное время
🔗 Зарегистрироваться
————————-—————
💎 Хотите системно разобраться с интеграциями по API и брокерам?
Новый поток «Интеграции систем» стартует на следующей неделе.
Впервые этим летом — максимальный набор подарков и скидок на предзаписи за всю историю GetAnalyst 🎁
🎓 Подробнее о программе
————————-—————
📱 Tg | 💙 ВК | 💬 Max