Впечатления от Software Architecture Conference 2019 в Берлине (part I)

В середине июля я анонсировал посещение конференции OReilly по архитектуре программного обеспечения. И вот в начале ноября я посетил это мероприятие и готов поделиться впечатлениями.

Дни перед конференцией

Полет на конференцию не задался с самого начала — мы с задержкой погрузились 3 ноября в Boeing 737 в Шереметьево. Как только все расселись, нас попросили встать и выйти. Через 2 часа мы улетали на сменном самолете той же марки и с той же командой:)

  • посещение уютного зоопарка с битвой кергуру, задумчивой гориллой и дургими животными, которые были засняты мной, но все еще не обработаны:)
  • а дальше был гастропаб Gasthaus Krombach Berlin с отличной едой и хорошим пивом — определенно рекомендую посетить
  • ну и закончилось все прогулкой домой и околорекордными 30 тысячами шагов на моих умных часах

Мой первый день

Вообще, конференция проходила в современном конференц-центре CityCube, который выполнен в индустриальном стиле из стекла и бетона, который даже не требует дополнительной отделки.

O’Reilly Software Architecture Conference проходил в CityCube:)

Event storming for domain-driven design modeling

Данный тренинг был довольно странным. Меня смутили несколько моментов:

  • в такой конфигурации мы пытались провести big picture event storming воркшоп на тему покупки билетов в кино онлайн
  • минимум теории и максимум практики, но без достаточного внимания помощников — это крайне сомнительный рецепт
  • отсутствие экспертов предметной области — если не считать экспертами покупателей билетов:)
Event Storming by Alberto Brandolini

How do I game design: Architecting games to expand your thinking

Этот тренинг мне показлся интересным, т.к. мне всегда нравилась теория игр в общем и конкретные игры в частности. Что тут говорить, если я порядка 7 лет занимался шахматами (сложно назвать частые походы в спортивную школу на тренировки игрой). Состав спикеров был качественным и состоял из сотрудников Secret Lab, университета Тасмании, и фрилансера. Ребята анонсировали рассмотрение вопросов:

  • фреймворк “mechanics-dynamics-aesthetics framework”: почему он хорош и для чего его использовать
  • как понять что происходит в игре и как ее модифицировать
  • как применять все эти знания вне игр, а именно в командной работе, работе над проектами или архитектурой

Второй день

Второй день для меня начался как обычно с завтрака в отеле Novum Hotel Kronprinz Berlin, отель довольно старый, но уютный и заполненный в основном аборигенами, а не туристами:) Дальше 20 минут прогулки и мы снова в CityCube, который встретил нас толпой людей, для которых конференция началась именно со среды.

Autonomous APIs: Navigation in complex landscapes

Пожалуй рассказ про этот доклад надо начать с разбора название, а оно достаточно хайповое. Кто не слышал про autonomous cars? Вот собственно эту тематику и обыграл автор, указав, что люди на каждом шагу говорят про самодвижущиеся повозки, а сопряжением разных api’шек до сих пор занимаются люди:)

  • generic APIs с интеграциями one-to-many, где один провайдер обеспечивает много consumer’ов
  • harmonized APIs — здесь у нас появляется uber-like посредник, который гармонизирует API провайдеров и предоставляет cosumer’ам единое окн
  • autunomy API — автономные API, в которых люди нужны для того, чтобы задать семантику предметной области, а дальше машины разберутся сами
  1. documented brittle system
  2. automated system
  3. decoupled automated system
  4. autonomous system

Beyond the technical: Succeed at leading a software architecture team

Неплохой доклад от Maggie Carroll на тему того, как жить главному архитектору. Основная мысль о том, что нам нужны ренновации и интеграция работы остальных. Чтобы все это сделать надо как-то интегрировать интересы всех стейкхолдеров. Для этого стоит начинать имея в уме конечную цель. Мегги приводит свой способ работы со стейкхолдерами, который начинается с составления контактного листа, а дальше он постепенно наполняется содержимым, где появляются позиции стейкхолдеров, список встреч с ними (с каждым по отдельности или в группах), периодичность встреч и их агенда.

Modern machine learning architectures: Data and hardware and platform, oh my

Честно говоря, в этом докладе нам рассказали много общих слов и мало практической сути. Это стандартный keynote доклад, который без изменения можно было прочитать как год назад, так и в следующем году. В общем, Браян говорил правильные вещи, но ему стоило выйти не в прикиде разработчика (черная футболка и сандали на босу ногу), а в костюме КО.

Next data platform architecture: Distributed data mesh

Дальше на сцену вышла Zhamak Dehghani и рассказала про Data Mesh, которая по мнению экспертов из ThoughtWorks придет на смену озёрам данных:) Доклад был интересным и полезным, но лучше прочитать референсную статью от Zhamak на сайте Мартина Фаулера.

The New Norms of Cloud Native

Этот keynote доклад был очень похож на keynote доклад, который я видел в Барселоне на Kubecon EU 2019. Вот ссылка на версию из Барсы

How do we take architectural decisions in eBay Classifieds Group

Engin Yöyen интересно рассказал о том, как принимаются архитектурные решения. Конечно, он рассказывал с позиции архитектора, который тянет команду к знаниям, но ключевые принципы и практики в eBay Classified Group направлены на самооргонизацию команд. Вот основные ключевые моменты доклада:

  • group of architects working across teams, ensuring a scalable platform
  • architects are playing supportive role and solving conflicts between different parties
  • high level architectural decision requires consensus among teams
  • delegation levels
  • ADRs to record as well as collaborate on decisions

7 years of domain-driven design: Tackling complexity in large-scale marketing systems

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

On launching a distributed system to global markets

Это был довольно интересный доклад от Kat Liu, которая раньше работала в N26 и рассказывала про опыт принятия архитектурных решений при запуске бизнеса N26 в США, когда бизнес в Европе уже был отлажен. В принципе, доклад интересн деталями относительно того, как принимались решения переиспользовать ли наработки или делать независимые приложения (мобильные и бекенд). Довольно неплохо описывается как принимать решение (правда, никакого rocket science здесь нет). Но сама вынесенная проблема кажется излишне простой —как настроить аутентификацию пользователей, если у нас два инстанса приложения и мы не должны ходить для каждого пользователя в оба, а ходить за его данными только в тот бекенд, где они лежат. Итоговая общая табличка для хранения хешированных ключей и номеров шардов, где они расположены очень проста, это по сложности даже не consistent hashing и вот это все:)

The end of second day

На этом программа второго дня закончилась и я отправился писать эту статью:) Во второй части будет последний день конфы и выводы относительно того, насколько полезно ездить на такие мероприятия, если и в России неплохо кормят знаниями и устраивают зрелища:)

P.S.

Продолжение здесь

Director of digital ecosystem development department at Tinkoff. Bachelor at applied math, Master at system analysis, Postgraduate studies at economics.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store