Вопросы на собеседовании: Архитектор решений
100 реальных вопросов с образцовыми ответами и пояснениями для уровня Junior.
Смотреть пример резюме: Архитектор решений →Тренировка флешкарточками
Интервальное повторение · Hunter Pass
Вопросы
Облачные вычисления предоставляют технологические ресурсы по запросу через сеть с учётом фактического потребления.
- К ресурсам относятся вычисления, хранилища, базы данных, сети и управляемые прикладные сервисы.
- Клиенты могут выделять ёмкость через консоль или API вместо предварительной покупки и установки оборудования.
- Крупные провайдеры, такие как AWS, Azure и GCP, управляют базовыми дата-центрами и сервисными платформами.
Зачем это спрашивают: Интервьюер проверяет, понимаете ли вы облако как модель эксплуатации и предоставления ресурсов, а не просто чужой сервер.
IaaS, PaaS и SaaS различаются прежде всего тем, какую часть технологического стека обслуживает провайдер.
- IaaS предоставляет виртуальные машины, хранилища и сеть, а клиент управляет операционной системой и приложением.
- PaaS предоставляет управляемую среду выполнения и платформу деплоя, а клиент загружает код и данные приложения.
- SaaS предоставляет готовое приложение через браузер или API, например Microsoft 365 или Salesforce.
Зачем это спрашивают: Сильный ответ ясно проводит границу ответственности для каждой модели облачных сервисов.
Модель разделённой ответственности распределяет безопасность и эксплуатацию между облачным провайдером и клиентом.
- Провайдер защищает физические площадки, оборудование и базовую инфраструктуру управляемых сервисов.
- Клиент защищает учётные записи, данные, конфигурацию и нагрузки в объёме, зависящем от выбранного сервиса.
- В IaaS у клиента больше обязанностей, чем в сервисах с высокой степенью управления, таких как SaaS.
Зачем это спрашивают: Интервьюер оценивает понимание того, что переход в облако не передаёт провайдеру все обязанности по безопасности.
Регион представляет географическое расположение облака, а зона доступности представляет изолированную площадку внутри региона.
- Регион выбирают с учётом задержки, требований законодательства, доступности сервисов и присутствия бизнеса.
- Зоны доступности имеют раздельные системы питания, сети и площадки, чтобы ограничивать связанные сбои.
- Размещение в нескольких зонах помогает региональному приложению работать при отказе одной зоны.
Зачем это спрашивают: Сильный ответ отличает географическое размещение от изоляции отказов внутри одной географии.
Эти модели описывают владельца инфраструктуры и способ соединения сред организации.
- Публичное облако использует общую инфраструктуру провайдера для многих клиентов с логической изоляцией.
- Частное облако выделено одной организации и может работать в её дата-центре или у хостинг-провайдера.
- Гибридное облако соединяет частную инфраструктуру с публичными облачными сервисами для совместной работы нагрузок и данных.
Зачем это спрашивают: Интервьюер проверяет, можете ли вы описать модели развёртывания, не смешивая их с IaaS, PaaS и SaaS.
Облачная виртуальная машина представляет изолированный программный компьютер на общем физическом оборудовании.
- У неё есть виртуальные CPU, память, диски, сеть и собственная гостевая операционная система.
- Гипервизор разделяет несколько виртуальных машин на одном физическом хосте.
- AWS EC2, Azure Virtual Machines и GCP Compute Engine служат распространёнными сервисами виртуальных машин.
Зачем это спрашивают: Интервьюер проверяет понимание базовой вычислительной абстракции IaaS.
Serverless позволяет запускать код или приложения без прямого выделения и обслуживания серверов клиентом.
- Провайдер управляет инфраструктурой, доступностью среды выполнения и значительной частью масштабирования.
- Сервисы функций, такие как AWS Lambda и Azure Functions, запускают код по запросам или событиям.
- Оплата обычно зависит от запросов, времени выполнения или потреблённых ресурсов, а не от постоянно работающего сервера.
Зачем это спрашивают: Сильный ответ объясняет уровень абстракции и модель выполнения, а не утверждает, что серверов вообще нет.
Контейнер упаковывает приложение и использует ядро хоста, а виртуальная машина включает полную гостевую операционную систему.
- Контейнеры обычно меньше и запускаются быстрее, поскольку не загружают отдельную операционную систему.
- Виртуальные машины дают более сильную границу изоляции и могут запускать разные операционные системы на одном хосте.
- Docker собирает и запускает контейнеры, а Kubernetes координирует их работу в кластере.
Зачем это спрашивают: Интервьюер оценивает понимание разных уровней изоляции и упаковки.
Управляемый сервис Kubernetes обслуживает control plane кластера, а клиент развёртывает и сопровождает свои нагрузки.
- Провайдер поддерживает Kubernetes API и доступность компонентов control plane.
- Клиент по-прежнему отвечает за описания нагрузок, образы контейнеров, политики доступа и часто за ёмкость рабочих узлов.
- AWS EKS, Azure AKS и Google GKE служат основными облачными примерами.
Зачем это спрашивают: Сильный ответ разделяет обязанности провайдера и клиента.
Эти сервисы AWS закрывают основные задачи вычислений, контейнеров, баз данных и хранения.
- EC2 предоставляет виртуальные машины, Lambda запускает событийные функции, а EKS предоставляет управляемый Kubernetes.
- RDS обслуживает поддерживаемые реляционные СУБД, такие как PostgreSQL и MySQL.
- S3 хранит объекты, например файлы, резервные копии, логи и статические ресурсы сайтов.
Зачем это спрашивают: Интервьюер проверяет, правильно ли вы размещаете основные сервисы AWS по архитектурным слоям.
Эти сервисы Azure предоставляют три разных способа запуска приложений.
- Azure Virtual Machines дают контроль на уровне операционной системы над постоянными вычислительными инстансами.
- Azure Functions запускает событийный код в serverless-модели.
- AKS предоставляет управляемый Kubernetes для оркестрации контейнерных приложений.
Зачем это спрашивают: Интервьюер оценивает знание основных вычислительных абстракций Azure.
Эти сервисы GCP запускают нагрузки на уровнях виртуальных машин, управляемых контейнеров и Kubernetes.
- Compute Engine предоставляет настраиваемые виртуальные машины.
- Cloud Run запускает образы контейнеров на управляемой платформе и масштабирует инстансы по запросам.
- GKE предоставляет управляемые кластеры Kubernetes для оркестрации контейнеров.
Зачем это спрашивают: Интервьюер проверяет, различаете ли вы вычислительные сервисы GCP по уровню абстракции.
Объектное, блочное и файловое хранилища используют разные способы организации данных и доступа к ним.
- Объектное хранилище держит целые объекты с метаданными в бакетах и предоставляет доступ через API.
- Блочное хранилище предоставляет сырые тома, которые операционная система форматирует и монтирует как диск.
- Файловое хранилище предоставляет общие каталоги и файлы по протоколам вроде NFS или SMB.
Зачем это спрашивают: Сильный ответ различает модели доступа к хранилищам, а не только называет продукты.
Amazon S3 представляет сервис объектного хранения, который размещает объекты внутри бакетов.
- У каждого объекта есть ключ, содержимое, метаданные и при необходимости данные о версии.
- У бакетов есть имена, региональное размещение, политики доступа и настройки вроде lifecycle rules.
- Приложения обращаются к S3 через API, а не монтируют его как обычный блочный диск.
Зачем это спрашивают: Интервьюер проверяет понимание модели бакетов и объектов в S3.
Сохранность показывает, остаются ли данные целыми, а доступность показывает, можно ли воспользоваться сервисом сейчас.
- Система с высокой сохранностью защищает данные от отказов оборудования с помощью репликации или коррекции ошибок.
- Доступная система принимает и обслуживает запросы в течение измеряемого периода.
- Хранилище может временно не отвечать, но не потерять данные, поэтому эти показатели не взаимозаменяемы.
Зачем это спрашивают: Сильный ответ отделяет защиту от потери данных от возможности немедленно обратиться к сервису.
Версионирование сохраняет несколько редакций объекта, а lifecycle policies автоматизируют хранение и перемещение объектов.
- Версионирование защищает от случайной перезаписи или удаления за счёт сохранения старых версий.
- Lifecycle rules могут переносить старые объекты в более дешёвые классы хранения или удалять их через заданный срок.
- Обе функции требуют планирования срока хранения и стоимости, поскольку сохранённые версии занимают место.
Зачем это спрашивают: Интервьюер оценивает знание базовых функций управления данными помимо загрузки объектов.
VPC или виртуальная сеть представляет логически изолированное сетевое пространство внутри облачного провайдера.
- У него есть диапазон IP-адресов, разделённый на подсети для организации ресурсов.
- Таблицы маршрутов, шлюзы и средства безопасности определяют пути трафика.
- AWS использует название VPC, а Azure обычно называет сервис Virtual Network или VNet.
Зачем это спрашивают: Интервьюер проверяет понимание сетевой границы, внутри которой находятся облачные ресурсы.
Публичная подсеть имеет маршрут для прямого подключения к интернету, а частная не выставляет ресурсы напрямую таким способом.
- В публичных подсетях часто размещают внешние балансировщики или шлюзы.
- В частных подсетях часто размещают серверы приложений и базы данных с доступом по внутренним маршрутам.
- Ресурсу также нужны подходящий адрес и правила безопасности, поэтому один тип подсети не гарантирует доступ.
Зачем это спрашивают: Сильный ответ связывает тип подсети с маршрутизацией, а не только с названиями ресурсов.
Таблица маршрутов сопоставляет диапазоны адресов назначения со следующим узлом для трафика.
- Локальный маршрут обеспечивает связь между подсетями внутри виртуальной сети.
- Маршрут по умолчанию может направлять интернет-трафик в интернет-шлюз или NAT gateway.
- Путь пакета обычно определяет наиболее конкретный подходящий маршрут.
Зачем это спрашивают: Интервьюер оценивает понимание базового механизма направления облачного сетевого трафика.
Облачные файрволы и security groups управляют разрешённым входящим и исходящим трафиком ресурсов.
- Правила обычно учитывают протокол, порт, источник и назначение.
- Входящие правила управляют трафиком к ресурсу, а исходящие управляют трафиком от него.
- Правила по принципу наименьших привилегий открывают только нужные приложению пути вместо широкого публичного доступа.
Зачем это спрашивают: Интервьюер проверяет понимание контроля сетевого доступа на границе ресурса.
Закрытые вопросы
- 21
Для чего нужен NAT gateway?
gatewaynetworking - 22
Какую роль DNS играет в облачной архитектуре?
dns - 23
В чём разница между балансировкой нагрузки на уровнях L4 и L7?
load-balancing - 24
В чём разница между вертикальным и горизонтальным масштабированием?
scaling - 25
Чем масштабируемость отличается от эластичности?
scalability - 26
Что означает высокая доступность?
high-availability - 27
Чем отказоустойчивость отличается от высокой доступности?
high-availability - 28
Почему размещение в нескольких зонах доступности повышает доступность?
availabilityhigh-availabilitydeployment - 29
Почему stateless-инстансы приложения легче масштабировать горизонтально?
scalingcompute - 30
Для чего нужен health check в распределённом приложении?
distributedhealth-checks - 31
Что такое кеширование и зачем его используют в архитектуре систем?
system-designcaching - 32
Что такое CDN?
cdn - 33
Что такое TTL и инвалидация кеша?
caching - 34
В чём разница между базами данных SQL и NoSQL?
sqlnosqldatabase - 35
Что такое управляемый сервис реляционной базы данных?
database - 36
Что такое Azure Cosmos DB?
- 37
Чем репликация базы данных отличается от резервной копии?
databasereplicationbackups - 38
Что означает ACID для транзакций базы данных?
databasetransactionsacid - 39
Что такое монолитная архитектура приложения?
monolithmicroservices - 40
Что такое микросервисная архитектура?
microservices - 41
Каковы основные принципы REST API?
rest - 42
Что такое API gateway?
gatewayapi-gatewayapi - 43
Чем синхронная интеграция сервисов отличается от асинхронной?
async - 44
Что такое очередь сообщений?
queuesmessagingdata-structures - 45
Что такое обмен сообщениями по модели публикация-подписка?
- 46
Что такое событийная архитектура?
eventsevent-driven - 47
Что такое bounded context в Domain-Driven Design?
design - 48
Что такое Infrastructure as Code?
iac - 49
Как Terraform и AWS CloudFormation связаны с Infrastructure as Code?
terraformiaccloudformation - 50
Каковы столпы AWS Well-Architected Framework?
well-architected - 51
Как разместить небольшой публичный сайт, контент которого меняется несколько раз в неделю?
- 52
Команде нужен небольшой HTTP API с редким и непредсказуемым трафиком. С какого варианта вычислений вы начнёте?
http - 53
Сервис заказов требует транзакций и связей между клиентами, заказами и платежами. Какую базу вы выберете сначала?
databasetransactions - 54
Как спроектировать загрузку больших изображений и документов пользователями приложения?
design - 55
Как спроектировать базовое веб-приложение, которое должно вырасти от сотен до десятков тысяч пользователей?
design - 56
Приложение хранит пользовательские сессии в локальной памяти, и после масштабирования до нескольких экземпляров пользователей разлогинивает. Как это исправить?
scalingcomputesessions - 57
Каждое утро в будни трафик растёт, и один сервер приложения перегружается. Какое изменение архитектуры вы предложите?
architecture - 58
Как сделать небольшое production-приложение устойчивым к потере одной зоны доступности?
availabilityhigh-availability - 59
Команда считает управляемую базу безопасной, потому что провайдер обслуживает оборудование. Какой план резервного копирования вы добавите?
databasebackups - 60
После регионального сбоя бизнес допускает четыре часа простоя и потерю одного часа данных. С чего вы начнёте проектирование восстановления?
designcloud-regions - 61
Большинство дней обработчик файлов простаивает, но иногда одновременно приходят тысячи файлов. Как его спроектировать?
designconcurrency - 62
Когда вы не стали бы использовать serverless-функции для новой нагрузки?
serverless - 63
У команды есть один stateless API в контейнере и нет опыта с Kubernetes. Стоит ли размещать его в EKS, AKS или GKE?
kubernetescontainersapi - 64
Команде нужно развернуть несколько сервисов в Kubernetes. Какую базовую архитектуру вы предложите?
kubernetesdeploymentarchitecture - 65
Облачные dev-окружения работают ночью и по выходным, хотя ими никто не пользуется. Как сократить расходы?
- 66
Мониторинг показывает, что виртуальная машина месяц использует меньше 10% CPU и мало памяти. Что вы порекомендуете?
computemonitoringmemory - 67
Медиаархив в объектном хранилище быстро растёт, но большинство файлов не читают после 90 дней. Что вы измените?
cloud-storage - 68
Облачный счёт резко вырос после того, как приложение начало раздавать большие файлы по всему миру. Как вы найдёте и сократите расходы?
- 69
Компания хочет перенести небольшое локальное приложение в облако. Что вы оцените до выбора сервисов?
- 70
Как при миграции legacy-приложения выбрать между переносом виртуальной машины без изменений и переходом на управляемые сервисы?
computecloud-migrationmigrations - 71
Как перенести локальную реляционную базу в управляемую облачную базу с коротким простоем?
database - 72
Какой план отката вы подготовите до перевода production-трафика в новое облачное окружение?
rollback - 73
Облачное приложение должно обращаться к базе данных, которая остаётся в локальном дата-центре. Как спроектировать подключение?
databasequeriesdesign - 74
Двум внутренним приложениям нужен немедленный обмен запросом и ответом. Как вы их интегрируете?
- 75
Сервис заказов должен уведомлять биллинг и аналитику, не ожидая ответа обеих систем. Как спроектировать интеграцию?
system-designdesign - 76
Ночной отчёт иногда выполняется дольше, чем интервал до следующего запуска. Как изменить его архитектуру?
- 77
Платёжный провайдер отправляет вебхуки и может несколько раз повторить одно событие. Как безопасно их принимать?
resiliencewebhooks - 78
Критичный сценарий вызывает сторонний SaaS API, который иногда недоступен. Как защитить приложение?
dependenciescloudapi - 79
Два облачных сервиса должны вызывать друг друга без хранения долгоживущих паролей. Как их аутентифицировать?
passwords - 80
Как спроектировать базовый периметр безопасности для публичного трёхуровневого веб-приложения?
design - 81
Приложение хранит пароль базы данных внутри образа контейнера. Какое изменение архитектуры вы предложите?
containersdatabasepasswords - 82
Команда разработки просит права администратора на весь облачный аккаунт ради деплоя одного сервиса. Что вы предложите?
deployment - 83
Для удобства базу данных и внутренние сервисы разместили в публичных подсетях. Как улучшить сетевую архитектуру?
designnetworkingdatabase - 84
Публичный API получает вредоносный трафик, из-за которого растут расходы и ошибки. Какие меры вы добавите?
api - 85
Решение хранит данные клиентов и передаёт их между сервисами. Как защитить эти данные?
- 86
Какой мониторинг вы добавите до запуска нового пользовательского сервиса?
monitoring - 87
Запрос пользователя проходит через API gateway, два сервиса и базу, но место сбоя трудно найти. Что вы добавите?
gatewayapi-gatewayapi - 88
Пользователи из одного региона жалуются на медленные ответы, а рядом с облачным регионом проблемы нет. Как исследовать архитектуру?
cloud-regions - 89
На архитектурной схеме production показаны один экземпляр приложения и одна база. Как вы оцените риск?
computedatabase - 90
Веб-приложение замедлилось, потому что база данных достигла предела мощности. Какие варианты вы оцените сначала?
decision-makingdatabasecapacity - 91
Каталог товаров часто читают, но меняют лишь несколько раз в час. Где в архитектуре уместен кеш?
caching - 92
Интернет-магазин раздаёт изображения товаров, публичные страницы и персональные страницы аккаунта. Как использовать CDN?
discoverycdn - 93
Команда из пяти человек хочет разделить новое бизнес-приложение на двенадцать микросервисов. Что вы порекомендуете?
microservices - 94
Как разделить ответственность за заказы, остатки и клиентов в архитектуре приложения?
design - 95
Команда создаёт облачные ресурсы вручную, и тестовое окружение отличается от production. Что вы измените?
test-environments - 96
Terraform сообщает, что production-ресурс отличается от репозитория. Как вы обработаете drift?
terraformiac - 97
Что вы включите в архитектурную схему облачного приложения для design review?
design - 98
Заказчик просит спроектировать высокодоступную платформу, но не сообщает трафик и требования к восстановлению. Что вы спросите сначала?
stakeholder-managementdesigncommunication - 99
Более дешёвая архитектура восстанавливается медленнее, чем дорогой вариант. Как вы представите выбор?
design - 100
Два управляемых сервиса выглядят подходящими для новой интеграции. Как выбрать между ними?