🏠 Схема архитектуры - компоненты системы 🏠
Компонент — это отдельная, функционально законченная часть системы, которая выполняет определённые задачи и обладает собственным интерфейсом для взаимодействия с другими частями системы.
Компоненты выделяют в процессе проектирования системы и отражают на схеме архитектуры.
Компоненты можно поделить на группы. Рассказываю на примере с системой заказа такси #RideFlow 🚕:
✅ Frontend / UI - приложения с пользовательским интерфейсом.
✔ iOS для клиента такси
✔ Android для клиента такси
✔ iOS водителя
✔ Android водителя
✔ Веб-приложение диспетчера
✔ Веб-приложение администратора
✅ Backend / API - серверные приложения со своей логикой и API для взаимодействия с ними. Сюда относятся сервисы, микросервисы, API-Gateway и другие.
✔ Backend- приложений с отдельными REST API для приложений клиентов, водителей, диспетчеров и админов, а также WebSocket для обеспечения работы онлайн-чатов
✅ Внешние системы, с которыми интеграция
✔ Сервис уведомлений: email, SMS
✔ Сервис push-уведомлений
✔ Интернет-эквайринг для приема оплат от клиентов
✔ Банковский API для юрлиц для выплат водителям
✅ БД и ФХ - базы данных и файловые хранилища.
✔ БД основная, PostgreSQL (чтобы знать, с какими типами данных имеем дело)
✔ ФХ для хранения PDF-документов, например, по выплатам водителям
✅Системы обмена сообщениями - очереди MQ / брокеры сообщений, такие как RabbitMQ, Kafka и другие.
✔ Отправка уведомлений, RabbitMQ
✔ Выплаты водителям, Kafka
Схема архитектуры может быть визуализирована одним из основных способов:
✔️Без нотации - с использованием простых фигур и стрелок (понятность ценнее нотации).
✔️Нотация C4 - идеально, когда нужна чисто техническая архитектура.
✔️Archimate - больше связана с бизнес-контекстом.
На картинке к посту я показала вариант архитектуры системы такси без нотации - простые фигуры.
#АрхитектураGA
Компонент — это отдельная, функционально законченная часть системы, которая выполняет определённые задачи и обладает собственным интерфейсом для взаимодействия с другими частями системы.
Компоненты выделяют в процессе проектирования системы и отражают на схеме архитектуры.
Компоненты можно поделить на группы. Рассказываю на примере с системой заказа такси #RideFlow 🚕:
✅ Frontend / UI - приложения с пользовательским интерфейсом.
✔ iOS для клиента такси
✔ Android для клиента такси
✔ iOS водителя
✔ Android водителя
✔ Веб-приложение диспетчера
✔ Веб-приложение администратора
✅ Backend / API - серверные приложения со своей логикой и API для взаимодействия с ними. Сюда относятся сервисы, микросервисы, API-Gateway и другие.
✔ Backend- приложений с отдельными REST API для приложений клиентов, водителей, диспетчеров и админов, а также WebSocket для обеспечения работы онлайн-чатов
✅ Внешние системы, с которыми интеграция
✔ Сервис уведомлений: email, SMS
✔ Сервис push-уведомлений
✔ Интернет-эквайринг для приема оплат от клиентов
✔ Банковский API для юрлиц для выплат водителям
✅ БД и ФХ - базы данных и файловые хранилища.
✔ БД основная, PostgreSQL (чтобы знать, с какими типами данных имеем дело)
✔ ФХ для хранения PDF-документов, например, по выплатам водителям
✅Системы обмена сообщениями - очереди MQ / брокеры сообщений, такие как RabbitMQ, Kafka и другие.
✔ Отправка уведомлений, RabbitMQ
✔ Выплаты водителям, Kafka
Схема архитектуры может быть визуализирована одним из основных способов:
✔️Без нотации - с использованием простых фигур и стрелок (понятность ценнее нотации).
✔️Нотация C4 - идеально, когда нужна чисто техническая архитектура.
✔️Archimate - больше связана с бизнес-контекстом.
На картинке к посту я показала вариант архитектуры системы такси без нотации - простые фигуры.
#АрхитектураGA
👍19❤6🔥5
☀️ Про лето 2024: о бесконечном совершенствовании (и внутреннем самозванце) ☀️
Осталось еще 4 субботы до осени, но уже сейчас хочется поделиться с вами впечатлениями о лете.
Когда весной мы завершили работу над программой по архитектуре, то у меня был восторг. Получилось всё настолько структурировано и полно, что мой перфекционист ликовал!
И я думала, что летом возьму небольшой перерыв от новых разработок. Но…
Я все равно взялась обновлять материалы: куда-то больше фокуса на онлайн, добавить еще практики, срезать теорию из онлайна и отправить запись в теоретический модуль, что-то новое узнала сама - надо добавить!
Улучшение - бесконечный процесс.
Мне кажется это общая особенность системных аналитиков.
Синдром самозванца постоянно говорит “тут можно еще лучше”🌞
В общем, это предыстория к тому, как я решилаотдохнуть летом влезть и улучшить еще раз вообще все программы.
Зачем, если и так хорошо и прекрасная обратная связь? Если я могу сделать еще лучше, то буду делать.
Например, на этой неделе для группы по интеграциям дала расширенную практику Postman. В онлайне показала как развернуть тестовый бэкенд и без кода сделать эндпоинт REST API, чтобы проверить работу Webhook-ов, глядя в логи сервера 😳
Я каждый поток обновляю материалы, по всем программам. Но после архитектуры и её идеальности я просто не удержалась от глобальных изменений и улучшений.
Отдохну осенью, наверное 😃🍁
Моя любовь к системному анализу и передаче знаний неисчерпаема. Порой то, что я делаю с её поддержкой, вызывает шок. Ну и ребята со своими радостями от офферов в ЛС мотивации добавляют 🙌
Любимая работа - это важно. С ней есть чувство, что ты не работаешь)) Но перерывы все же нужны.
Так что желаю нам прекрасных выходных, давайте заряжаться силами на новую неделю 🔋
Осталось еще 4 субботы до осени, но уже сейчас хочется поделиться с вами впечатлениями о лете.
Когда весной мы завершили работу над программой по архитектуре, то у меня был восторг. Получилось всё настолько структурировано и полно, что мой перфекционист ликовал!
И я думала, что летом возьму небольшой перерыв от новых разработок. Но…
Я все равно взялась обновлять материалы: куда-то больше фокуса на онлайн, добавить еще практики, срезать теорию из онлайна и отправить запись в теоретический модуль, что-то новое узнала сама - надо добавить!
Улучшение - бесконечный процесс.
Мне кажется это общая особенность системных аналитиков.
Синдром самозванца постоянно говорит “тут можно еще лучше”🌞
В общем, это предыстория к тому, как я решила
Зачем, если и так хорошо и прекрасная обратная связь? Если я могу сделать еще лучше, то буду делать.
Например, на этой неделе для группы по интеграциям дала расширенную практику Postman. В онлайне показала как развернуть тестовый бэкенд и без кода сделать эндпоинт REST API, чтобы проверить работу Webhook-ов, глядя в логи сервера 😳
Я каждый поток обновляю материалы, по всем программам. Но после архитектуры и её идеальности я просто не удержалась от глобальных изменений и улучшений.
Отдохну осенью, наверное 😃🍁
Моя любовь к системному анализу и передаче знаний неисчерпаема. Порой то, что я делаю с её поддержкой, вызывает шок. Ну и ребята со своими радостями от офферов в ЛС мотивации добавляют 🙌
Любимая работа - это важно. С ней есть чувство, что ты не работаешь)) Но перерывы все же нужны.
Так что желаю нам прекрасных выходных, давайте заряжаться силами на новую неделю 🔋
❤🔥18💯10👍8❤3
Помните, как в детстве всё было просто.
Подошёл в песочнице и сказал: “Привет! Меня зовут Настя. Давай дружить.”
И всё, вы друзья🤩
Нам, взрослым, найти себе друга уже не так просто!
Многие айтишники из-за большой нагрузки и удалённой работы всё чаще проводят время дома😔
При этом есть огромное желание быть в тусовке, общаться с коллегами в неформальной обстановке, знакомиться с единомышленниками, да и просто находить приятелей, с кем можно выпить кофе и поболтать о жизни.
В картинках на основе опыта наших спикеров мы подобрали разные варианты, где можно познакомиться и найти для себя друга, единомышленника, доброго коллегу или даже наставника😃
P.S. Кстати, друзья GetAnalyst, с которыми я уже записала два эпизода подкаста (11 и 13-й), организуют посиделки для аналитиков в Питере 22 августа, 19:00 (чт). Рекомендую посетить, если вы ищите ИТ-нетворкинг и новых друзей 😉
Подошёл в песочнице и сказал: “Привет! Меня зовут Настя. Давай дружить.”
И всё, вы друзья🤩
Нам, взрослым, найти себе друга уже не так просто!
Многие айтишники из-за большой нагрузки и удалённой работы всё чаще проводят время дома😔
При этом есть огромное желание быть в тусовке, общаться с коллегами в неформальной обстановке, знакомиться с единомышленниками, да и просто находить приятелей, с кем можно выпить кофе и поболтать о жизни.
В картинках на основе опыта наших спикеров мы подобрали разные варианты, где можно познакомиться и найти для себя друга, единомышленника, доброго коллегу или даже наставника😃
P.S. Кстати, друзья GetAnalyst, с которыми я уже записала два эпизода подкаста (11 и 13-й), организуют посиделки для аналитиков в Питере 22 августа, 19:00 (чт). Рекомендую посетить, если вы ищите ИТ-нетворкинг и новых друзей 😉
👍18❤5🤣4
📚 Нотация С4 для описания архитектуры системы 📚
Можешь показать схему архитектуры системы без нотации, в виде прямоугольников и стрелочек? Отлично! Первый шаг к пониманию работы системы сделан. Но если мы работаем со сложной архитектурой, то в некоторых моментах будут вопросы, и автора картины можно понять по-разному.
Если в отрасли есть стандарты, лучше использовать их.
Поэтому предлагаю познакомиться с нотацией C4, где есть несколько уровней описания системы, которые помогают понять её 🙂
📚C4 - нотация моделирования архитектуры, которая упрощает визуализацию сложных систем.
Она помогает архитекторам, разработчикам и системным аналитикам представлять архитектуру в виде четырех абстракций:
👉 Контекст (C4 / Context) - система, её интеграции и пользователи.
👉 Контейнеры (C4 / Container) - независимые по коду приложения внутри системы, детализация главного прямоугольника c C4 / Context.
👉 Компоненты (C4 / Component) - модули кода и зависимости между ними, детализирует один из контейнеров с C4 / Container.
👉 Код (C4 / Code) - описывает реализацию кода для конкретных компонентов системы, детализирует C4 / Component.
Материалы для самостоятельного изучения C4:
🔗 Официальный сайт C4 (англ)
🔗 Шаблон с примером архитектуры в Miro
🔗 Нотация моделирования архитектуры С4 — примеры диаграмм и инструменты
Сохраняйте материалы в избранное, чтобы не терять 💾
#АрхитектураGA
Можешь показать схему архитектуры системы без нотации, в виде прямоугольников и стрелочек? Отлично! Первый шаг к пониманию работы системы сделан. Но если мы работаем со сложной архитектурой, то в некоторых моментах будут вопросы, и автора картины можно понять по-разному.
Если в отрасли есть стандарты, лучше использовать их.
Поэтому предлагаю познакомиться с нотацией C4, где есть несколько уровней описания системы, которые помогают понять её 🙂
📚C4 - нотация моделирования архитектуры, которая упрощает визуализацию сложных систем.
Она помогает архитекторам, разработчикам и системным аналитикам представлять архитектуру в виде четырех абстракций:
👉 Контекст (C4 / Context) - система, её интеграции и пользователи.
👉 Контейнеры (C4 / Container) - независимые по коду приложения внутри системы, детализация главного прямоугольника c C4 / Context.
👉 Компоненты (C4 / Component) - модули кода и зависимости между ними, детализирует один из контейнеров с C4 / Container.
👉 Код (C4 / Code) - описывает реализацию кода для конкретных компонентов системы, детализирует C4 / Component.
Материалы для самостоятельного изучения C4:
🔗 Официальный сайт C4 (англ)
🔗 Шаблон с примером архитектуры в Miro
🔗 Нотация моделирования архитектуры С4 — примеры диаграмм и инструменты
Сохраняйте материалы в избранное, чтобы не терять 💾
#АрхитектураGA
🔥26🥰6👌3💯3👍2❤1❤🔥1
📚 Нотация С4 - подробнее об уровнях моделирования 📚
Если вы решили самостоятельно разобраться с нотацией моделирования архитектуры C4, то настоятельно рекомендую идти на официальный сайт нотации и смотреть всю документацию и примеры там.
Есть нюансы:
1. Там всё на английском. Гугл переводчик или автоперевод страниц поможет, но иногда переводится криво.
2. Разобран всего один пример.
3. Нет понимания, что нужно СА, а что нет.
Поэтому я даю больше материалов в нашем сообществе 🙌
Детализация уровней моделирования в C4:
👉 Контекст (C4 / Context)
Система, её интеграции и пользователи.
✔️ Главный прямоугольник - наша система
✔️ Серые прямоугольники вокруг - внешние системы
✔️ Пользователи
👩💻 Полезна бизнес- и техническим специалистам.
👉 Контейнеры (C4 / Container)
Независимые по коду приложения внутри системы, детализация главного прямоугольника c C4 / Context.
✔️ Пользователи и внешние системы с уровня C4 / Context
✔️ Мобильные, веб- и десктоп приложения
✔️ Сервер-приложения: монолит, сервисы, микросервисы, API Gateway
✔️ Базы данных и файловые хранилища
✔️ Виды API
✔️ Технологии (языки программирования, СУБД, протоколы для API и др)
✔️ Базы данных и файловые хранилища
✔️ Очереди и брокеры
Схему удобнее использовать в адаптированном виде, когда на этом уровне не показывают сервисы и микросервисы, а переносят их на уровень глубже - C4 / Component. Иначе она очень перегружена.
👩💻 Полезна архитекторам, разработчикам и системным аналитикам.
Разбор уровней Компонентов и Кода далее 👇
#АрхитектураGA
Если вы решили самостоятельно разобраться с нотацией моделирования архитектуры C4, то настоятельно рекомендую идти на официальный сайт нотации и смотреть всю документацию и примеры там.
Есть нюансы:
1. Там всё на английском. Гугл переводчик или автоперевод страниц поможет, но иногда переводится криво.
2. Разобран всего один пример.
3. Нет понимания, что нужно СА, а что нет.
Поэтому я даю больше материалов в нашем сообществе 🙌
Детализация уровней моделирования в C4:
👉 Контекст (C4 / Context)
Система, её интеграции и пользователи.
✔️ Главный прямоугольник - наша система
✔️ Серые прямоугольники вокруг - внешние системы
✔️ Пользователи
👩💻 Полезна бизнес- и техническим специалистам.
👉 Контейнеры (C4 / Container)
Независимые по коду приложения внутри системы, детализация главного прямоугольника c C4 / Context.
✔️ Пользователи и внешние системы с уровня C4 / Context
✔️ Мобильные, веб- и десктоп приложения
✔️ Сервер-приложения: монолит, сервисы, микросервисы, API Gateway
✔️ Базы данных и файловые хранилища
✔️ Виды API
✔️ Технологии (языки программирования, СУБД, протоколы для API и др)
✔️ Базы данных и файловые хранилища
✔️ Очереди и брокеры
Схему удобнее использовать в адаптированном виде, когда на этом уровне не показывают сервисы и микросервисы, а переносят их на уровень глубже - C4 / Component. Иначе она очень перегружена.
👩💻 Полезна архитекторам, разработчикам и системным аналитикам.
Разбор уровней Компонентов и Кода далее 👇
#АрхитектураGA
👍22❤🔥5❤3🔥2
📚 Нотация С4 - подробнее об уровнях моделирования 📚
Про два главных уровня - Контекст и Контейнеры рассказала выше ☝️
Продолжаем:
👉 Компоненты (C4 / Component)
Модули кода и зависимости между ними, детализирует один из контейнеров с C4 / Container.
Показывает что внутри веб-приложения, мобильного или сервер-приложения.
В адаптированном виде здесь можно показать детали бэкенд: сервисы, микросервисы, базы данных, очереди и т.д.
👩💻 Полезна архитекторам, разработчикам и в некоторых случаях системным аналитикам, когда описывают модули монолита, или на этот уровень выносим сервисы и микросервисы.
👉 Код (C4 / Code)
Описывает реализацию кода для конкретных компонентов системы, детализирует C4 / Component.
Аналог диаграммы классов в UML, если вы её когда-то использовали (я только в университете).
👩💻 Полезна… никому 🙃 или программистам, когда обсуждают, как лучше организовать код.
Автор это признает и не рекомендует держать схему в составе документации проекта, т.к. она быстро устаревает и требует много лишних сил на актуализацию.
Цитата с официального сайта
C4 помогает создать целостное представление системы на разных уровнях, начиная с общего обзора и заканчивая деталями реализации.
Схема C4 полезна для большинства проектов, особенно, где есть несколько пользовательских приложений, несколько сервер-приложений или интеграции.
#АрхитектураGA
Про два главных уровня - Контекст и Контейнеры рассказала выше ☝️
Продолжаем:
👉 Компоненты (C4 / Component)
Модули кода и зависимости между ними, детализирует один из контейнеров с C4 / Container.
Показывает что внутри веб-приложения, мобильного или сервер-приложения.
В адаптированном виде здесь можно показать детали бэкенд: сервисы, микросервисы, базы данных, очереди и т.д.
👩💻 Полезна архитекторам, разработчикам и в некоторых случаях системным аналитикам, когда описывают модули монолита, или на этот уровень выносим сервисы и микросервисы.
👉 Код (C4 / Code)
Описывает реализацию кода для конкретных компонентов системы, детализирует C4 / Component.
Аналог диаграммы классов в UML, если вы её когда-то использовали (я только в университете).
👩💻 Полезна… никому 🙃 или программистам, когда обсуждают, как лучше организовать код.
Автор это признает и не рекомендует держать схему в составе документации проекта, т.к. она быстро устаревает и требует много лишних сил на актуализацию.
Цитата с официального сайта
Оригинал:
Recommended for most teams: No, particularly for long-lived documentation because most IDEs can generate this level of detail on demand.
Перевод:
Рекомендуется для большинства команд: Нет, особенно для долговременной документации, поскольку большинство инструментов разработки могут генерировать этот уровень детализации по запросу.
C4 помогает создать целостное представление системы на разных уровнях, начиная с общего обзора и заканчивая деталями реализации.
Схема C4 полезна для большинства проектов, особенно, где есть несколько пользовательских приложений, несколько сервер-приложений или интеграции.
#АрхитектураGA
👍17❤🔥5❤3
GetAnalyst Гайд по нотации C4.pdf
10.8 MB
⭐️ Гайд по C4 с примерами [Моделирование архитектуры для системных аналитиков] ⭐️
Нотация C4 - одна из самых удобных для визуализации архитектуры информационных систем. Разработана в 2011 году Саймоном Брауном, системным архитектором.
C4 - это 4 уровня детализации:
⭐️ Context
⭐️ Container
⭐️ Component
⭐️ Code
Преимущества по сравнению с нотацией Archimate: более техническая, меньше бизнес-контекста.
Все подробности собрала в прикрепленном к посту гайду.
В нём больше наглядных примеров, инструменты для C4 и полезные ссылки! Сохраняйте и пользуйтесь ❤️
#АрхитектураGA
Нотация C4 - одна из самых удобных для визуализации архитектуры информационных систем. Разработана в 2011 году Саймоном Брауном, системным архитектором.
C4 - это 4 уровня детализации:
⭐️ Context
⭐️ Container
⭐️ Component
⭐️ Code
Преимущества по сравнению с нотацией Archimate: более техническая, меньше бизнес-контекста.
Все подробности собрала в прикрепленном к посту гайду.
В нём больше наглядных примеров, инструменты для C4 и полезные ссылки! Сохраняйте и пользуйтесь ❤️
#АрхитектураGA
🔥20❤3🤔2🥰1
💫 Архитектура в C4 / Context - проект RideFlow 💫
Самый верхний уровень C4 / Context показывает систему и её окружение.
Проектируя его, мы не заморачиваемся с тем, какой подход к архитектуре будет выбран — будь то монолит, сервис-ориентированная архитектура или микросервисы.
Все, что показывает C4 / Context:
1. Пользователей, которые работают с системой.
2. Интеграции с внешними системами.
Основное преимущество этого уровня заключается в его наглядности и доступности как для IT-команды, так и для бизнес-стейкхолдеров. Его может разработать как системный, так и бизнес-аналитик.
Понимание пользователей критично для определения ролевой модели системы, управления доступами и выявления потенциальных ограничений. Этот уровень также позволяет предположить, какие приложения могут быть важны для пользователей.
А интеграции это то, что нужно знать о любой системе. Это вся техническая суть C4 / Context.
Интеграции влияют на:
+ Работу отдельных бизнес-процессов в системе и синхронизацию данных по ним, а также на работу с данными в системе в целом.
+ Безопасность, так как каждая точка интеграции в системе это потенциальное место для атаки.
+ Масштабируемость, так как в системе одновременно может работать большое количество пользователей и важно понимать, как много одновременных запросов от нашей системы сможет обрабатывать внешняя система.
Пример схемы проекта по заказу такси #RideFlow поможет нам понять, как реализуется C4 / Context на практике. См. картинку к посту.
Вопросы по схеме? Пишите комментарии.
Всё понятно и готовы идти дальше? Ставьте 👍
#АрхитектураGA
Самый верхний уровень C4 / Context показывает систему и её окружение.
Проектируя его, мы не заморачиваемся с тем, какой подход к архитектуре будет выбран — будь то монолит, сервис-ориентированная архитектура или микросервисы.
Все, что показывает C4 / Context:
1. Пользователей, которые работают с системой.
2. Интеграции с внешними системами.
Основное преимущество этого уровня заключается в его наглядности и доступности как для IT-команды, так и для бизнес-стейкхолдеров. Его может разработать как системный, так и бизнес-аналитик.
Понимание пользователей критично для определения ролевой модели системы, управления доступами и выявления потенциальных ограничений. Этот уровень также позволяет предположить, какие приложения могут быть важны для пользователей.
А интеграции это то, что нужно знать о любой системе. Это вся техническая суть C4 / Context.
Интеграции влияют на:
+ Работу отдельных бизнес-процессов в системе и синхронизацию данных по ним, а также на работу с данными в системе в целом.
+ Безопасность, так как каждая точка интеграции в системе это потенциальное место для атаки.
+ Масштабируемость, так как в системе одновременно может работать большое количество пользователей и важно понимать, как много одновременных запросов от нашей системы сможет обрабатывать внешняя система.
Пример схемы проекта по заказу такси #RideFlow поможет нам понять, как реализуется C4 / Context на практике. См. картинку к посту.
Вопросы по схеме? Пишите комментарии.
Всё понятно и готовы идти дальше? Ставьте 👍
#АрхитектураGA
👍20❤7🤔1
🌱 Архитектура для аналитиков: опыт работы и рост здесь 🙌
Погружение в архитектуру систем и опыт работы в сложных проектах с микросервисной архитектурой - точки роста для опытных системных аналитиков.
Поэтому, по вашей обратной связи, в этом году я запустила новую практическую программу для системных аналитиков, которая позволяет расширить экспертизу в архитектуре систем.
🌟 Проектирование архитектуры
🌟 Старт предобучения 29 августа 2024
🌟 Подробности о программе и запись
🎁 С 14 до 22 августа открыта предзапись на специальных условиях + дополнительное обучение по REST API в подарок.
В архитектуре я проявила максимальные занудство и дотошность. Собирала не только свой опыт, но и подключила других экспертов.
Один из важных отзывов, повторяемый разными словами в чатах:
Программа подойдёт только для опытных системных аналитиков (Middle и выше), кто уже работал с интеграциями, хочет расти в Senior внутри компании, или переходить в интересные и сложные проекты.
Навыки работы с архитектурой, очередями, API, взаимодействием систем в реальном времени, которые аналитики получили в ходе работы, уже сейчас помогают им:
+ проходить аттестацию в компании на повышение грейда,
+ менять работу и выбирать офферы по душе,
+ получать повышения.
Создавать IT-таланты в Системном Анализе - цель GetAnalyst.
И Архитектура - самая сложная, но самая интересная часть в этом пути 🙌
2024 - год больших и крутых перемен ♥️ Давайте идти к ним вместе!
Погружение в архитектуру систем и опыт работы в сложных проектах с микросервисной архитектурой - точки роста для опытных системных аналитиков.
Поэтому, по вашей обратной связи, в этом году я запустила новую практическую программу для системных аналитиков, которая позволяет расширить экспертизу в архитектуре систем.
🌟 Проектирование архитектуры
🌟 Старт предобучения 29 августа 2024
🌟 Подробности о программе и запись
🎁 С 14 до 22 августа открыта предзапись на специальных условиях + дополнительное обучение по REST API в подарок.
В архитектуре я проявила максимальные занудство и дотошность. Собирала не только свой опыт, но и подключила других экспертов.
Один из важных отзывов, повторяемый разными словами в чатах:
“Есть возможность попрактиковаться в проектировании архитектурного решения, выйти за пределы "пузыря" моей работы и налаженных процессов на работе”
Программа подойдёт только для опытных системных аналитиков (Middle и выше), кто уже работал с интеграциями, хочет расти в Senior внутри компании, или переходить в интересные и сложные проекты.
Навыки работы с архитектурой, очередями, API, взаимодействием систем в реальном времени, которые аналитики получили в ходе работы, уже сейчас помогают им:
+ проходить аттестацию в компании на повышение грейда,
+ менять работу и выбирать офферы по душе,
+ получать повышения.
Создавать IT-таланты в Системном Анализе - цель GetAnalyst.
И Архитектура - самая сложная, но самая интересная часть в этом пути 🙌
2024 - год больших и крутых перемен ♥️ Давайте идти к ним вместе!
❤16👍6👎4👌1
🔸 Монолит, Сервисная и Микросервисная архитектура - сравнение 🔸
Для системных аналитиков важно не только знать, какие виды архитектур существуют, но и понимать их ключевые отличия и области применения. В этом посте мы познакомимся с наиболее распространенными видами архитектуры.
🔸 Монолитная архитектура
В монолитной архитектуре все компоненты приложения находятся в одной кодовой базе и работают как единое целое. Это обеспечивает простоту разработки и релизов системы.
Хорошо подходит для стартапов и небольших проектов.
БД:
Обычно используется одна БД, что упрощает взаимодействие между различными частями приложения, но может стать узким местом при масштабировании.
Внутренние интеграции:
Все компоненты взаимодействуют только на уровне кода. Интеграции между ними по API и другими способами не нужны. Внутренние интеграции могут быть только при наличии очередей или брокеров сообщений.
🔸 Сервисная архитектура SOA (Service-Oriented Architecture)
SOA разделяет функциональность на отдельные сервисы, которые взаимодействуют между собой через сетевые вызовы - по API, через шину данных (ESB) или другими способами.
Идеально подходит для средних и крупных проектов, где важно обеспечивать высокий уровень доступности или производительности для отдельных частей системы.
Например, в Интернет-магазине сервис каталога и сервис заказов можно поделить, чтобы инсталлировать на сервере 10 копий сервиса каталога, но всего 3 копии сервиса заказов, т.к. до заказа товаров доходит меньше пользователей чем тех, кто просто смотрит каталог.
БД:
Каждый сервис может использовать свою собственную БД, что облегчает масштабирование и изоляцию сервисов, но также несколько сервисов могут использовать одну БД, что отличает SOA от MSA.
Внутренние интеграции:
Сервисы интегрируются через API, что упрощает интеграцию. Могут использовать шину - ESB.
#АрхитектураGA
Продолжение 👇
Для системных аналитиков важно не только знать, какие виды архитектур существуют, но и понимать их ключевые отличия и области применения. В этом посте мы познакомимся с наиболее распространенными видами архитектуры.
🔸 Монолитная архитектура
В монолитной архитектуре все компоненты приложения находятся в одной кодовой базе и работают как единое целое. Это обеспечивает простоту разработки и релизов системы.
Хорошо подходит для стартапов и небольших проектов.
БД:
Обычно используется одна БД, что упрощает взаимодействие между различными частями приложения, но может стать узким местом при масштабировании.
Внутренние интеграции:
Все компоненты взаимодействуют только на уровне кода. Интеграции между ними по API и другими способами не нужны. Внутренние интеграции могут быть только при наличии очередей или брокеров сообщений.
🔸 Сервисная архитектура SOA (Service-Oriented Architecture)
SOA разделяет функциональность на отдельные сервисы, которые взаимодействуют между собой через сетевые вызовы - по API, через шину данных (ESB) или другими способами.
Идеально подходит для средних и крупных проектов, где важно обеспечивать высокий уровень доступности или производительности для отдельных частей системы.
Например, в Интернет-магазине сервис каталога и сервис заказов можно поделить, чтобы инсталлировать на сервере 10 копий сервиса каталога, но всего 3 копии сервиса заказов, т.к. до заказа товаров доходит меньше пользователей чем тех, кто просто смотрит каталог.
БД:
Каждый сервис может использовать свою собственную БД, что облегчает масштабирование и изоляцию сервисов, но также несколько сервисов могут использовать одну БД, что отличает SOA от MSA.
Внутренние интеграции:
Сервисы интегрируются через API, что упрощает интеграцию. Могут использовать шину - ESB.
#АрхитектураGA
Продолжение 👇
👍15❤5👎2
🔸 Микросервисная архитектура MSA (Microservice Architecture)
MSA состоит из множества маленьких, независимо разрабатываемых и развертываемых сервисов, каждый из которых выполняет одну бизнес-функцию.
Микросервисы меньше по функциональности чем сервисы. Это обеспечивает высокий уровень масштабируемости и гибкости, но из-за большого количества сервисов такие проекты дорого сопровождать, в частности из-за необходимости опытной и высоко-квалифицированной команды.
Подход эффективен для больших и быстро-развивающихся приложений, где требуется быстрая разработка и частые обновления.
БД:
Каждый микросервис, в идеале, управляет своей собственной БД, что позволяет избежать зависимостей и упрощает масштабирование каждого сервиса по отдельности.
Внутренние интеграции:
Взаимодействие между микросервисами часто строится по API на легких протоколах, таких как REST или gRPC, и может включать очереди и брокеры сообщений для асинхронной коммуникации.
👉 Выбор архитектуры проекта зависит от специфики и требований к системе.
На практике часто используют либо смесь подходов SOA и MSA, либо начинают проекты с монолита и через 3-5 лет задумываются о переезде на SOA в качестве первого этапа деления монолита на микросервисы.
🧐 Основная рекомендация опытных архитекторов:
Ключевые подходы к проектированию архитектуры фиксируются в проектной документации. И это не только схемы архитектуры, но и правила, по которым продолжать развивать проект всей команде.
Понимание ключевых аспектов каждого подхода поможет аналитикам определить наиболее подходящую архитектуру для конкретного случая, а также принимать активное и осознанное участие в обсуждениях с разработчиками и архитекторами 🌱
#АрхитектураGA
MSA состоит из множества маленьких, независимо разрабатываемых и развертываемых сервисов, каждый из которых выполняет одну бизнес-функцию.
Микросервисы меньше по функциональности чем сервисы. Это обеспечивает высокий уровень масштабируемости и гибкости, но из-за большого количества сервисов такие проекты дорого сопровождать, в частности из-за необходимости опытной и высоко-квалифицированной команды.
Подход эффективен для больших и быстро-развивающихся приложений, где требуется быстрая разработка и частые обновления.
БД:
Каждый микросервис, в идеале, управляет своей собственной БД, что позволяет избежать зависимостей и упрощает масштабирование каждого сервиса по отдельности.
Внутренние интеграции:
Взаимодействие между микросервисами часто строится по API на легких протоколах, таких как REST или gRPC, и может включать очереди и брокеры сообщений для асинхронной коммуникации.
👉 Выбор архитектуры проекта зависит от специфики и требований к системе.
На практике часто используют либо смесь подходов SOA и MSA, либо начинают проекты с монолита и через 3-5 лет задумываются о переезде на SOA в качестве первого этапа деления монолита на микросервисы.
🧐 Основная рекомендация опытных архитекторов:
Начинай стартап с монолита и сразу правильно организуй модули кода в нём, которые потом можно будет выделить в отдельные сервисы и микросервисы.
Ключевые подходы к проектированию архитектуры фиксируются в проектной документации. И это не только схемы архитектуры, но и правила, по которым продолжать развивать проект всей команде.
Понимание ключевых аспектов каждого подхода поможет аналитикам определить наиболее подходящую архитектуру для конкретного случая, а также принимать активное и осознанное участие в обсуждениях с разработчиками и архитекторами 🌱
#АрхитектураGA
👍11❤9🔥5
Forwarded from 👩🏻💻 Подкаст Системных Аналитиков | GetAnalyst
👩💻🧑💻 Как проводят собеседования на системного аналитика: про найм и подготовку к смене работы 🧑💻👩💻
Смена работы часто сопровождается стрессом и "синдромом самозванца". Мы хотим помочь побороть их. В эпизоде разберем структуру собеседований, вакансии и актуальные навыки аналитиков, чтобы добавить уверенности в новом шаге для вашей карьеры.
01:17 - Актуальные вакансии в компаниях и почему они появляются.
04:37 - Кто составляет вакансии системных аналитиков и задает требования к кандидатам.
10:46 - Структура собеседования на системного аналитика. Теоретические и практические вопросы. Какого уровня системных аналитиков ищут, какой опыт нужен и что ожидают от кандидатов.
17:24 - Про зубрежку теории: почему это не работает на пользу кандидату. Подробный список вопросов собеседования и требований к системным аналитикам от СберЗдоровье.
21:54 - Отношение к собеседованию на 1.5 часа и техническим задачам во время собеседований.
30:04 - Про найм джунов (младших системных аналитиков): ожидания по навыкам и опыту. Цитата из эпизода: “Джуны - единственная сила, которая работает”.
35:21 - Процесс онбординга: что происходит после успешного найма системного аналитика. Как можно помочь адаптироваться новому сотруднику в IT-компании.
42:57 - Ожидания от нанятых сотрудников в течение испытательного срока.
46:40 - Сложности высадки новых сотрудников. Истории провального найма системных аналитиков. И про обязательный выходной по средам.
52:27 - Удаленка и построение взаимоотношений в компании. Интересные решения по развитию корпоративной культуры ИТ-компаний.
59:53 - Рекомендации по подбору сотрудников для руководителей в ИТ и по смене работы и собеседованиям для системных аналитиков.
Ведущая:
Екатерина Ананьева
Гости:
Никита Финько, Росбанк
Ольга Пашкова, СберЗдоровье
Эпизод доступен в:
⏯ Apple Podcast
⏯ Яндекс.Музыка
⏯ YouTube
⏯ Telegram
⏯ Castbox
⏯ Spotify
Ждём вопросы в комментариях, чтобы рассказать больше в следующем эпизоде 😉
Смена работы часто сопровождается стрессом и "синдромом самозванца". Мы хотим помочь побороть их. В эпизоде разберем структуру собеседований, вакансии и актуальные навыки аналитиков, чтобы добавить уверенности в новом шаге для вашей карьеры.
01:17 - Актуальные вакансии в компаниях и почему они появляются.
04:37 - Кто составляет вакансии системных аналитиков и задает требования к кандидатам.
10:46 - Структура собеседования на системного аналитика. Теоретические и практические вопросы. Какого уровня системных аналитиков ищут, какой опыт нужен и что ожидают от кандидатов.
17:24 - Про зубрежку теории: почему это не работает на пользу кандидату. Подробный список вопросов собеседования и требований к системным аналитикам от СберЗдоровье.
21:54 - Отношение к собеседованию на 1.5 часа и техническим задачам во время собеседований.
30:04 - Про найм джунов (младших системных аналитиков): ожидания по навыкам и опыту. Цитата из эпизода: “Джуны - единственная сила, которая работает”.
35:21 - Процесс онбординга: что происходит после успешного найма системного аналитика. Как можно помочь адаптироваться новому сотруднику в IT-компании.
42:57 - Ожидания от нанятых сотрудников в течение испытательного срока.
46:40 - Сложности высадки новых сотрудников. Истории провального найма системных аналитиков. И про обязательный выходной по средам.
52:27 - Удаленка и построение взаимоотношений в компании. Интересные решения по развитию корпоративной культуры ИТ-компаний.
59:53 - Рекомендации по подбору сотрудников для руководителей в ИТ и по смене работы и собеседованиям для системных аналитиков.
Ведущая:
Екатерина Ананьева
Гости:
Никита Финько, Росбанк
Ольга Пашкова, СберЗдоровье
Эпизод доступен в:
⏯ Apple Podcast
⏯ Яндекс.Музыка
⏯ YouTube
⏯ Telegram
⏯ Castbox
⏯ Spotify
Ждём вопросы в комментариях, чтобы рассказать больше в следующем эпизоде 😉
👍15❤7🔥7👌2