- 16
- 13 991
Digital Train | Alex Babin
Registrace 22. 10. 2011
Channel for those who want to understand Software Development & IT. Get deep knowledge of how the industry works.
If you are a system or business analyst, automated or manual tester, software engineer, or planning to become - Welcome! 🚀
If you are a system or business analyst, automated or manual tester, software engineer, or planning to become - Welcome! 🚀
Тебе не нужен ментор | You don't need a mentor
Telegram: t.me/digital_train
Boosty: boosty.to/digital_train
Описание и рассматриваемые темы:
00:00 Кто такой ментор
23:30 Правильная постановка цели
37:15 Где можно найти ментора
44:05 Разбор кейса переезда в Австралию
Ссылка на исследование:
www.ncbi.nlm.nih.gov/pmc/articles/PMC10828695/
Boosty: boosty.to/digital_train
Описание и рассматриваемые темы:
00:00 Кто такой ментор
23:30 Правильная постановка цели
37:15 Где можно найти ментора
44:05 Разбор кейса переезда в Австралию
Ссылка на исследование:
www.ncbi.nlm.nih.gov/pmc/articles/PMC10828695/
zhlédnutí: 79
Video
Паттерны микросервисной архитектуры часть 2| Microservices architecture patterns part 2
zhlédnutí 381Před 16 hodinami
Telegram: t.me/digital_train Boosty: boosty.to/digital_train Рассмотрим основные паттерны микросервисной архитектуры из следующих областей: ➕ Тестирование (CDC Service layer) ➕ UI composition ➕ Circuit breaker ➕ Немного Security & Cross-cutting concerns Полезные ссылки: docs.pact.io micro-frontends.org www.openidentityplatform.org/blog/stateless-vs-stateful-authentication Описание: 0:00 Введени...
С нуля на ML engineer в Amazon на 120к | Zero to Amazon ML engineer 120k
zhlédnutí 248Před 14 dny
Telegram: t.me/digital_train Boosty: boosty.to/digital_train В видео поговорим о том как можно с нуля устроиться в Amazon Рассмотрим примеры того как лучше всего готовится к собеседования и на что обратить внимание Таймкоды: 00:00:00 Знакомство 00:03:32 ML-engineer/Data science engineer/Data engineer 00:07:40 Зарплата ML engineer в Amazon 00:10:40 Как попасть в Amazon 00:18:25 Процесс интервью ...
Тестируем контракты через Kafka на Java | Java Autotest Microservices
zhlédnutí 129Před 21 dnem
В предыдущем видео: Что такое Kafka и чем она отличается от RabbitMQ, ссылка: czcams.com/video/lCgsTV3rP0Y/video.html Telegram: t.me/digital_train Boosty: boosty.to/digital_train Таймкоды: 00:00 Приветствие 00:45 Описание тестируемого микросервиса 01:25 Разбираем код тестируемого сервиса 05:12 Пример кода для теста на Java 07:00 Запуск теста и разбор ошибок 14:00 Итог
Тестируем контракты через Kafka на GoLang
zhlédnutí 226Před 28 dny
В предыдущем видео: Что такое Kafka и чем она отличается от RabbitMQ, ссылка: czcams.com/video/lCgsTV3rP0Y/video.html Telegram: t.me/digital_train Boosty: boosty.to/digital_train Таймкоды: 00:00 Приветствие 00:36 Контрактное-тестирование 01:32 Пример тестируемого микросервиса и частые проблемы 20:53 Итог
Контрактное тестирование микросервисов с использование Kafka
zhlédnutí 276Před měsícem
Telegram: t.me/digital_train Boosty: boosty.to/digital_train В этом видео мы рассмотрим контрактное тестирование микросервисной архитектуры когда два микросервиса общаются между собой с помощью Kafka Таймкоды: 00:00 Приветствие 00:24 Е2Е и контрактное тестирование 03:31 Тестирования через kafka 05:24 Практика
Разбираем основы Kafka и RabbitMQ
zhlédnutí 9KPřed měsícem
Разберем основные компоненты архитектуры Kafka и RabbitMQ Посмотрим use case в индустрии и примеры использования Telegram: t.me/digital_train Boosty: boosty.to/digital_train Таймкоды: 00:00 Немного обо мне 01:23 RabbitMQ Архитектура и особенности 10:15 Kafka Архитектура и особенности 18:56 Push vs Pulll подходы и примеры использования 25:20 Доп. материал
Как учиться быстрее | Learning strategy
zhlédnutí 320Před měsícem
Как Учиться Быстрее??? Что выбрать менторство, курсы или школы В этом видео рассмотрим основные способы обучения и доступные материалы. Стратегии и подходы к тому как стать инженером, аналитиком или тестировщиком Подписывай на мой канал: t.me/digital_train Описание: 00:00 Вступление 00:40 Виды обучения Стратегии обучения 35:00 С минимальными вложениями 36:43 Сбалансированный №1 37:35 Сбалансиро...
Go lang middle interview | Интервью на позицию Go lang middle
zhlédnutí 372Před měsícem
Интервью на позицию Go lang middle engineer Поговорим про теоритическую базу Go lang, немного про GC и про подходы к построению API Так же попишем алгоритмы Описание: 00:00 Знакомство 01:10 Теория 26:25 Теория - Ревью ответов 29:10 Практика 40:00 Практика - Ревью 41:35 Обсуждение вопросов
Python middle+ algorithm interview | Алгоритмы на Python middle + мок интервью
zhlédnutí 283Před měsícem
Рассмотрим как правильно писать алгоритмы на python Мок интервью python middle Описание: 00:00 Приветствие 02:05 Бинарный поиск 07:55 Бинарный поиск (рекрсивно) 12:50 Функция flatten (делаем список одноуровневым) 35:10 Функция flatten для списков и кортежей
Паттерны микросервисной архитектуры часть 1| Microservices architecture patterns part 1
zhlédnutí 1KPřed měsícem
Рассмотрим основные паттерны микросервисной архитектуры из следующих областей: - Декомпозиция монолита - Взаимодействие DB и микросервисов - Поддержание консистентности - Observability Описание: 0:00 Введение 0:33 Кратко обо мне 3:54 Карта микросервисных паттернов 5:50 Декомпозиция монолита 15:18 Взаимодействие DB и микросервисов 24:48 Поддержание консистентности 46:16 Observability 52:14 Q&A и...
Microservices architecture for everyone
zhlédnutí 370Před měsícem
В видео рассмотрим различные виды архитектур от монолитной до микросервисной, поговорим о причинах ее возникновения и плюсах минусах Описание: 0:00:00 Вступление 0:03:08 О Себе 0:04:40 Структура типичного интервью 0:10:35 Что такое архитектура 0:10:35 Что такое архитектура 0:15:58 Пример архитектуры 0:18:57 Эволюция архитектуры 0:27:34 Монолитная архитектура. Плюсы/Минусы 0:36:05 Сервис-ориенти...
Тестирование микросервисов | Microservices testing
zhlédnutí 687Před měsícem
Тестирование микросервисов - Рассмотрим какие типы тестирования существуют - Как они разделяются между разработчиками, ручными тестировщиками и тестировщиками автоматизаторами - Разберем как правильно выстроить баланс тестов исходя из цели приложения, что бы минимизировать трудозатраты и максимизировать качество - А так же разберем вопросы Описание: 00:00 Введение 02:00 Обо мне 03:55 Типы тесто...
Java middle Mock-interview
zhlédnutí 183Před měsícem
Java middle интервью Общая длительность 1 час - 30 мин поговорили о теории - 30 мин поработали с алгоритмами Описание 00:00 Приветствие 01:40 Теоритическая часть 21:10 Фидбек по теоритической части 26:40 Решаем алгоритмические задачи 52:40 Фидбек по задачам
Java middle+ mock interview
zhlédnutí 556Před měsícem
Java middle интервью - Первый 30 мин поговорили о теории - Оставшиеся 30 мин поработали с алгоритмами План 00:00 Приветствие 02:10 Теоритическая часть 24:00 Фидбек по теоритической части 29:09 Решаем алгоритмические задачи 54:45 Фидбек по задачам
Webinar: Методологии управления проектом для Project manager
zhlédnutí 162Před měsícem
Webinar: Методологии управления проектом для Project manager
Спасибо. За полчаса всё по полочкам разложил
Спасибо за видео. Очень интересное но как по мне уж слишком поверхностное. Автор подчеркивает важность демонстрации практического опыта на собеседовании но именно этого самого практического опыта использования этих паттернов автором в этом видео и не хватает. Надеюсь в будующих видео будет что-то основанное на реальных проектах. Хотя возможно для начинающих видео будет полезно чтобы не искать по гуглам все эти паттерны.
Всё доходчиво) Возник вопрос по поводу JWT. Допустим есть API Gateway сервис и Security сервис, который после первоначальной проверки имя:пароль генерирует JWT, используя RSA шифрование и отдает его клиенту. Каким образом лучше всего осуществить проверку этого токена, не отправляя каждый запрос от клиента в Security, у которого (только!) есть доступ к RSA ключам? Сейчас на Gateway применяется фильтр, который отправляет запросы к другим микросервисам сначала в Security на верификацию JWT. Как-то криво по-моему(
Есть несколько подходов, если я правильно понял ваш случай - это случай когда для каждого микросервиса мы осуществляет запрос и проверку токена, такой подход отлично работает с точки зрения безопасности, но у него есть минусы и один из основных это проблема масштабирования (при большом количестве микросервисов и запросов рост нагрузки будет экспоненциальным). В таком случае чаще всего переходят на аутентификацию на edge (по перимитру), что сильно упрощает масштабирование, но снижает "строгость" проверок для каждого вызова внутри безопасной зоны Подробно данных подход хорошо изложен в блоге Netflix (они как раз столкнулись с проблемой управления и масштабирования) - netflixtechblog.com/edge-authentication-and-token-agnostic-identity-propagation-514e47e0b602
ммм алгоритм бинарного поиска на несколько минут дольше писал и хоткеи не использует. боже дай сил окружающим интервьюера)))
контент супер! Спасибо вам
Мне кажется автор натягивает сову на глобус говоря, что RabbitMQ это про Push. Сам брокер не знает адреса потребителей, они к нему подключаются и запрашивают новые сообщения. Это только запутывает
Действительно это может немного смущать что rabbitmq ориентирован на push based. В нем есть два типа API push & pull но в большинстве случаев используется push подход (www.rabbitmq.com/docs/consumers#subscribing )
Пили про аутентификацию, всегда актуально)
Спасибо. Еще бы добавить nats/nats streaming.
Оч круто! Если можно покажите тесты на gRPC пожалуйста
Доступно. Понятно. Без воды. Лайк. Подписка.
спасибо!!!
Топ контент! Спасибо
Очереди сообщений не нужны практически никогда! Для этого есть обратный прокси и балансировщик nginx/Apache.
Действительно в самых простых случая очередь можно заменить на реверс + LB Но это только часть функциональности, очереди так же: - Автоматически масштабируются при добавлении и удалении нод из кластера - Могут гарантировать транзакционность и использовать различные стратегии доставки - Часть из очередей могут использоваться в виде хранилища events в event-driven архитектуре - Так же поверх них удобно строить real-time стримы данных и событий и не переживать за то что какой-то из consumer упадет Важно посмотреть на кейс и уже после решать нужна ли очередь или нет
@@digital_train - Балансировщик тоже может добавлять и удалять ноды - Если пользователь не получает ответ в течении 30 секунд, то в большинстве случаев он перестает его ждать и уходит. Поэтому нет смысла накапливать сообщения в надежде когда-то там обработать все. - Событийная архитектура усложняет разработку, если система не помещается на сервер, то лучше использовать шардирование, а не разбиение на подсистемы, что связаны событиями. - После падения консюмеров забивается и падает очередь, что делает ее бессмысленной для спасения. Проще разруливать падение на клиенте путем повторных запросов.
Есть задачи, в которых поток запросов имеет ярко выраженные короткие пики, а в остальное время почти ноль. В этих случаях, если время ответа некритично или ответ вообще не предусмотрен, очередь очень помогает дешево разгрузить обработчики.
поддержка видосиков комменто-лайком
Оч круто!! Спасибо
У меня вопрос по event sourcing. Вот Вы сказали, что мы каждый шаг пользователя фиксируем. Имеется ввиду прям i/o фиксация в бд. Или у нас просто собираются данные в некую коллекцию, а затем по завершении действий пользователем делаем запись в бд? При втором варианте конечно есть риск потери данных при сбое, но первый вариант кажется суперзатратным, все таки идёт постоянная запись в бд. Если юзер просто играется и добавляет товар через плюсик по одному до 20шт, затем удаляет, для меня это 20 транзакций?😢
Отличный вопрос, спасибо что задали его! Действительно если рассмотреть реальную систему то такой подход будет слишком трудозатратен с тз "бека". Поэтому в примере с обычным e-commerce это будет слишком накладно + потеря корзины пользователя который ушел на несколько часов не так критична С другой стороны если мы продаем что-то на что есть жесткий лимит и пользователь будет сильно разочарован в случае отказа - например билет на самолет ил театр, то стоит фиксировать не саму корзину а событие старта процесса покупки тем самым мы снизим нагрузку на "бек", а с другой стороны сможем обеспечить гарантию только одной продажи для пользователя
@@digital_train спасибо, теперь понял.
Про multi stage pipeline очень вскользь сказано, хотелось бы на конкретном примере. Например как организовать транзакцию когда идет целый ряд событий как результат одного. К примеру типовая ситуация: заказ от пользователя (оплата-пересчет остатков-информирование).
Отличный вопрос, как раз разбирали его на теме про паттерны микросервисной архитектуры. Если коротко - транзакционность между микросервисами это дорого и сложно, но есть подходы к организации Тут пример czcams.com/video/ViCD4ERj578/video.htmlsi=M7WRUakxvd6PIYtH 1. Event sourcing 2. Saga pattern
Невеликого уровня дигиталер. Владеет только птичьим разговорным...
Спасибо.
Классное видео! Спасибо!
Спасибо )🙂довольно таки хорошая теория 👍
какнал об автотестах микросервисов на Джава?
Канал о помощи начинающим ИТ инженерам, тестировщикам и аналитикам Вот тут для примера мы рассматриваем архитектуру и паттерны микросервисов, что полезно для инженеров czcams.com/video/ViCD4ERj578/video.html
@@digital_train буду смотреть, спасибо. Пысы пре-миддл инженер-тестировщик с упором на Джава, что его три раза
Я правильно понимаю что у Rabbit должны быть ниже задержки, чем у Kafka?
Если мы говорим на задержку на чтение и обработку сообщения то за счет структуры Kafka сообщение будет проходить быстрее, т.к. там по сути отсутствует умный роутинг и т.д. Но если наша задача выглядит как в зависимости от сложной логики раскидать сообщение по группам, с какими-нибудь полиси. То тут RabbitMQ будет быстрее так как в Kafka нет внутренних механизмов и все прийдется делать во внешнем сервисе, следовательно только передача сообщения между очередью и сервисом съест львиную долю времени Если суммировать, смотрите на ваш кейс_
Большое спасибо за видео. Понятно и доступно)
Отличное представление информации. Просто огонь! Спасибо
Спасибо за видео, вы лучший на мире
Благодарю за видео, вкатывающимся будет очень полезно. Хотелось бы услышать каким образом работать с информацией, чтобы это все перерастало в навык, ибо информации на любые темы более чем достаточно, а вот как работать с ней - это большой вопрос)
Отличный вопрос! Постараюсь подготовить короткое видео на тему как лучшего всего подходить к поиску, фильтрации и работе с информацией и знанием
Больше полезных материалов и видео на моем канале, telegram: t.me/digital_train
Болел за экзаменуемого, как за любимую спортивную команду)
Показал хороший уровень 👍🏼
Думаю вы единственный человек, который смог передать многолетний опыт за час встречи настолько доступно и понятно 👍 Все строго по сути и делу - за час вы смогли сделать из полной каши в моей голове полное понимание «что, зачем и почему», которое возможно так бы и не сформировалось в дальнейшем за несколько лет работы автотестировщиком без вашей лекции, круто 🔥 Этот канал и весь ваш совокупный опыт в этой сфере очень ценны, продолжайте, супер полезно 🙂👍
Скоро выйдет продолжение про то как в ручную и автоматически тестировать контракты и сервисы если они соединены с Kafka / RabbitMq
Очень хорошее видео, видно, что от души делаете! Подрекламировать контент стоит, а то просмотров немного,знаю про ютифай, сразу дела быстрее пойдут.
Больше полезных материалов и видео на моем канале, telegram: t.me/digital_train
Больше полезных материалов и видео на моем канале, telegram: t.me/digital_train
Больше полезных материалов и видео на моем канале, telegram: t.me/digital_train
Больше полезных материалов и видео на моем канале, telegram: t.me/digital_train
вот бы меня бинарный поиск спросили на собесе
Бинарный поиск скорее как задача разогрев
Больше полезных материалов и видео на моем канале, telegram: t.me/digital_train
Подписывайтесь на канал 🚀 Еще больше полезных виде и информации для инженеров, тестировщиков и аналитиков! t.me/digital_train
Больше полезных материалов и видео на моем канале Telegram: t.me/digital_train
Больше полезных материалов и видео на моем канале, telegram: t.me/digital_train
спасибо! очень хорошая подача материала