BA & SA | 10000 Interview questions
10.2K subscribers
172 photos
14 videos
342 links
Вопросы и задачи, которые задают на собеседованиях на позицию Бизнес и Системного аналитика. По вопросам сотрудничества- @DeliveryManager7
Download Telegram
№4857 категория вопросов: #REQUIREMENTS
4857. Заказчик просит сделать «фильтр товаров по многим параметрам с мгновенной выдачей результатов». После реализации выясняется, что «мгновенно» — 0.5 секунды, а разработчик заложил 2 секунды. Что нужно было сделать аналитику до начала разработки?
Anonymous Quiz
7%
Передать требование архитектору для технической оценки
89%
Зафиксировать числовое значение в нефункциональном требовании
2%
Уменьшить количество параметров фильтрации
2%
Добавить в команду профессионального тестировщика
Объяснение:

Остальные варианты — передача архитектору, уменьшение параметров, добавление тестировщика — не решают проблему отсутствия конкретной цифры. Только явная фиксация времени отклика (например, «не более 500 мс») делает требование проверяемым.)
Please open Telegram to view this post
VIEW IN TELEGRAM
№4858 категория вопросов: #DBMS
4858. В интернет-магазине при одновременном заказе последнего товара двумя пользователями оба заказа проходят, и остаток становится отрицательным. Какой механизм БД предотвратит эту ситуацию?
Anonymous Quiz
3%
Увеличить количество реплик базы данных
86%
Использовать пессимистическую блокировку строки
11%
Создать индекс на поле остатка
1%
Переключиться на NoSQL базу данных
ПРОМТ, КОТОРЫЙ УЛУЧШИТ ВАШ БЛОГ ИЛИ ПРОДУКТ

- нормально сегментирует ЦА, а не напишет «женщины 30+»
- подскажет, что нужно докрутить


В одной ПАПКЕ с топовыми каналами по бизнесу, IT и AI

AI песочница инженера

…. и ещё много полезных каналов, из которых вы получите

- нейросети, которые генерят контент за минуты, ведут переписки и приводят новых клиентов
- набор топовых инструментов для IT
- небанальные связки по привлечению трафика

❗️через 3 дня удалю пост

ПОПАСТЬ В ПОДБОРКУ КАНАЛОВ
Объяснение:

Увеличение реплик, индекс или смена БД не решают проблему гонки. Только блокировка строки SELECT ... FOR UPDATE гарантирует, что второй заказ увидит уже изменённый остаток.
Please open Telegram to view this post
VIEW IN TELEGRAM
№4859 категория вопросов: #ARCHITECTURE
4859. В микросервисной архитектуре мобильное приложение вызывает 5 разных микросервисов напрямую. При изменении IP-адреса одного сервиса приложение перестаёт работать. Какой паттерн решает эту проблему?
Anonymous Quiz
4%
Перейти на синхронные вызовы с ретраями
92%
Внедрить единую точку входа (API Gateway)
4%
Хранить адреса сервисов в кэше приложения
1%
Использовать общую базу данных для координации
Очевидно, что всего через пару лет умение работать с ИИ станет таким же обычным делом, как открыть браузер или найти что-то в поисковике.

И вот что удивительно — многие до сих пор не воспринимают это всерьёз.

Одни продолжают делать всё по старинке — руками.
А другие — уже сейчас экономят часы работы с нейросетями и вырываются вперёд.
С каждым месяцем разрыв между ними будет только расти.


Вот отличная подборка сильных экспертов по AI & IT для твоего профессионального роста:
(https://t.me/addlist/iy6id2ElW_hiNTg0)

* Там — живые инструменты, реальные кейсы и понятные схемы, как использовать нейросети с толком и высоким КПД.

Если Тема тебе откликается — добавляйся в ПАПКУ 📌 👉 Делимся знаниями и аудиторией — растём вместе ⚡️ * Отписаться можно в любой момент. Остаться — тоже. ✔️
👍1
Объяснение:

Ретраи, кэширование адресов в приложении или общая БД не решают проблему смены IP. API Gateway скрывает внутреннюю структуру, клиент знает только адрес шлюза
Please open Telegram to view this post
VIEW IN TELEGRAM
⁉️ Устал искать интересные каналы с новостями про искусственный интеллект?

📁 СОХРАНИ СЕБЕ ЧТОБЫ НЕ ПОТЕРЯТЬ

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

😏 ЗАБИРАЙ ПАПКУ ТУТ

Папка действует 72 часа.

🤩 Организаторы: Green.Papka
Please open Telegram to view this post
VIEW IN TELEGRAM
№4860 категория вопросов: #REQUIREMENTS
4860. На проекте требования меняются каждую неделю. Команда тратит время на переделки. Какой инструмент аналитик должен применить для контроля изменений?
Anonymous Quiz
6%
Фиксировать все изменения в протоколе встреч
85%
Внедрить процесс управления изменениями (Change Request)
1%
Еженедельно пересматривать приоритеты задач
9%
Использовать матрицу трассируемости требований
Объяснение:

В реальных проектах требования меняются постоянно: заказчик увидел конкурента, поменялись регуляторные условия, маркетинг придумал новую акцию. Если каждое изменение сразу отправлять в разработку, команда постоянно переключается, теряет фокус, а сроки срываются. Нет единого источника правды, и никто не помнит, почему требовали то одно, то другое.

Что такое процесс управления изменениями (Change Request)?
Это формальная процедура, которая состоит из шагов:

Запрос на изменение (Change Request, CR) – любой стейкхолдер заполняет форму: описывает изменение, обоснование (почему это важно), ожидаемую бизнес-ценность.

Оценка – аналитик вместе с разработчиками оценивает трудозатраты, влияние на другие модули, риски, необходимость изменений в документации и тестах.

Рассмотрение на Change Control Board (CCB) – встреча с участием заказчика, продукт-оунера, технического лида. Принимается решение: принять, отклонить, отложить. Если принимается, то определяется, за счёт каких задач это будет сделано (вытеснение других задач, сдвиг сроков).
Коммуникация – решение доводится до всей команды, обновляются требования и бэклог.
Реализация – изменение попадает в разработку уже с понятным приоритетом.

Почему остальные варианты не решают проблему?
A (фиксировать в протоколе) – полезно, но не даёт оценки трудозатрат и приоритизации. Команда всё равно вынуждена реагировать на каждое изменение «по факту».
C (еженедельный пересмотр приоритетов) – хорошая практика, но без формального CR изменения могут быть неполными, неоценёнными или незадокументированными.
D (матрица трассируемости) – помогает понять, какие артефакты связаны с требованием, но не управляет потоком изменений.

Реальный кейс из практики:
В одном проекте по разработке CRM для сети салонов связи изменения поступали ежедневно. Аналитик просто передавал их в бэклог, команда хваталась за то, что «горело». В результате через месяц половина фич была недоделана, а релиз сдвинулся на три недели. Ввели Change Request Board из трёх человек (заказчик, аналитик, тимлид). Заказчик заполнял CR-форму (описание, ценность). На ежедневной 15-минутной встрече оценивали влияние. Если оценка превышала 8 часов, вопрос выносили на еженедельное заседание. Через месяц количество несогласованных правок сократилось на 80%, а команда стала прогнозировать сроки.

Что должен зафиксировать аналитик:
В регламенте проекта: «Любое изменение требований после утверждения бэклога оформляется через Change Request и проходит оценку».
Форма CR должна содержать поля: автор, описание, обоснование (ожидаемый эффект), приоритет для бизнеса.
Порог принятия: например, изменения до 4 часов может утвердить PO, более 4 часов – CCB.

Вывод: Управление изменениями – это не бюрократия, а способ сохранить предсказуемость разработки и снизить хаос. Аналитик выступает не врагом изменений, а их фильтром и координатором.
Please open Telegram to view this post
VIEW IN TELEGRAM
НЕБОЛЬШОЙ АПГРЕЙД ТВОЕЙ ЛЕНТЫ, КОТОРЫЙ ДАСТ ХОРОШИЙ БУСТ ТВОЕЙ КАРЬЕРЕ

Друзья, наш канал попал в подборку тг-каналов про AI & IT, технологии и карьеру — получилась тусовка «для своих» 😎

Мы собрали каналы для себя, которые реально полезны:
следить за ИИ — от свежих инструментов до реальных кейсов
разбираться в технологиях — тренды, обзоры и объяснения
расти в IT — советы по карьере, поиску работы и развитию
быть в теме HR Tech — как технологии меняют найм и управление, ИИ для удаленки и работы за рубежом

🆒 Осталось только добавить папку себе ✔️https://t.me/addlist/iy6id2ElW_hiNTg0
👍1🔥1
№4861 категория вопросов: #DBMS
4861. В таблице «Клиенты» нет первичного ключа, но есть дубли по полям (ФИО, email, телефон). Как найти все дублирующиеся записи?
Anonymous Quiz
15%
Использовать оконную функцию ROW_NUMBER() с PARTITION BY
22%
Создать временную таблицу с уникальными записями
62%
Применить GROUP BY и HAVING COUNT(*) > 1
2%
Добавить автогенерируемый первичный ключ
Объяснение:

При загрузке данных из разных источников (CSV, старые базы, ручной ввод) часто появляются дубли. Первичного ключа нет, и нужно выявить все строки-дубликаты (а не просто узнать, какие комбинации полей дублируются). Например, клиент Иванов Иван с email ivan@mail.ru может встретиться три раза с разными id (если бы id был). Нужно найти все эти три записи, чтобы потом оставить одну (чистка данных).

Что делает ROW_NUMBER()?
Оконная функция 
ROW_NUMBER() присваивает уникальный номер каждой строке внутри группы. Группа определяется PARTITION BY (поля, по которым ищем дубли). Порядок нумерации внутри группы задаётся ORDER BY (можно по любому полю, например, по условному id, если есть, или дате). Первая строка в группе получает номер 1, вторая – 2 и т.д. Все строки с номером > 1 – дубликаты.

Пример запроса:
sql
WITH ranked AS (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY fio, email, phone ORDER BY id) AS rn
FROM clients
)
SELECT * FROM ranked WHERE rn > 1;

Если таблица не имеет поля 
id, можно использовать ORDER BY (SELECT NULL) или любую константу – тогда порядок произвольный, но дубли всё равно будут отмечены.

Почему другие варианты не подходят:
C (GROUP BY + HAVING) – покажет, какие комбинации полей встречаются более одного раза, но не выдаст сами записи. Например, вы узнаете, что (Иванов, 
ivan@mail.ru) дублируется, но не получите три строки для анализа.
B (временная таблица) – технически можно: вставить уникальные записи во временную таблицу, потом сравнить. Но это громоздкий и медленный способ, особенно для больших объёмов.
D (добавить PK) – автогенерируемый ключ не найдёт существующие дубли. Он только предотвратит новые дубли, если добавить уникальное ограничение.

Реальный кейс:
В одной компании при миграции из старой CRM в новую выяснилось, что в таблице 
customers15% записей – дубли по ФИО+email. Аналитик использовал ROW_NUMBER(), сгенерировал отчёт с дублями и передал бизнесу на чистку. Без оконных функций пришлось бы писать сложные самосоединения, которые работали бы часы.

Что должен зафиксировать аналитик в требованиях к качеству данных:
«Периодически проводить проверку на дубли по критическим полям с использованием оконных функций».
«Результаты проверки должны включать все дублирующиеся строки, а не только комбинации полей».

Вывод: Для выявления полных дубликатов записей (а не просто факта дублирования) оконная функция 
ROW_NUMBER() – самый эффективный и наглядный инструмент.
Please open Telegram to view this post
VIEW IN TELEGRAM
№4862 категория вопросов: #INTEGRATION
4862. Два сервиса должны обмениваться данными. Если сервис-получатель временно недоступен, данные теряются. Какой тип взаимодействия выбрать?
Anonymous Quiz
5%
Синхронный REST-вызов с повторными попытками
89%
Асинхронная очередь с гарантированной доставкой
2%
Периодическая синхронизация по расписанию
4%
Общая база данных для обмена