Episódios
-
#domaindrivendesign #ddd #softwareengineer #softwarearchitecture
Как внедрить Domain-Driven Design (DDD) в команду? Почему он не так популярен? Как правильно его продать разработчикам? Об этом и многом другом мы поговорили с Денисом Пинук, который делится своим опытом внедрения DDD в реальных командах.
Что вас ждет в этом выпуске?
- Что такое DDD и зачем он нужен?
- Какой книгой лучше всего начать знакомство?
- Как DDD сочетается с TDD, BDD и Event-Driven?
- Почему DDD сложно внедрять и как это делать правильно?
- Будущее DDD и его минусы.
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
Полезные ссылки
- Вакансии Яндекс 360: https://yandex.ru/jobs/services/360?utm_source=youtube&utm_medium=social&utm_campaign=backend_hire&utm_content=mezhdu_skobok&utm_term=0225
- Про бэкенд-разработку в Яндекс 360: https://360.yandex.ru/jobs/backend_development/?utm_source=youtube&utm_medium=social&utm_campaign=backend_hire&utm_content=mezhdu_skobok&utm_term=0225
- Целостность данных в микросервисной архитектуре / Николай Голов (Avito) https://www.youtube.com/watch?v=6HvSpqBc8fA
- Event-Driven Architecture в контексте микросервисов: основные паттерны | Николай Голов, ManyChat https://www.youtube.com/watch?v=bAhxpqHfP8I
- Микросервисная архитектура, подходы и технологии / Кирилл Ветчинкин (TYME) https://www.youtube.com/watch?v=FF-GZ7iipwc
- Сергей Баранов «Event Storming: избавляемся от предположений в коде» https://www.youtube.com/watch?v=n2RFyLi0sgc
- Классические паттерны МСА https://microservices.io/patterns/index.html
- Пример доски в миро https://miro.com/templates/event-storming/
Таймкоды
00:00 Вступление
03:25 Что такое DDD и зачем он нужен?
07:03 Основные составляющие DDD
11:39 Как DDD сочетается с TDD, BDD и Event-Driven?
12:48 Как Денис познакомился с DDD
16:19 Как продать DDD в команду
20:29 Как команда Дениса адаптировалась к DDD
42:39 Почему DDD не популярно
57:38 Какие ошибки стоит избежать
59:13 С какой книги начать знакомство с DDD
01:03:57 Обсуждение книги Learning DDD
01:03:49 DDD сообщества
01:10:30 Минусы DDD
01:12:22 Будущее DDD
-
Domain-Driven Design — мощный инструмент для проектирования сложных систем, но его внедрение часто вызывает вопросы. Почему стратегический уровень DDD играет ключевую роль? Какие сложности поджидают разработчиков на этом пути? И что нужно сделать, чтобы DDD действительно приносил пользу?
В этом интервью с Владом Хононовым, автором книги "Learning Domain-Driven Design", мы разбираем, как правильно применять DDD в реальных проектах, какие ошибки совершают команды и что ждёт этот подход в будущем.
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
О чём говорим:
— Почему стратегический уровень DDD так важен
— Как сделать первые шаги и преодолеть высокий порог входа
— Реальные примеры внедрения: успехи и трудности
— DDD и микросервисы: всегда ли они связаны
— Влияет ли искусственный интеллект на развитие DDD
— Как будет развиваться DDD в ближайшие годы
— Опыт Влада в написании книги и его новый проект
Если хотите глубже разобраться в DDD и понять, как применять его эффективно, это интервью для вас.
-
Estão a faltar episódios?
-
#softwareengineer #softwareengineerpath #staffeng
Что такое стафф инженер и почему эта роль так важна? В этом видео мы поговорим о ключевых аспектах работы стафф инженеров: как стать стаффом, какие навыки и опыт для этого нужны, и как понять, что ваша компания готова к этой роли. Вы узнаете, куда можно развиваться после сеньора, как строить карьеру и вести переговоры о повышении, а также как справляться с ответственностью, не выгорая. Практические советы, метрики успеха и ответы на самые популярные вопросы о стафф инженерах — всё это в одном видео!
Полезные ссылки
- https://info.androidenterprise.training
- Android Dev Подкаст
- Личный опыт Денис Неклюдов, Барух Садогурский: Жизнь после senior https://youtu.be/n9Wjlei7MYE
- https://www.linkedin.com/in/nekdenis/
- https://staffeng.com
- Собеседование Неклюдов https://www.youtube.com/live/4RFFTaFdspQ
- https://www.goodreads.com/book/show/33369254-the-manager-s-path
-
#softwareengineer #management #agile #architecture
Взял интервью у Engeenering Manager - чтобы понять, кто такой EM и за что он отвечает. Мы обсудили ключевые качества и навыки, которые необходимы для этой роли, а также выяснили, что EM — это не только про работу с людьми, но и про технологии. Ян рассказал, что его привлекает в этой работе и когда компании принимают решение, что им нужен Engeenering Manager. Кроме того, мы затронули тему взаимодействия EM с другими сотрудниками и разобрали различия между EM, Tech Lead и Архитектором.
YouTube https://youtu.be/t2sOyIw9QdE
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
Полезные ссылки
- StaffEng https://staffeng.com/guides/staff-archetypes/
- Книга “Семь навыков эффективных менеджеров”
- Книга "Мама, я тимлид! Практические советы по руководству IT-командой"
- Книга "Джедайские техники. Как воспитать свою обезьяну, опустошить инбокс и сберечь мыслетопливо"
- Подборка книг для тимлида https://www.livelib.ru/selection/2436973-luchshee-dlya-team-lead
- Книга «Как пасти котов. Наставление для программистов, руководящих другими программистами», Ханк Рейнвотер
- Книга "Проект феникс"
- Книга "Цель. Процесс непрерывного совершенствования"
- Совет от Яна "Пройти сертификацию PSM/Project srum master"
-
Погружаемся в мир Go lang - мощного языка программирования, который завоевывает сердца разработчиков. Мы рассмотрим ключевые факторы, почему все больше компаний рассматривают переход на Go lang и какие преимущества он предлагает по сравнению с другими языками программирования. Будем обсуждать такие моменты как производительность, удобство синтаксиса, экосистему и тд. Также поговорим про сложности с которыми можно столкнуться и как их преодолеть.
Помогать разбираться в такой теме нам будут
Владимир Балун - Team Lead из Яндекса
Вячеслав Горюнов - Go разработчик в AdTech, ведет свой youtube https://www.youtube.com/@VyacheArt и по мотивам роликов складываю код на GitHub https://github.com/VyacheArt
Виталий Лихачев - Fullstack разработчик. Работал и в стартапах, и в крупных компаниях. Знает жизнь программных проектов со множества сторон. Автор курса https://slurm.io/go
Ламповый чат https://t.me/backend_megdu_skobkah
Канал с анонсами https://t.me/megdu_skobok
YouTube https://youtube.com/live/vxAFHcQQjjo
Полезные ссылки
- YouTube канал "Владимир Балун" @vladimir_balun_programming
- YouTube канал VyacheArt @VyacheArt
- Для новичков есть прекрасный ресурс: https://gobyexample.com/
- "100 Go Mistakes and How To Avoid Them" Teiva Harsanyi https://www.manning.com/books/100-go-mistakes-and-how-to-avoid-them
- ресурс со стайл гайдом в го https://google.github.io/styleguide/go/index
- Effective go https://go.dev/doc/effective_go
- Примеры проектов на го https://github.com/kubernetes/kubernetes и https://github.com/microsoft/docker
- Пример проекта на го - мониторинг https://github.com/prometheus/prometheus
- убийца nginx (шутка) https://github.com/caddyserver/caddy
- подводные камни использования go https://habr.com/en/companies/vk/articles/314804/
- Курс для middle+ инженеров, кто хочет шарить за go https://slurm.io/go
- Здесь 90-95% того, как можно использовать concurrency в go
Part 1 https://www.youtube.com/watch?v=GZSfn-8m-ko
Part 2 https://www.youtube.com/watch?v=SCsUO9MSHac
Part 3 https://www.youtube.com/watch?v=k9b1Bkea4L0
- Борьба с драйвером PosgreSQL: Bouncer vs. Pgx | Семён Эйгин | Golang Meetup 2023 | СберМаркет Tech https://www.youtube.com/watch?v=jNETRTXWgu8
- Microservices https://microservices.io/patterns/index.html
- О каких штуках нужно подумать, когда пилишь сервис с нуля (observability в первую очередь). https://github.com/kgoralski/microservice-production-readiness-checklist
-
#faang #softwareengineer #careersuccess #startup #ycombinator
Хотите понять, где лучше развивать свою карьеру: в небольшом стартапе или в большой компании типа Microsoft, Apple, Amazon, Netflix и Google. В этом вам поможет разобраться интервью, где обсудим в чем различия, какие есть преимущества и сложности обоих вариантов. Так же будем сравнивать FAANG и Startup в разрезе культуры, гибкости, инноваций.
Делиться своим опытом будет невероятно интересный гост - Игорь Пересунько 🔥 Игорь Software Engineer в YC стартапе iollo, который работает над увелечением продолжительности жизни, Ex-Microsoft, пишет про свои проекты в telegram (https://t.me/ihor_codes), ведет канал про алгоритмы (https://www.youtube.com/c/IhorCodes), стримит на twitch (https://twitch.tv/ihor_codes).
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
YouTube https://youtu.be/UvkS899ZHEY
Полезные ссылки
📖 YouTube канал Игоря https://www.youtube.com/@IhorCodes
📖 Телеграм канал Игоря https://t.me/ihor_codes
📖 Твич https://www.twitch.tv/ihor_codes
📖 Outtalent https://outtalent.com
📖 Well found https://wellfound.com
📖 Ycombinator https://www.ycombinator.com/about
📖 Levels https://www.levels.fyi
📖 Glassdoor https://www.glassdoor.com/
📖 Uber Values https://www.uber.com/us/en/careers/values/?uclick_id=a9289b84-d019-4a91-bb96-aa8a3b364437
📖 Layoffs https://layoffs.fyi
📖 Blind https://www.teamblind.com
Таймкоды
00:00 Вступление
01:50 Как Игорь попал в Faang
03:18 Что такое StartUp
04:39 Почему Игорь решил покинуть Faang и перешел в Startup
08:57 Как найти свой Startup
12:21 Сравнение культуры, атмосферы в Faang и Startup
14:47 Крупная компания с атмосферой стартапа
21:09 Стереотипы про Faang и Startup
22:27 T shape в Startup
26:46 Использование современных технологий
34:41 Как привносить в компанию новые технологии
37:17 Приходиться ли в стартапе больше перерабатывать
38:47 Отдых/отпуск в startup и Faang
43:24 Зарплаты в Startup
46:13 Зарплатные переговоры
50:01 Карьерные перспективы
55:26 Риски Startup
58:00 Набор вопросов для Startup
1:00:15 Выбор между Startup и Faang
-
Мы глубоко обсудили важность безопасности, рассмотрели моменты, когда она становится приоритетной, и изучили основные принципы дизайна, которые лежат в её основе. Особое внимание уделили сложному вопросу обеспечения соблюдения стандартов GDPR при удалении данных из резервных копий баз данных, и здесь Миша предложил отличное решение.
Также мы более детально рассмотрели тонкости аутентификации и авторизации, и пришли к заключению, что технология JWT (JSON Web Tokens) представляет собой отличное решение в данном контексте.
В заключение, мы глубже разобрались в том, как функционируют SSL, TLS и HTTPS, а также рассмотрели использованные в них криптографические алгоритмы.
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
YouTube https://youtu.be/Dz4W2NmXE60
Полезные ссылки
📖 Подкаст тысяча фичей https://t.me/tfeat
📖 Канал душный интерпрайз https://t.me/toxic_enterprise
📖 OWASP https://owasp.org/www-project-top-ten/
📖 OAuth 2.0 for Browser-Based Apps https://www.ietf.org/archive/id/draft-ietf-oauth-browser-based-apps-12.html#name-token-mediating-backend
📖 Модель зрелости средств мониторинга https://www.soc-cmm.com/
-
#devops #sre #softwareengineer #linux
Будут вопросы по траблшутингу на уровне hardware/OS. Обсудим лучшие практики по Kubernetes, по БД (acid, base). Также будет вопросы по CI/CD. Разберемся что может быть полезно разработчику.
Проводить собеседование будет невероятно классная - Ганна Новикова 🔥 Ганна, Lead DevOps/Incident team lead, Intergiro. Непрерывно развивается в SRE/DevOps и делиться этим в твиттере (https://twitter.com/arnika_sky) /своем блоге (https://medium.com/@arnikasky)
Проходить собеседование будет Виталий Лихачев 🔥 Fullstack разработчик. Работал и в стартапах, и в крупных компаниях. Пилил сложный динамичный фронт в стартапе, настраивал CI/CD и aws, оптимизировал бэкенд и проводил технические собеседования — поэтому понемногу знает жизнь программных проектов со множества сторон.
Канал с анонсами https://t.me/megdu_skobok
Boosty https://boosty.to/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
YouTube https://youtube.com/live/V8G4z46QEzs
Полезные ссылки
📖 Твиттер Ганны https://twitter.com/arnika_sky
📖 Блог Ганны https://medium.com/@arnikasky
📖 SRE Interview questions https://github.com/mxssl/sre-interview-prep-guide
📖 Как победить LeetCode https://skillbox.ru/media/code/kak-pravilno-reshat-zadachi-na-leetcode-podrobnyy-gayd-po-trenazhyeru-dlya-programmistov/
📖 SRE book https://linkedin.github.io/school-of-sre/
📖 Попробовать что-то потраблшутить на серверах бесплатно https://sadservers.com/scenarios -
📖 Описание внутрянки linux https://biriukov.dev/
📖 Мега энциклопедия траблшутинга проблем производительности linux https://www.amazon.com/Systems-Performance-Brendan-Gregg-ebook/dp/B08J5QZPNC/
📖 Уроки по linux https://www.youtube.com/playlist?list=PLXtiZNKIobF4e0IHZabrY8WIafbSQiY6h
📖 Nomad https://www.youtube.com/watch?v=G9tBVMVe09s
📖 Про особенности alpine для python https://habr.com/ru/articles/707858/
-
Мы проведем интервью с Мартином ван Стином, автором книги "Distributed Systems". Мы обсудим, как Мартин и Эндрю С. Таненбаум приняли решение написать эту книгу и кто внес больший вклад в четвертое издание. Обсудим для кого предназначена эта книга, а также поговорим о дальнейших творческих планах Мартина. Также поговорим о том, какие тренды ожидают нас в области распределенных систем, и как Мартин оценивает их эволюцию.
Channel with announcements https://t.me/megdu_skobok
Lamp Chat https://t.me/backend_megdu_skobkah
Boost https://boosty.to/megdu_skobok
YouTube https://youtu.be/NhI5YA4nbzQ
Useful links
📖 Distributed Systems https://www.distributed-systems.net
📖 The Datacenter as a Computer http://www.cs.yale.edu/homes/yu-minlan/teach/csci599-fall12/papers/dccomputer.pdf
📖 Google Research https://research.google/pubs/
-
В этой главе мы подробно рассмотрим методы обеспечения отказоустойчивости в распределенных системах. Разберемся, что такое группы процессов и как достигается в них консенсус. Поговорим о том, как строить надежную коммуникацию между сервером и клиентом. Также обсудим такую важную тему, как восстановление после сбоя.
Помогать в обсуждении нам будут невероятно интересные гости - Илья Казначеев и Валерий Жила 🔥. Илья - эксперт в области PaaS и SaaS систем, Google Developer Expert по облачным технологиям, кандидат технических наук. Он помогает бизнесу зарабатывать больше и тратить меньше, принимая правильные архитектурные решения. Валера – немецкий SWE, который стремится понять суть предприятий, но только углубляется в них. Он успешно завершил программу обучения Computer Science на высшем уровне.
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
YouTube https://youtu.be/Nfw-KUWNRGk
Полезные ссылки
📖 Как делали Load Balancing в Facebook https://youtu.be/LLBT70yexZo?si=TojPnOBh10vLCYDh
📖 Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith https://www.amazon.com/Monolith-Microservices-Evolutionary-Patterns-Transform/dp/1492047848/ref=sr_1_1?crid=10M47HICW1Z8H&keywords=Monolith+to+Microservices&qid=1696783672&sprefix=monolith+to+microservices%2Caps%2C183&sr=8-1
-
#distributedsystems #blockchain #softwareengineer #softwarearchitecture
Мы обсудили, каким интересным историческим артефактом является биткоин-документ, написанный Сатоши Накамото, где он перевернул и изменил правила распределенных систем. Также мы разобрались, почему майнить криптовалюту на Марсе не выгодно. Ребята смогли передать суть блокчейна всего несколькими фразами и поделились примерами его применения в реальном мире, такими как децентрализованная архитектура, консенсус с участием множества участников и организация коммуникации в децентрализованной системе. Мы также обсудили, что не получило широкого распространения в блокчейне к концу 2023 года, а также то, что сохранит свою важность в технологиях после этого периода и может быть полезно разработчикам.
Помогали в обсуждении нам невероятно интересные гости - Игорь Корсаков (co-founder & CTO of BlueWallet) и Сергей Тихомиров (protocol research engineer at Status).
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
YouTube https://youtu.be/KtrDKuj1hWU
Полезные ссылки
📖 Bitcoin Paper https://bitcoin.org/files/bitcoin-paper/bitcoin_ru.pdf
📖 Bitcoin Is Worse Is Better https://gwern.net/bitcoin-is-worse-is-better
📖 Bitcoin bites the bullet https://medium.com/@nic__carter/bitcoin-bites-the-bullet-8005a2a62d29
📖 Merkle tree https://en.wikipedia.org/wiki/Merkle_tree
📖 Feature hashing https://en.wikipedia.org/wiki/Feature_hashing
📖 Don’t be tricked by the Hashing Trick https://booking.ai/dont-be-tricked-by-the-hashing-trick-192a6aae3087
📖 What Is Proof of Work (PoW) in Blockchain? https://www.investopedia.com/terms/p/proof-work.asp#:~:text=Proof%20of%20work%20(PoW)%20is,a%20reward%20for%20work%20done.
📖 Is Cryptocurrency are used on Mars? https://medium.com/@varunmoresecomstore/is-cryptocurrency-are-used-on-mars-1699a3dd1e
📖 Zero-knowledge proof https://en.wikipedia.org/wiki/Zero-knowledge_proof
📖 Zero-knowledge proofs, explained https://cointelegraph.com/explained/zero-knowledge-proofs-explained
📖 ENS https://ens.domains
-
Важной темой в распределенных системах является репликация данных. Репликация помогает делать сервисы более надежными и производительными, и одной из ключевых задач является обеспечение согласованности данных во всей системе. На встрече разберемся, какие есть варианты решения.
Помогать в обсуждении будут наши невероятно интересные гости - Антон Жуков и Николай Ижиков 🔥
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
YouTube https://youtu.be/nPTYmqk8dY4?si=7jbmdJBxliSwhFfq
Полезные ссылки
📖 Канал Коли Ижикова https://t.me/nizhikovTalks
-
#distributedsystems #softwareengineer
На встрече мы обсуждаем пятую главу из книги Distributed Systems, 4th Edition, Maarten van Steen and Andrew Tannenbaum. Разобрались в координации компонентов распределенного приложения. Поговорили о том когда надо использовать физические часы, а когда логические, как синхронизировать часы в распределенной системе. Дима привел пример из жизни, когда могут возникнуть проблемы в кластаре Cassandra из-за разных часов. Так же обсудили как делать взаимные блокировки (mutual exclusion), чтобы совместно использовать ресурсы.
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
YouTube https://youtu.be/LxnLuduXKvw
Полезные ссылки
📖 YouTube канал S0ER https://www.youtube.com/@S0ERDEVS
📖 Телеграмм канал S0ER https://t.me/softwareengineervlog
📖 Курс по распределенным системам от Мартина Клеппманна https://youtube.com/playlist?list=PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB&si=r8hTbbc3S6ZtYQmG
📖 The Global Chubby Planned Outage https://sre.google/sre-book/service-level-objectives/#xref_risk-management_global-chubby-planned-outage
📖 Why Does The Clock At Bristol’s Corn Exchange Have Two Minute Hands? https://secretbristol.com/corn-exchange-clock-bristol-time/
📖 The trouble with timestamps https://aphyr.com/posts/299-the-trouble-with-timestamps
📖 Jepsen: Cassandra https://aphyr.com/posts/294-call-me-maybe-cassandra
📖 Raft (not)almighty: how to make it more robust https://dev.to/tarantool/raft-notalmighty-how-to-make-it-more-robust-3a11
📖 Raft Understandable Distributed Consensus http://thesecretlivesofdata.com/raft/
📖 Patterns of Distributed Systems от Мартина Фаулера https://martinfowler.com/articles/patterns-of-distributed-systems/
-
#softwareengineer #golang #publicinterview
Соберемся на публичное собеседование на Middle+ Golang. Разберемся какие сейчас актуальные вопросы по Go обсуждают на собеседованиях.
Проводить собеседование будет Виталий Лихачев 🔥 - Fullstack разработчик. Работал и в стартапах, и в крупных компаниях. Пилил сложный динамичный фронт в стартапе, настраивал CI/CD и aws, оптимизировал бэкенд и проводил технические собеседования — поэтому понемногу знает жизнь программных проектов со множества сторон.
Проходить собеседование будет невероятно классная - Наталья Саушкина 🔥 Работает мидл golang разработчиком в команде по продуктовой аналитике, стек - кафка, кассандра, кликхаус. Знает как хорошо настроить мониторинг и алертинг.
Ламповый чат https://t.me/backend_megdu_skobkah
Канал с анонсами https://t.me/megdu_skobok
Apple Podcast https://podcasts.apple.com/us/podcast/{-между-скобок-}/id1654695424
Yandex Music https://music.yandex.ru/album/24060063
Полезные ссылки
📖 Задачи с собеседования https://github.com/make-it-git/go-interview
📖 Порождающие паттерны в Golang | avito.code https://www.youtube.com/watch?v=GZSfn-8m-ko&
📖 Паттерны параллельных вычислений в Golang | avito.code https://www.youtube.com/watch?v=SCsUO9MSHac
📖 Паттерны отложенных вычислений | avito.code https://www.youtube.com/watch?v=k9b1Bkea4L0&
📖 LinkedIn Виталия https://www.linkedin.com/in/makeitgit
📖 Курс который делает Виталя https://slurm.io/golang-developer
📖 Golang | Паттерны проектирования https://youtube.com/playlist?list=PLxj7Nz8YYkVW5KHnsb9qWUDP2eD1TXl1N&si=Ea_iH1rTr87Iha-K
📖 Шаблоны разработки (полный курс) https://youtube.com/playlist?list=PLmqFxxywkatStbd9hdzVOS1hZa9dc56k4&si=SzEOwW8TIn7iBMTf
-
#distributedsystems #kafka #softwareengineer #softwarearchitecture
Разбор четвертой главы из книги Distributed Systems, 4th Edition, Maarten van Steen and Andrew Tannenbaum. Межсервисное взаимодействие лежит в основе всех распределенных систем. Разберемся какие есть варианты взаимодействия между сервисами, так же поговорим о том какие нюансы стоит при этом учитывать. Обсудим в какие случаях стоит использовать синхронное и асинхронное взаимодействие, какие есть плюсы и минусы у этих подходов.
Канал с анонсами https://t.me/megdu_skobok
Boosty https://boosty.to/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Apple Podcast https://podcasts.apple.com/us/podcast/%D0%BC%D0%B5%D0%B6%D0%B4%D1%83-%D1%81%D0%BA%D0%BE%D0%B1%D0%BE%D0%BA/id1654695424
Yandex Music https://music.yandex.ru/album/24060063
Полезные ссылки
📖 Подкаст “Деды Бухтят На Интернет” https://www.youtube.com/@oldwtf
📖 Networking and Kubernetes: A Layered Approach 1st Edition https://www.amazon.com/Networking-Kubernetes-Approach-James-Strong/dp/1492081655
📖 Kubernetes Networking: The Complete Guide https://www.tigera.io/learn/guides/kubernetes-networking/
📖 Building Meta’s Threads App https://newsletter.pragmaticengineer.com/p/building-metas-threads-app
📖 Fallacies of distributed computing https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing
Таймкоды
00:00 Тема выпуска - коммуникации в распределенных системах.
01:25 Представление гостей: Андрей Ребров и Виктор Гамов.
03:25 Layered architectire, ISO-OSI.
11:00 Сеть - основной источник проблем современных приложений.
13:30 Что почитать про современные проблемы коммукации сервисов.
15:30 Sync/Async вызовы, transient/persistent вызовы - в чем разница и что выбрать.
21:39 Нюансы современных Sync/Async - одно под видом другого.
25:15 RPC - удаленный вызов процедур.
30:05 MoM - Message oriented Middleware. Какие они быают?
36:15 Где крутятся дегьги - MoM для SOA от IBM, они же ESB - enterprise service bus.
39:00 Всеми любимые шины.
44:55 Миллионы и миллиарды сообщений в современных шинах.
49:55 Фото и завершение дискуссии.
-
Разбор третьей главы из книги Distributed Systems, 4th Edition, Maarten van Steen and Andrew Tannenbaum. Подробно рассмотрим, как различные типы процессов играют решающую роль в распределенных системах. Так же сейчас сложно представить современную разработку без виртуализации. Виртуализация позволяет приложению запускаться независимо от базового оборудования и платформ, что обеспечивает высокую степень переносимости. Еще обсудим архитектуру клиент/сервер в распределенных системах.
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
Apple Podcast https://podcasts.apple.com/us/podcast/%D0%BC%D0%B5%D0%B6%D0%B4%D1%83-%D1%81%D0%BA%D0%BE%D0%B1%D0%BE%D0%BA/id1654695424
Yandex Music https://music.yandex.ru/album/24060063
Полезные ссылки
📖 Страничка Getmetor Жени Козлова https://getmentor.dev/mentor/evgeniy-kozlov-684
📖 VyacheArt IT (YouTube канал Славы Горюнова) https://www.youtube.com/@VyacheArt
📖 Daemon process https://t.me/careerunderhood
📖 Cборник хороших практик по разработке backend приложений https://github.com/abstractart/how-to-develop-perfect-crud
📖 Гайд по System Design https://github.com/abstractart/learn-system-design
📖 Java Concurrency Patterns https://github.com/LeonardoZ/java-concurrency-patterns
📖 Теория и практика многопоточной синхронизации https://youtube.com/playlist?list=PL4_hYwCyhAva37lNnoMuBcKRELso5nvBm&si=22Z9EiOTCiICuwfT
📖 Семь моделей конкуренции и параллелизма за семь недель. Раскрываем тайны потоков https://pragprog.com/titles/pb7con/seven-concurrency-models-in-seven-weeks/
📖 Классный цикл статей про виртуализацию и контейнеризацию прям мини книга https://habr.com/ru/articles/657677/
📖 Scaling up the Prime Video audio/video monitoring service and reducing costs by 90% https://www.primevideotech.com/video-streaming/scaling-up-the-prime-video-audio-video-monitoring-service-and-reducing-costs-by-90
-
#startup #career #softwareengineer
В продолжение темы про работу в стартапах, поговорим о том как делать стартапы. Делиться своим опытом будет невероятно интересный гость - Максим Суркиз 🔥 Максим Co-founder & CTO Copilot2trip.com – AI-ассистента для путешествий по всему миру, основатель VideoMarket.ai и Dalytics, со-основатель и руководитель Яндекс.Советника, Ex-Kaspersky Lab.
Максим рассказал про полный путь, которые предстоит пройти при создание стратапа: генерация идеи, сбор команды, организация рабочих процессов и поиск финансированния. Так же поговорили о том как перейти из программиста в оснаватели стартапа и какая есть обратная сторона у стартапов.
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
Apple Podcast https://podcasts.apple.com/us/podcast/{-между-скобок-}/id1654695424
Yandex Music https://music.yandex.ru/album/24060063
Полезные ссылки
📖 Телеграмм канал Максима https://t.me/surkiz_blog
📖 Startup Максима https://copilot2trip.com
📖 Google Project Management: Professional Certificate https://www.coursera.org/google-certificates/project-management-certificate
📖 Go practice simulator https://gopractice.io
📖 Lean canvas https://www.leancanvas.com
📖 MBA https://ru.wikipedia.org/wiki/Магистр_делового_администрирования
📖 Y combinator startup school https://www.startupschool.org
-
#softwareengineer #java #leadership #concurrency #multithreading
Публичное собеседование на Senior Java. Разберемся какие сейчас актуальные вопросы по Java/Kotlin обсуждают на собеседованиях - паттерны разработки, распределенные транзакции, внутренности Java. А так же по мотивам 3 главы из Distributed Systems, разберем пару задачек по многопоточности.
Проводить собеседование будет Гриша Скобелев - Java разработчик, хост { между скобок } и директор программных комитетов конференции Java/Techlead Crew.
Проходить собеседование будет невероятно крутой - Саша Бармин 🔥 Саша Chief Software Engineer, имеющий огромный опыт работы на таких языках JVM, так же ведет свой YouTube канал.
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
Apple Podcast https://podcasts.apple.com/us/podcast/%D0%BC%D0%B5%D0%B6%D0%B4%D1%83-%D1%81%D0%BA%D0%BE%D0%B1%D0%BE%D0%BA/id1654695424
Yandex Music https://music.yandex.ru/album/24060063
Полезные ссылки
📖 YouTube канал Саши https://www.youtube.com/@ABarmin
📖 Twitter Саши https://twitter.com/aabarmin
📖 Pattern: Transactional outbox https://microservices.io/patterns/data/transactional-outbox.html
Таймкоды
00:00 Приветствие
03:21 Начальный план собеседования
04:42 Какую интересную техническую задачу ты решал недавно
09:10 Какие принципы разработки используются в работе (solid, dry, die)
12:04 Разница между Dependency inversion principle и Dependency Injection
16:15 Оптимизация приложения, тюнинг GC
20:17 Как гарантированно отправить сообщение от одного сервиса до другого 23:40 Remote Call из транзакции - что делать
28:28 Фидбек по теоретической части
30:26 Задача на иерархию Exception
33:13 Задача на исполнение потоков, synchronize, reentrant locks, volatile
55:33 Задача написать парсер строки, hashMap
01:03:06 Как устроена hashMap, работа с коллизиями
01:09:00 Фидбэк по live code секции
01:11:05 Финальный фидбэк
01:12:30 Вопросы от кандидата на собеседовании
01:24:14 Надо ли middle/senior давать system design на собеседовании
01:31:10 Сколько этапов собеседований должно быть для senior
01:35:53 Задача парсинга строки специально провокационная
01:45:29 Напутствие от Саши
-
#distributedsystems #microservice #softwareengineer #architecture
Разбор второй главы из книги Distributed Systems, 4th Edition, Maarten van Steen and Andrew Tannenbaum. В рамках этой главы мы обсудили наиболее важные архитектурные стили для распределенных систем Layered architectures, Service-oriented architectures, Publish-subscribe architectures. Так же разобрались в том, что такое Service Oriented Architecture и где она заканчивается и начинаются микросервисы. Еще рассмотрели Publish-subscribe architecture, какие паттерны есть и почему не надо фанатеть от такого подхода.
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
Apple Podcast https://podcasts.apple.com/us/podcast/{-между-скобок-}/id1654695424
Yandex Music https://music.yandex.ru/album/24060063
Полезные ссылки
📖 Шаблоны проектирования микросервисов на примере Авито / Фрол Крючков (Авито) https://youtu.be/5_9x7czHJOM?si=8gbLpBs_2_d6PXUT
📖 Team Topologies https://teamtopologies.com
📖 Microservice Architecture https://microservices.io
📖 Kafka acl или разграничение доступа RuleBAC https://habr.com/ru/articles/706892/
📖 Mark Richards Layered Architecture https://youtu.be/Y9bKZCYxFuI?si=J7AjFdPAiu5ZA-sn
Таймкоды
00:00 Представление ведуших и гостей выпуска - Фроч Крючков и Иван Богатырев.
04:00 Анонсирование темы выпуска - глава 2, Архитектурные стили. Первый стиль - layered style, слоеная архитектура.
10:20 Ограничения слоеной архитектуры на примере MVC - когда эта архитектура достигает свого предела.
16:40 Архитектура как способ управления когнитивной сложностью. Второй стиль - Service Oriented Architecture.
20:11 Каким должен быть сервис Service Oriented Architecture?
25:40 Как организовывать авторизацию и контроль доступа в Service Oriented Architecture?
34:20 Сервисы как способ надежнее масштабировать нагрузку. Как отличить Service Oriented и Microservice Oriented Archotecture?
42:20 Publish-subsribe architectures. Сценарии коммуникации компонентов системы.
52:56 Mailbox и shared dataspace подходы к коммуникации компонентов.
57:40 Подведение итогов по обсужденным темам.
58:12 Вопросы - Share database/shared dataspace...
-
#distributedsystems #softwareengineer
На встрече мы обсуждаем первую главу из книги "Distributed Systems". В рамках этой главы мы рассмотрим различия между распределенными и децентрализованными системами и обсудим важность их разграничения. Также будут затронуты цели, которые могут быть достигнуты благодаря использованию распределенных систем, а также основные проблемы, с которыми мы можем столкнуться в их применении. Кроме того, мы проведем классификацию распределенных систем.
Канал с анонсами https://t.me/megdu_skobok
Ламповый чат https://t.me/backend_megdu_skobkah
Boosty https://boosty.to/megdu_skobok
YouTube https://youtu.be/2Mve8KnFb5A
Таймкоды
00:00 Вступление
03:18 Предыстория про книжку Distributed Systems05:34 Впечатление от главы
09:45 Разница между децентрализованной и распределенной системой
15:13 Существуют ли не распределенные системы
23:33 Концепции распределенной архитектуры
35:00 Availability, Reliability, Safety, Maintainability - характеристики распределенных систем
42:02 Цена распределенности
- Mostrar mais