Книжный куб
11.1K subscribers
2.66K photos
6 videos
3 files
1.96K links
Рекомендации интересных книг, статей и выступлений от Александра Поломодова (@apolomodov), технического директора и эксперта в архитектуре
Download Telegram
Публичное System Design Interview на конференции ArchDays 2022

В конце октября на конференции ArchDays 2022 я проводил публичное собеседование по system design, запись доступна здесь.
Это интерьвю смотрелось органично на конференции, которая посвящена архитектуре программного обеспечения, а мы в рамках собеседования как раз ее и создавали для системы бронирования номеров в отелях:)
Я уже проводил такой тип интервью на C++ Russia 2022, кроме того я курирую в Tinkoff этот вид собеседований и часто рассказываю про то, как это выглядит у нас - подробнее можно прочитать в предыдущих статьях: в общем про system design в Tinkoff и больше про то, как мы оцениваем прохождение собеседования и как к нему подготовиться.
Само собеседование прошло несколько недель назад и недавно появилась его запись, а с этой статье я рассказываю о том, как бы я решал эту задачу плюс/минус в условиях близких к тому, что бывает на собеседованиях.

В общем, подробнее в статье https://apolomodov.medium.com/public-system-design-interview-at-archdays-2022-2a7ea02175af

#SystemDesign #SoftwareArchitecture #Software #Interview #SystemDesignInterview #Conference #ExternalReview #Video
🔥14👍3
Remote team interactions workbook

Вчера мне доехала эта книга с Amazon, а сегодня я улетаю в отпуск на полторы недели. И в этот отпуск я решил захватить эту книгу и почитать что Matthew Skelton и Manuel Pais написали в продолжении своей знаменитой книги Teamp Topologies. Честно говоря Эта книга напоминает скорее брошюру на 60 страниц, но зная возможности авторов по архивированию прикольной информации в сжатые объемы книги, я надеюсь, что читать будет интересно. Плюс в этой книге видно, что авторы пытаются приземлить концепции из Team Topologies на реальный мир и явно делают это на достаточно практичных примерах.

#Team #Management #Processes
👍16
При выборе напитков для отпуска я ориентирусь на классику. А что может быть более классическим, чем Singleton, который был еще в книге банды четырех "Design Patterns: Elements of Reusable Object-Oriented Software", которая вышла в 1994 году. Там он был в разделе Creational Patterns, а у меня он стоит на полке:)
😁29🔥15🍾3👍211🤮1
В прошлый четверг, 17 ноября, мы провели третий стрим по книге “Technology Strategy Patterns”.
Мы обсуждали главы 5 и 6:
— Chapter 5. Corporate Context
— Chapter 6. Department Context
Гостем стрима был Павел Притчин, CTO Dodo Engineering.

Артефакты с этого стрима доступны по ссылкам
- Статья с кратким обзором
- Запись стрима
- Miro доска с презентацией
Если вы пропустили первые серии, то можете прочитать их здесь: 1 и 2.

Ждем вас в этот четверг, где мы продолжим обсуждать эту книгу.

#SoftwareArchitecture #Strategy #ExternalReview #Patterns
👍10🐳2😁1
"Черная риторика. Власть и магия слова" ("Schwarze Rhetorik - Macht und Magie der Sprache")

Короткая книга за авторством Карстена Бредмайера. Она короткая, понятная, простая и полезная:)
В ней много примеров для самостоятельной работы, которые позволяют опробовать подходы предлагаемые автором.

В книге 5 частей:
- определение и границы использования
- основные правила
- уловки
- правильная постановка вопросов
- использование призывов

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

В уловках автор выделяет 11 пунктов:
1. "поддевки", замечания и маневры нужны для того, чтобы продемонстрировать свое превосходство
2. прежде всего следует научиться заставлять собеседника слушать вас
3. во время дискуссий добиваться своего помогает не суть, а то, как вы ее предподносите
4. преодолевайте свои страхи, в том числе и страхи коммуникации
5. блефуйте, если того требуют обстоятельства
6. стратегия молчания иногда лучше любых слов
7. меняейте при необходимости парадигму, изменяя роли в коммуникации
8. тщательно проверяйте выданную информацию и не позволяйте смещать фокус на второстепенное
9. ваша позиция - это альфа и омега, начинайте и заканчивайте ей же
10. не поддавайте на аргументационные уловки
11. использование демагогии

Кстати, интересен список уловок из 10 пункта:
- черно-белая аргументаци
- нарушение логической или временной последовательности в цепочке аргументации
- аналогия как псевдодокаательство
- аргумент неизбежности
- аргумент негативной спирали
- аргумент мнимой точности доказательства
- уловка авторитетности мнений и англицизмов
- уловка очевидности
- уловка личного авторитета

Интересен разбор автором постановки вопросов. Он отмечает, что
- существует множество глупых вопросов, задавая которые мы теряем инициативу и просаживаем карму
- существует множество умных вопросов
- некоторым не важна суть разговора, а важно доминировать в нем
- существует множество поверхностных вопросов
Дальше автор выделяет открытые, полуоткрытые и закрытые вопросы. А потом дает таксономию видов вопросов, разбивая их использование на позитивное и негативное. Этот список мне понравился, но его лучше почитать в оригинале.
Ну и заканчивается книга использованием призывов, которые могут быть достаточно хорошим средством ... если с ними не перебарщивать.
P.S.
Читайте книги - это прокачивает ваши знания!
Используйте эти знания и прокачивайте навыки! 🙂

#PublicSpeaking #SelfDevelopment #Storytelling
👍16😁1
👍2
Про тестирование и управление рисками в разработке софта

В отпуске мой Samsung Galaxy S21 Ultra предложил накатить новое обновление прошивки телефона и обновиться до One UI 5 (Android 13).
Я ничтоже сумняшеся обновился и денек даже наслаждался "новым интерфейсом" (который похож на старый до неразличимости).
Дальше я пользовался телефоном около суток: съездил с семьей в Legoland, посетил там water park и вернулся домой.
Так как телефон почти разрядился, то я поставил его на зарядку, а снял с зарядки уже кирпич, этот кирпич все еще работал, но экран был исключительно черный и не подавал признаков жизни.
Я решил погуглить что это за напасть и стало ясно, что это достаточно стандартная история с обновлением телефонов Samsung до One UI 5, причем мне никакие ущрения не помогают для того, чтобы вернуть экранчик к жизни. А теперь к теме поста

1. Про тестирование - кажется логичным, что тщательность тестирования должна определяться тем, насколько велик размер проблем из-за некачественного тестирования.
В случае с превращением телефона в кирпич кажется, что проблема действительна значительна, так как телефон - это важная часть жизни людей.
Например, люди используют телефон для навигаци, оплаты, получения информации - неприятно оказаться в незнакомом городе без телефона.
Помимо этого у меня на телефон завязаны работы приложений для второго фактора, типа Google Authenticator, также у меня там мобильный банк, в который тоже приходят пуши для аутентификации.
В результате, я не могу использовать рабочий vpn и рабочую почту без рабочего телефона, а это для меня является большой проблемой.

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

2. Про управление рисками - когда Samsung подсветил мне, что телефон может обновиться, то я все-таки немного подумал насчет того, а может не обновлять его сразу, а дождаться возвращения из отпуска ... Но, в итоге, решил что ничего страшного ведь случиться не может - телефон уже много раз обновлялся и все было ок. Но такая индуктивная логика не очень работает в случае с индюшкой и днем благодарения и не очень сработала здесь, причем у меня есть гипотеза, что это как-то свяано с тем, что мой телефон приближается к своему двухлетнему юбилею и, возможно, кто-то в Samsung решил, что его пора обновлять ... В общем, в следующий раз я буду учитывать риски лучше и переоценю вероятность проблем из-за software updates в firmware моего телефона

P.S.
Теперь я сижу и внезапно выбираю какой телефон мне надо купить на замену выбывшему

#Quality #QualityAssurance #RiskManagement
💩3😱2
Сегодня был с семьей на шоу пингвинов (Penguin Gentoo Show) в Dubai Mall, где нам рассказывали про них и сами пингвины показывали трюки:)
По результатам посещения я понял, что знакомство с пингвинами в виде Linux сильно продвинуло мою карьеру.
Но это помогло не сразу - на одном из первых занятий на своей кафедре в Вычислительном Центре РАН (ВЦ РАН) выходил из vim через рестарт компьютера.
И потом, когда я начал карьеру разработчика, то пользовалься Windows компьютером и с трудом понимал как работает Linux, на котором исполнялся мой код.
Я пытался писать код, который от меня требовали, но я не очень понимал, что многое уже есть под Linux и можно использовать готовые инструменты.
Потом постепенно я начал изучать доступные инструменты и помню, как мне помогло изучение работы apache http, nginx, подхода linux с pipes, где можно выстраивать цепочку вызовов из отдельных маленьких программ.
В общем, пингвины помогли мне с профессиональной карьерой и кажется, что сейччас умение в Linux - это nush have навык в нашем мире.

#Linux #Penguin #Software #SoftwareDevelopment
👍9😁1
🥰14👍10🔥4🐳2👻1
Сегодня в 18:00 по Москве на Youtube мы продолжим обсуждение книги Technology в рамках клуба Code of Architecture.
У нас в гостях будет Евгений Пешков из ЦИАН. Евгений - техлид, который занимается управлением и развитием команд разработки. Развивает сообщество DDD-практиков, интересуется всем, что связано с technical excellence.

В этот эпизоде мы начнем обсуждать третью часть книги "Communicating the Strategy", в которой автор говорит о том, что помимо создания стратегии нам надо уметь ее правильно коммуницировать иначе какой бы отличной она не была, это нам не поможет. И если во второй части мы учились ее разрабатывать, то в этой части будем учиться доносить ее ценность. А начнем мы с главы "Approach Patterns", в которой представлены следующие паттерны
- 30-Second Answer - вариант речи в лифте, когда мы должны за 30 секунд успеть емко и четко ответить на вопрос топ-менеджера
- Rented Brain - автор предлагает научиться думать в парадигме привлеченных консультантов. Кстати, я как-то уже рассказывал про книгу "I'm Sorry I Broke Your Company: When Management Consultants Are the Problem, Not the Solution", в которой консультант рассказывает подробнее как они работают и как могут приносить пользу
- Ars Rhetorica - автор предлагает вернуться к корням и вспомнить про риторику, про которую писал еще Аристотель. где он говорил про способность находить способы убеждения относительно любого предмета. Я уже как-то рассказывал про свое впечатление от прочтения Риторики Аристотеля.
- Fait Accompli - подход про предпродажу крупных изменений в рамках 1-1 встреч с основными стейкхолдерами перед большой отчетной встречей
- Dramatic Structure - история про драматическую структуру и отсылка к сюжетю голивудских фильмов (интересно, что можно копнуть глубже и дойти до тысячеликого героя Кэмпбелла, хотя автор про это и не говорит - подробнее про Кэмпбелла можно прочитать в заметке). А если интересна тема написания сценариев, то можно почитать еще каноническую книгу "Memo. Секреты создания структуры и персонажей в сценарии", про которую я писал на Medium
- Deconstruction - заумная история про семиотику, знания, знаки и семантику. Здесь автор приводит фреймворк для решения проблем так, чтобы в итоге получился шаблон решения конкретной проблемы, который позволит вам исключить себя из процесса ее решения.
- Scalable Business Machine - подходы к построению масштабирующегося бизнеса. Тут автор интересно рассказывает про свой подход, в котором он поминает про техническе принципы к дизайну систем, навроде fit for puprose и fit for use (подробнее в статье с моим обзором книги "Software Architecture for Busy Developers"), также говорит про SOLID и что его можно использовать в проектировании бизнеса (я тоже как-то рассказывал про подход SOLID к техническому менеджменту), вспоминает про Чарльза Дарвина с его происхождением видов и приходит к тому, что история компании имеет значение (про это можно интересно почитать в книге "The Corporate Tribe", про которую я уже писал раньше). Дальше автор дает определения составляющим частям Scalable Business Machine и рассказывает как за 15 шагов ее построить.

#SoftwareArchitecture #Strategy #Patterns
👍8
5 миллиардов лет одиночества (Five Billion Years of Solitude)

В отпуске я решил немного отдохнуть и вспомнить про научпоп, который раньше читал в большем количестве. Мой взгляд упал на книгу про поиск жизни среди звёзд.
Эта книга за авторством Ли Биллингса определенно хороша. Интересная тема раскрыта не сухим языком фактов, а в виде удивительной истории людей (астрономов, физиков, биологов, химиков, …) которые положили жизнь на алтарь науки во имя поисков наших собратьев по разуму:)
Чуть подробнее про эту книгу можно прочитать в моей статье на Medium

#PopularScience #Physics #Astronomy #ExternalReview
👍5
Остров знаний. Пределы досягаемости большой науки (The Island of Knowledge. The Limits of Science and the Search for Meaning))

Сегодня решил продолжить вспоминать научпоп и решил написать про книгу Марсело Глейзера , которая мне в свое время понравилась:)
Автор выстроил содержимое в виде таймлайна развития науки от древних времен к настоящему моменту и конкретно к квантовой физике:)

Вся первая часть, названная "Происхождение и природа рая" выглядит как калейдоскоп:
- все начиналось с ритмичности природных явлений, которые древние люди обожествляли для того, чтобы объяснить эти явления и успокоить себя.
- в дальшем науку значительно продвинули представители философских течений в Греции, которые, например, предложили концепцию атомов:)
- дальше преобразования ускорились с появлением улучшенных инструментов для наблюдения за звездным небом - и на сцену вышли Браге, Кеплер и Галилей.
- потом пришло время Ньютона и его законов, которые отлично объясняли движение планет.
- потом пришел Максвелл со своими законами для электромагнетизма.
- потом был Эйнштейн с его специальной теорией относительности, потом общей теорией относительности, а потом наступила эра квантовой физики и это отдельная история, которой посвящена вторая часть
.
Часть 2 "От алхимии к квантовой физике: неуловиммая природа реальности" опять начинается с исторической ретроспективы - мы погружаемся в историю исследований преобразования веществ. На этот раз мы гораздо быстрее проходим все эти этапы и оказываемся в 20 веке и встречаемся с принципом неопределенности Гейзенберга, котом Шредингера и другими интересными эффектами, связанными с вероятностым описанием реальности.
Дальше автор проводит нас через различные интерпретации квантовой физики, начиная с копенгагенской и переходя к более интересным:)

Заканчивается книга третьей часть "Сознание и смысл", в которой автор связывает неопределенность из квантовой физики, неполноту математики как формальной системы (подробнее у Геделя) и сознание человека. В этой же части появляются отсылки к возможности того, что все мы живем в симуляции и к книге "Программируя вселенную" Сета Ллойда, про которую я уже как-то писал.

Заканчивается книга мотивирующе, особенно мне нравиться этот параграф из последней главы "Трепет и смысл":
Надежда на то, что когда-нибудь мы достигнем конечной полноты знаний, слишком наивна. Для того, чтобы двигаться вперед, наука должна совершать ошибки. Мы можем стремиться к достоверности, но для дальнейшего роста нам необходимы сомнения. Мы окружены горизонтами и проявлениями неполноты. Все, что мы видим, - это тени на стене пещеры. Границы - это стимулирующий фактор. Они рассказывают нам о мире, о нашем восприятииего и о нас самихх, при этом подталкивая вперед в поиске ответов. Мы раздвигаем границы, чтобы лучше понять, кто мы такие. Тот же процесс, который мы видим в науке (движение вперед или отступление, но при этом постоянный прогресс), должен происходить с каждым из нас при достижении наших целей. Когда мы боимся сделать следующий шаг в неизвестное, мы перестаем расти.

#PopularScience #Physics
🔥6👍2
В этот четверг, 24 ноября, мы провели четвертый стрим по книге “Technology Strategy Patterns”.
В этом эпизоде мы начали обсуждать часть “Communicating the Strategy” и обсудили седьмую главу “Approach Patterns”.
Гостем стрима был Евгений Пешков из Циан. Он управляет и развивает команды разработки и сообщество DDD-практиков. Интересуется всем, что связано с technical excellence.

Артефакты с этого стрима доступны по ссылкам
- Статья с кратким обзором
- Запись стрима
- Miro доска с презентацией
Если вы пропустили первые серии, то можете прочитать их здесь: 1, 2, 3.

Ждем вас в этот четверг, где мы продолжим обсуждать эту книгу.

#SoftwareArchitecture #Strategy #ExternalReview #Patterns
🔥9
The Manager's Path: A Guide for Tech Leaders Navigating Growth and Change

За время отпуска я прочел отличную книгу для технических менеджеров от Camille Fournier, которая поделилась своим опытом, уложившись в 10 глав и 220 страниц.
Интересно, что книга озаглавлена как путь менеджера и начинается с карьерной лестницы и того, как этот путь выглядит. Почти каждая глава посвящена одному из шагов, а в конце книги автор рассказывает как выстроить правильную инженерную культуру, созать карьерную лестницу для инженеров в вашей компании, а также выстроить работу кросс-функциональных команд. В общем, в этой книге есть полезные моменты для каждого, начиная с инженера, который не руководит людьми и заканчивая CTO.
Вот так выглядит список глав.

Introduction
1. Management 101
2. Mentoring
3. Tech Lead
4. Managing People
5. Managing a Team
6. Managing Multiple Teams
7. Managing Managers
8. The Big Leagues
9. Bootstrapping Culture
10. Conclusion

P.S.
На эту книгу я точно напишу статью на Medium, но уже в декабре:)

#Management #Leadership #SoftwareDevelopment #Software #Strategy
👍158
Биография искусства. Человек, который стал Пикассо (Picasso. Le sage et le fou)

Сегодня прочитал книгу про Пикассо, которую перевело и напечетало издательство МИФ.
Сюжет книги выстроен в виде таймлайна и затрагивает основные этапы творчества художника, что позволяет познакомиться с ним в динамике.
Авторы книги, Мари-Лор Бернадак и Поль дю Буше, проследили судьбу человека, оставившего огненный отпечаток на своем столетии и навсегда изменившего современное искусство.
В книге приведено больше 200 произведений, которые демонстрируют яркость, смелость и разнообразие творчества Пабло Пикассо: картины голубого и розового, кубистского и классического периодов, плакат, женские портреты, скульптура, коллаж, керамика, литография...

В общем, рекомендую книгу для расширения кругозора и понимания как развивалась живопись в 20 веке.

#Culture #Biography
🔥5