GetAnalyst - Навыки • Системный анализ • Бизнес-анализ – Telegram
GetAnalyst - Навыки • Системный анализ • Бизнес-анализ
19.5K subscribers
2.09K photos
74 videos
203 files
1.19K links
Разбор задач на проектирование систем 🚀 Канал для системных аналитиков, бизнес-аналитиков, тестировщиков и менеджеров проектов

Админ @getanalyst
Сайт https://getanalyst.ru
Чат t.me/getanalystchat
Начинающим в IT @getanalyststart

РКН №5013005196
Download Telegram
🔲 Про брокер Kafka 🔲

Kafka — это:

1. Брокер сообщений: Kafka позволяет приложениям обмениваться данными, как через очереди сообщений.

2. Платформа потоковой обработки: Она не только пересылает данные, но и позволяет обрабатывать их в реальном времени.

3. Хранилище событий: Kafka может сохранять данные длительное время, что делает её подходящей для анализа и аудита.


👉 Kafka состоит из следующих ключевых компонентов:

◽️ Producer (Производитель)
Приложение, которое отправляет данные (сообщения) в Kafka.
Пример: Сервис интернет-магазина отправляет данные о новых заказах.

◽️ Broker (Брокер)
Узел (сервер) в кластере Kafka, который обрабатывает сообщения.
В кластере может быть несколько брокеров, чтобы обеспечить масштабируемость и отказоустойчивость.

◽️ Topic (Топик)
Логическое место, куда отправляются сообщения.
Сообщения в топике упорядочены и распределены по разделам (partitions).

◽️ Partition (Раздел)
Каждый топик делится на разделы (partitions).
Сообщения в разделе упорядочены (по времени или оффсету).

◽️ Consumer (Потребитель)
Приложение, которое читает данные из топика.
Может быть несколько потребителей, объединённых в группы.

◽️ ZooKeeper (или KRaft)
Система координации, которая управляет метаданными Kafka. В новых версиях ZooKeeper заменён на собственный механизм KRaft.


👉 Особенности Kafka
Высокая производительность:
Kafka может обрабатывать миллионы сообщений в секунду.
Масштабируемость: Кластер Kafka можно масштабировать, добавляя новые брокеры.
Долговременное хранение:
Сообщения сохраняются в Kafka на заданное время или пока не удалены вручную.
Устойчивость к сбоям:
Репликация разделов (partitions) между брокерами обеспечивает отказоустойчивость.


#АрхитектураGA


Продолжение завтра 👇
👍4112🔥10
👉 Алгоритм работы Kafka

1. Producer отправляет сообщение в определённый топик, разделы которого распределены по брокерам.

2. Kafka сохраняет сообщение.
Сообщение записывается в раздел топика и сохраняется на диске.

3. Consumer подключается к Kafka, выбирает топик и читает сообщения из нужного раздела.



👉 Kafka поддерживает несколько моделей доставки:

+ Сообщение доставляется максимум один раз.

+ Сообщение может быть доставлено несколько раз (с гарантией доставки).

+ Сообщение доставляется ровно один раз.



👉 Примеры использования Kafka:

Финансовые транзакции

1. Банковские системы отправляют транзакции в Kafka.
2. Сервисы банка получают и обрабатывают транзакции в реальном времени с высокой степенью надежности.

Централизованная система уведомлений
1.
Разные сервисы системы отправляют уведомления в Kafka.
2. Отдельные сервис Уведомлений получает их для отправки email, SMS и push через интеграции.



👉 Проблемы Kafka
Нуждается в хорошей настройке (особенно при больших объёмах данных).
Не всегда оптимальна для задач с малым количеством данных.



👉 Почему выбирают
Kafka выделяется среди других решений по брокерам благодаря своей надёжности и способности обрабатывать огромные объёмы данных. Это делает её оптимальным выбором для высоконагруженных систем.


🔎 Я только начинаю знакомство с Kafka? Что делать?
Я бы рекомендовала начать с изучения официальной документации Kafka (не стесняемся пользоваться Google Translate или ChatGPT для переводов) или книги Kafka Streams в действии.


#АрхитектураGA
👍3110❤‍🔥3👏1😁1
GetAnalyst Kafka примеры использования.pdf
7 MB
👀 Пример использования Kafka в #FarmFreshGA 👀

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

Примеры:
1. SMS после регистрации пользователя
2. фоновые задачи после оплаты заказа


Алгоритмы с картинками в прикрепленном файле 🤝

#АрхитектураGA
👍265🔥2
📚 Моделирование архитектуры в нотации С4 📚

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

Но если мы работаем со сложной архитектурой, то в некоторых моментах будут вопросы, и автора "картины" можно понять по-разному.

Если в отрасли есть стандарты, лучше использовать их.
Поэтому предлагаю познакомиться с нотацией C4, где есть несколько уровней описания системы, которые помогают понять её 🙂

📚C4 - нотация моделирования архитектуры, которая упрощает визуализацию сложных систем.


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

👉 Контекст (C4 / Context) - система, её интеграции и пользователи.

👉 Контейнеры (C4 / Container) - независимые по коду приложения внутри системы, детализация главного прямоугольника c C4 / Context.

👉 Компоненты (C4 / Component) - модули кода и зависимости между ними, детализирует один из контейнеров с C4 / Container.

👉 Код (C4 / Code) - описывает реализацию кода для конкретных компонентов системы, детализирует C4 / Component.


Материалы для быстрого самостоятельного изучения C4:
🔗 Официальный сайт C4 (англ)
🔗 Шаблон с примером архитектуры в Miro
🔗 Нотация моделирования архитектуры С4 — примеры диаграмм и инструменты


#АрхитектураGA
👍31🔥853👏1
🔵 Sructurizr - один из основных инструментов, который позволяет создавать схемы архитетуры в нотации C4 через код 🔵

В этой статье я показывала примеры кода для одного из демо-проектов, которые ранее разбирались в канале GetAnalyst.
P.S. В нем уровень контейнеров для Backend у меня упрощен.

Сейчас я хочу предложить вам познакомиться с архитектурой в C4 и кодом Sructurizr для проекта #FarmFreshGA и посмотреть на пару уровней, согласно официальным требованиям нотации по визуализации архитектуры.


👉 Уровень Контекст (C4 / Context)
Система, её интеграции и пользователи.
✔️ Главный прямоугольник - наша система
✔️ Серые прямоугольники вокруг - внешние системы
✔️ Пользователи

👩‍💻 Полезна бизнес- и техническим специалистам.


👉 Контейнеры (C4 / Container)
Независимые по коду приложения внутри системы, детализация главного прямоугольника c C4 / Context.
✔️ Пользователи и внешние системы с уровня C4 / Context
✔️ Мобильные, веб- и десктоп приложения
✔️ Сервер-приложения: монолит, сервисы, микросервисы, API Gateway
✔️ Базы данных и файловые хранилища
✔️ Виды API
✔️ Технологии (языки программирования, СУБД, протоколы для API и др)
✔️ Базы данных и файловые хранилища
✔️ Очереди и брокеры
Схему удобнее использовать в адаптированном виде, когда на этом уровне не показывают сервисы и микросервисы, а переносят их на уровень глубже - C4 / Component. Иначе она очень перегружена.

👩‍💻 Полезна архитекторам, разработчикам и системным аналитикам.


Схемы в виде скрина из Structurizr прикрепрены к посту.

Исходный код для вставки в Structurizr:
🔗 ссылка на файл с кодом

#АрхитектураGA
Please open Telegram to view this post
VIEW IN TELEGRAM
👍254
💚 DDD и Event Storming - архитектура для системного аналитика 💚

В этом эпизоде мы рассказываем об архитектуре систем, а именно о двух мощных инструментах, которые могут существенно изменить подход системного аналитика к проектированию сложных систем: Domain Driven Design (DDD) и Event Storming.

Мы обсудим, почему эти подходы становятся всё более популярными, как их правильно применять и каких ошибок стоит избегать. Вы узнаете, как Event Storming помогает разложить сложные процессы на отдельные события, почему это важно для проектирования архитектуры и как использовать эти инструменты в новых проектах и при пересмотре существующих решений.

🔗 Сайт эпизода

Эпизод доступен в:
Apple Podcast
Яндекс.Музыка
YouTube
Telegram
Castbox
Spotify

Следите за подкастом, чтобы регулярно получать новый опыт и знания в системном анализе 😉
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥244👍2🤔1
Так сложилось, что день рождения у меня перед Новым годом. Ровно за неделю до него.

Новый год жизни, новый год в календаре. Это всегда время подведения итогов и постановки новых целей.

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

А вот в день рождения я почти всегда работаю.
Минимум 4 часа, а иногда и все 10.


Но в этом году я хочу сделать что-то иначе — устроить небольшой отпуск.
Не на 100%, но хотя бы его подобие.

Хочу отдохнуть и отпраздновать день рождения.
Хочу сначала набраться сил, а потом подводить итоги прошедшего года и ставить новые цели.
Мне нужна перезарядка. Я хочу войти в Новый год радостной и счастливой.
Только так я смогу сделать еще больше для себя и для вас.


Поэтому с 25 декабря по 8 января я в отпуске 🎄


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

Поэтому в ближайшие две недели буду работать на мощности х4, чтобы успеть всё до 25 декабря.
На предстоящей неделе будут три важных анонса.

И я буду очень рада, если вы поддержите мой отпуск ❤️🔥🦄 под постом.


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

Мы все хотим быть лучшей версией себя и успевать больше.
Но чтобы двигаться вперёд, иногда нужно остановиться и сделать паузу 🙌
Please open Telegram to view this post
VIEW IN TELEGRAM
107🔥35🦄20👍3🎉3😁1👌1
GetAnalyst_Интеграции_мини_книга_для_БА_и_СА.pdf
10.7 MB
Интеграция — это процесс объединения разных систем и приложений, чтобы они могли работать вместе, обмениваться данными и выполнять задачи, как единая система.


Пример:
Представим ресторан, где работают несколько отдельных систем:
🔹 для обработки заказов кухней и управления данными об остатках продуктов в ресторане,
🔹 для приема заказов внутри ресторана и проведения оплаты за них,
🔹 для приема заказов на доставку.


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

Получается, что без интеграций:

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

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

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

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


В общем много ручной работы, в которой может быть очень много ошибок 🥲

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

Основные способы интеграции:
▫️ API и Библиотеки
▫️ Очереди сообщений и брокеры
▫️ Файлы
▫️ Общая БД


📚 Подробнее о том, что такое интеграции и какие они бывают, рассказала в мини-книге с картинками и примерами.
Файл прикреплен к посту.

Загружайте и погружайтесь в тему глубже 🧩

#ИнтеграцииGA
25🔥14👍2
🥳 Новый проект #EventTasksGA: разбор интеграционной задачи для собеседований на СА 🥳

Интеграции - одна из самых актуальных и важных тем для системных аналитиков.

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

В этом месяце мы будем разбирать задачу, которая проверяет знания системного аналитика на все 100%: насколько он понимает интеграционные процессы и умеет работать с такими задачами.


🟢 Задача на Интеграцию:
Платформа для заказа организации мероприятий #EventTasksGA.

🟢 Процесс:
1. Клиент оформляет заказ.
2. Заказ, оформленный через сайт или мобильное приложение, обрабатывается менеджером в CRM-системе платформы.
3. Менеджер вручную создает проект в таск-трекере Todoist, где формируется стандартный набор задач в зависимости от тарифа и вида мероприятия.
4. После завершения мероприятия формируется акт выполненных работ.

🟢 Нужно автоматизировать:
1. При поступлении заказа автоматически создавать проект в Todoist и задачи по нему.
2. Автоматически назначать ответственного организатора за проект.
3. Передавать информацию о выполнении проекта в основную платформу, чтобы на ее основе формировался акт выполненных работ.


🟢 Задачи системного аналитика:
1. Спланировать работы по интеграции с системой Todoist.
2. Показать архитектуру решения.
3. Описать логику работы: автоматическое создание проекта и формирование акта выполненных работ.
4. Сформировать требования для REST API-методов, необходимых для интеграции.


🟢 Что дополнительно можно спросить у кандидата на собеседовании:
+ принципы проектирования БД,
+ понимание Backend и Frontend,
+ особенности использования различных API в проекте,
+ понимание принципов асинхронного взаимодействия.


Мы будем последовательно разбирать эту задачу в декабре!

Добро пожаловать в наш новый проект-собеседование!

Чтобы участвовать, достаточно быть подписанными на наш канал и ежедневно следить за обновлениями 😉

#ИнтеграцииGA
❤‍🔥4123🔥12👍10
🚀🎁 Открыта запись на Интеграции 🎁🚀

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

Поэтому от системных аналитиков требуют знания и опыт в интеграциях, особенно ведущие ИТ-компании рынка.

👉 В программе Интеграции систем мы на практике разбираем все детали проектирования: от анализа API-документации до создания структуры требований и постановок задач на разработчиков.

🗓 Старт предобучения: 25 декабря 2024
🗓 Первая онлайн-встреча: 15 января 2025


🔗 Подробности и регистрация

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

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

🎁 До 18 декабря дарим дополнительное обучение по БД+SQL в подарок + самые выгодные условия.

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

Хотите узнать больше? Пишите @getanalyst или заполняйте анкету предзаписи на сайте. Мы поможем оценить ваши текущие навыки, пришлем дополнительную информацию и ответим на все вопросы!
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍4
Интеграции_архитектура_в_С4_EventTasksGA_drawio_png_drawio.png
779.5 KB
🧐 Покажите схему архитектуры 🧐

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

Его можно услышать на собеседовании для Middle и выше аналитиков в следующих формулировках:
+ Покажите схему архитектуры для этой задачи.
+ Покажите как взаимодействуют системы.
+ Покажите схему компонентов.

Не зная, как решать задачи на интеграцию систем и работать с архитектурой, аналитик спрашивает: "А можно в UML?" и рисует диаграмму последовательности. Это не плохо, но такая диаграмма описывает алгоритм, а не архитектуру 🙄


👉 План действий для ответа на вопрос “покажите как взаимодействуют системы”:

1. Открыть draw.io (или другой удобный инструмент).


2. Знать что такое “
Компоненты системы
” и выделить их в предложенных требованиях.


3. Задать уточняющие вопросы при выделении компонентов.

+ Есть ли приложения, которые не показаны?
+ Архитектура проекта: монолит, сервисная или микросервисная?
+ Будем ли использовать брокеры для решения задачи?
+ Есть ли требования к внутренним API? Можно использовать REST?

4. Выбрать нотацию моделирования:

💎 CR (Cloud-Rectangle - “облака-прямоугольники”) - неофициальная нотация от GetAnalyst, которая помогает с помощью простых фигур показать все приложения и системы.
💎 C4 - официальная нотация для моделирования архитектуры систем.
Если начнёте рисовать в C4, то это может занять чуть больше времени, но ваш будущий работодатель будет в восторге (либо в ужасе, как я, когда кандидаты на моих собеседованиях пытаются применять C4 неверно).

5. Показать схему архитектуры.



Примеры для #EventTasksGA прикреплены к посту картинками 😎

#ИнтеграцииGA
👍20🔥10🤔32😱1
📄 API-документация внешней системы: просим сразу 📄

Вам дали задачу на интеграцию?
Первое, что нужно сделать, — запросить API-документацию внешней системы и доступы к ней.



👉 Шаг 1. Запрос документации
Аналитик запрашивает:
+ API-документацию (REST API, GraphQL, SOAP API и другие).
+ Комплекты SDK.
+ Другие документы и файлы, необходимые разработчикам для создания кода.

API-документация может быть передана вам в виде ссылке на Postman-коллекцию, Swagger-коллекцию, сайт разработчика, PDF-документ, Word-документ.

Она не всегда есть. И иногда надо "пытать" разработчиков внешней системы в переписке, чтобы получить описание методов API. Всё бывает.

Зачем это нужно?
Только с помощью API-документации мы можем понять как можно взаимодействовать с внешней системой: какие предлагаются методы, данные, процесс интеграции.


👉 Шаг 2. Запрос доступов
Сразу же вместе с документацией можно запрашивать доступы к внешней системе:
+ Тестовые и боевые URL.
+ Логины, пароли и/или токены.
+ Другие необходимые данные для аутентификации и авторизации запросов.

Зачем это нужно?
Документация не всегда отражает, как система работает на практике.
Тестирование API через инструменты как Postman позволяет:
+ Проверить как реально происходит обмен данными.
+ Понять процесс работы внешней системы и её реакцию на некорректные данные.
+ Более точно описать алгоритм взаимодействия.

Без тестовых доступов проверить API не получится.



👉 Подводя итоги:
В реальных проектах на интеграции всегда надо начинать работу с запроса API-документации.

Если в задании на собеседовании по интеграциям есть API-документация, изучите её, а если нет — уточните:
"Есть ли документация API, которая нужна для решения задачи?"

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

#ИнтеграцииGA
🔥28👍9💯63
⚡️ Интеграции по REST, GraphQL и gRPC: новый практический вебинар ⚡️

😂👍👍❤️👌😅😊😊😍😘

Хотя REST API давно стал стандартом для интеграций систем и вопросов на собеседованиях, всё чаще встречаются проекты с использованием GraphQL и gRPC, которые предлагают больше гибкости, скорости и возможностей.

И если вы еще неуверенно понимаете REST API, разобраться в более сложных API будет ещё труднее.

Чтобы передать вам практический опыт работы с API, мы готовим для вас уникальный вебинар:

⚡️ Интеграции по REST, GraphQL и gRPC: знакомство через Postman
🗓 18 Декабря, в 19:00 Мск (ср)
🔗 ЗАРЕГИСТРИРОВАТЬСЯ

За один вечер:
🟢 Поймёте что такое интеграции и как с ними работать.
🟢 Получите базовые знания по REST API, GraphQL и gRPC, и понимание, как применить их в работе системного аналитика
🟢 Освоите инструмент тестирования API Postman.
🟢 Самостоятельно будете проверять методы REST API, GraphQL и gRPC в прямом эфире.


Готовы освоить REST API, GraphQL и gRPC + Postman + Интеграции?


Регистрируйтесь и подключайтесь онлайн в следующую среду!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥329
Краткий чек-лист по работе с задачами на интеграции

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

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


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


Краткий чек-лист по работе с задачами на интеграции:

Получить вводные от заказчика
Выделить компоненты системы: внешние, внутренние
Найти API-документацию для каждого из внешних сервисов, а если необходимо, то и для внутренних
Нарисовать схему архитектуры — первое приближение
☑️ Описать процессы, которые нужно поддержать в системе
☑️ Найти по API-документации соответствующие процессам методы, добавить их в описание
☑️ Уточнить схему архитектуры (и далее постоянно актуализировать по ходу детального проектирования и постановок задач)
☑️ Получить доступы к API
☑️ Протестировать API своими силами или с помощью разработчиков
☑️ Сопоставить наборы данных, доработать/спроектировать БД нашей системы при необходимости, описать маппинг данных
☑️ Создать задачи в Jira и выстроить порядок разработки
☑️ Сделать детализацию постановок задач в Confluence на основе исследований, проведенных ранее


👉 Полный пошаговый план работы с задачами на интеграции доступен по этой ссылке.

#ИнтеграцииGA
307🤩7👍4
GetAnalyst_Как_читать_API_документацию_Инструкция.pdf
3.1 MB
👀 Как читать API-документацию: пошаговая инструкция с примерами 👀

В задании по интеграциям на собеседовании вам скорее всего не дадут API-документацию. Это нормально, что в тестовых дают несколько названий методов внешних систем в формате POST /users и всё. Время ограничено.

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

На примере интеграции по проекту #EventTasksGA, где нужно автоматически создавать задачи по организации нового мероприятия во внешней системе Todoist, разберёмся, как анализировать API-документацию.

API-документация для анализа:
🔗 https://developer.todoist.com/rest/v2/#getting-started

Действия аналитика:

Шаг 1. Найти и посмотреть оглавление
Шаг 2. Авторизация и аутентификация
Шаг 3. Тестовые доступы
Шаг 4. Рекомендации по использованию
Шаг 5. Общие требования к обработке ошибок
Шаг 6. Список методов для интеграции

Подробный разбор шагов с примеров в прикрепленной мини-книге 🤝

#ИнтеграцииGA
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥277👍3😁3
🔐 Виды авторизации в API: что нужно знать? 🔐

Авторизация в API помогает убедиться, что только те, кто имеет соответствующие права, могут получить доступ к данным или функциям системы.


Зачем нужна авторизация?

1️⃣ Защищает данные от утечек данных.

2️⃣ Исключает несанкционированный доступ к API, из-за которого могут украсть данные или записать “грязные” данные в систему.

3️⃣ Разграничивает права доступа (например, чтение данных vs редактирование).

4️⃣ Помогает отслеживать действия каждого клиента API.


Основные виды авторизации разобрала в слайдах к посту:

👍 API Key
👌 Basic Auth
❤️ Bearer Token
🦄 JWT (JSON Web Token)
🔥 OAuth 2.0


А какие способы авторизации используются в ваших проектах и интеграциях?
Делитесь в комментариях и ставьте реакции, соответствующие способу! 😊

#ИнтеграцииGA
43🔥20👍9🦄3👌2