Рубрика «архитектура» - 17

Что нужно знать, чтобы стать системным архитектором - 1

Роли в проекте выглядят так:

  1. Аналитик слышит от бизнеса задачу в духе «нам надо работать быстрее» и идёт выяснять, что для этого нужно. Долго ковыряется и узнаёт, например, что производству нужна более простая или прозрачная схема процесса обработки заказов. Обсуждает с командой. Бизнес решает делать. Аналитик бросает в архитектора требованиями к новой системе. Аналитик узнаёт, к чему надо идти.
  2. Архитектор смотрит на требования, смотрит на систему, удивляется, смотрит ещё раз туда-сюда — и после этого ставит точное техническое задание. Архитектор видит, что нужно делать.
  3. Проектировщик — самый счастливый человек. Он берёт требования архитектора и просто лабает их до уровня детального проекта системы. Проектировщик знает, как нужно делать конкретные детали.
  4. Проект-менеджер берёт проект и смотрит, сколько нужно людей, железа, денег и других ресурсов. Делает план работ. ПМ знает, кто будет делать, и сколько это будет стоить.

Потом в обратном порядке проект принимается.

Ещё тут могут участвовать главные инженеры (в местах, где много железа или где требуются комплексные работы) и другие люди. Часто роли совмещаются — например, архитектор может быть как проектировщиком, так и брать на себя часть аналитики. ПМ может быть иногда тимлидом разработчиков. Но модель ролей примерно такая.

Дальше — имхо про то, что нужно от первых трёх ролей.
Читать полностью »

Мы все понимаем, что такое автоматические тесты. Мы разрабатываем софт, и хотим, чтобы он решал какие-то проблемы пользователей. Написав тест, мы убеждаемся, что конкретная проблема решается конкретным участком кода. Потом требования изменяются, мы меняем тесты и меняем код соответствующим новым требованиям образом. Но это не всегда спасает. Кроме высокого тестового покрытия наш код должен быть спроектирован таким образом, чтобы защищать разработчика от ошибок ещё при его написании.

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

«Хочешь быть системным архитектором? Там только свет и чистота…» - 1

Много лет назад я от усталости облокотился на стену техкоридора и начал по ней медленно сползать. Мы только что сдали проект после пары недель ночных переработок, чтобы уложиться в дедлайн. Мимо шёл мой руководитель, я простонал:

— Рома, я задолбался быть инженером. Всё, ухожу!
Он ласково улыбнулся и сказал:
— Хорошо. Будешь системным архитектором. Там только свет и чистота. Выспись и приходи, расскажу, что будешь делать.

Я был молодым и наивным. Выспался и пришёл. Тогда начал постепенно становиться архитектором (сейчас стал), и могу смело сказать: света и чистоты тут столько же, сколько в буднях инженера. А вот ответственности больше. Поэтому — нет, не надо быть архитектором, если вы не понимаете, на что идёте.

Но! Если понимаете — это будет очень увлекательное приключение.
Читать полностью »

Отчет c мини-конференции Использование визуальных моделей в ИТ. Проверено опытом - 1

1 ноября на площадке Райффайзенбанка прошла мини-конференция «Использование визуальных моделей в ИТ. Проверено опытом.»

О том, как это было и что обсуждали, читайте под катом.
Читать полностью »

В новой подборке мы обозреваем материалы прошедшей короткой недели: продуктизацию мозга, хаос в тестах, разностороннюю разработку Badoo, пустые экраны и полные архитектуры.

Дайджест интересных материалов для мобильного разработчика #229 (6 ноября — 12 ноября) - 1Читать полностью »

Что такое тестируемый код? Каких правил стоит придерживаться для его написания? Как начать писать такой код, если кодовая база к этому не готова?

Статья с большим количеством примеров кода и иллюстраций, в основе которой – выступление Антона на конференции Mobius 2017 в Питере. Антон является разработчиком Android-приложений в Juno, и в своей работе затрагивает множество смежных технологий. Этот доклад не об Android и не о Kotlin, он о тестировании в целом, об идеях, которые лежат над платформой и над языком и которые могут быть адаптированы к любому контексту.

Читать полностью »

Архитектура хранения и отдачи фотографий в Badoo - 1

Артем Денисов ( bo0rsh201, Badoo)

Badoo — это крупнейший в мире сайт знакомств. На данный момент у нас зарегистрировано порядка 330 миллионов пользователей по всему миру. Но, что гораздо более важно в контексте нашего сегодняшнего разговора, — это то, что мы храним около 3 петабайт пользовательских фотографий. Каждый день наши пользователи заливают порядка 3,5 миллионов новых фотографий, и нагрузка на чтение составляет порядка 80 тысяч запросов в секунду. Это достаточно много для нашего бэкенда, и с этим иногда бывают трудности.

image

Я расскажу про дизайн этой системы, которая хранит и отдает фотки в целом, и приведу на нее взгляд с точки зрения разработчика. О том, как она развивалась, будет краткая ретроспектива, где я основные вехи обозначу, но уже более подробно буду говорить только о тех решениях, которые мы сейчас используем.
Читать полностью »

image

Разные люди по-разному понимают слово «масштаб». Для конструкторов и предпринимателей масштаб – это количество деталей в производстве. Для архитекторов и дизайнеров масштаб – это размер разработки, и то, как она соотносится с людьми, населяющими или использующими её.

Технология селективного лазерного спекания [Selective laser sintering, SLS] открывает возможности 3D-печати большого масштаба в обоих смыслах. Дизайнеры могут плотно упаковать детали, чтобы производить много всего одновременно, и каждая из этих частей может быть уникальной и отвечать определённым нуждам, поскольку СЛП устраняет необходимость в механической обработке.

Чтобы проверить возможности технологии, мы решили распечатать большой павильон, который послужит местом для встреч на конференции 2017 FUSE. Мы использовали принтер Fuse 1 для создание более сотни конструкционных модулей, которые затем четыре дня собирали, чтобы построить структуру, накрывающую площадь в 14 кв. м.
Читать полностью »

В начале сентября прошла презентация Apple, где показали целых три новых iPhone. Но даже интереснее было посмотреть на то, в каком здании она происходила. Самым впечатляющим, что показала компания на своей презентации, оказался её новый кампус. Это одно из самых дорогих сооружений на планете, в три раза дороже Бурдж-Халифа, самого высокого здания мира. Площадь – больше, чем у Пентагона; в сооружении, по задумке, должны свободно размещаться 12 000 сотрудников Apple. Дороги и парковки скрыты под землей. Стены сделаны из вогнутого стекла, а вся конструкция напоминает приземлившуюся большую летающую тарелку.

Apple Park: круче айфона? - 1

Этот кампус, Apple Park, – последний большой проект, над которым Стив Джобс работал перед своей смертью. «У нас есть шанс на создание лучшего офисного здания в мире», – говорил он, отстаивая строительство перед городским советом Купертино в 2011-м. – «Я уверен, студенты-архитекторы будут приезжать сюда, чтобы его изучать». Что ж, теперь гигантское строение достроили, точно по планам Джобса, и мы в Pochtoy решили проверить, что из этого получилось.Читать полностью »

image

Умный дом в нашем понимании — это компьютеризированная система, регулирующая температуру, свет, потребление энергии и другие условия, интегрируя сенсорные, интерактивные, высокотехнологичные системы. Однако автоматизированное здание, обеспечивающее ресурсосбережение для всех жителей, можно создать вовсе без интеллектуальных электронных устройств.

Саморегулируемые дома, построенные по принципам кинетической архитектуры, обеспечивают необходимый уровень комфорта с помощью одних лишь трансформирующихся и мобильных элементов конструкции. Эта концепция известна как минимум век, но только в последние годы технологии строительства достигли уровня, при котором установка кинетических элементов в архитектуре становится экономически целесообразна.

Сегодня расскажем про умные дома прошлого, без компьютеров и сенсорных экранов, инновации которых пригодятся человечеству в будущем.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js