Системный анализ | Ольга Пономарева
26.9K subscribers
2.31K photos
42 videos
19 files
871 links
4975950140
Ольга Пономарева, старший системный аналитик с опытом более 8 лет

Выпустила более 1000 учеников, которые увеличили свой доход и прокачали скиллы

Найдите обучение для себя на сайте моей школы System Analyst: https://systemanalyst.life
Download Telegram
Как аналитику понять, что нужен фичатогл для фичи?
Для того, чтобы прописать в документации о необходимости фичатогла аналитику необходимо понять минусы и плюсы.

Плюсы и минсуы
Плюс - задача хорошо декомпозирована и мёржится небольшими порциями
Минусы
- постоянные merge-конфликты в основной ветке, которые вам потребуется разрешать
- сложность тестирования: при выходе нового релиза, QA инженеры тестируют все фичи, которые в него входят, а также пробуют включать и выключать их, используя feature switcher-ы. Это требует большого количества дополнительного времени, так как желательно протестировать всевозможные комбинации флагов
-появление мёртвого кода: значения многих feature toggle-ов не меняются на протяжении длительных промежутков времени или не меняются вовсе, и таким образом код, написанный для другого значения флага, фактически становится «мёртвым»

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

Как прописать фичатогл в документации:
Название фичатоглов продумывает аналитик, в компании может быть стандатизировано название, пример фичатогла на добавление экрана подписания документов для кредита наличными в мобильном приложении банка:
mbios_17899_signed_documents_cashloanflow
mband_15894_signed_documents_cashloanflow

где mbios_17899 - номер задачи в Jira, а igned_documents_cashloanflow - описание фичи, причем фичатогл описывается на каждую мобильную платформу
2
Для тех, кто любит хакатоны!
Призовой фонд 1 700 000 рублей!
Дополнительные бонусы:
возможность получить работу или стажировку
новогодний мерч, подарки от партнеров и сертификаты
менторская поддержка от топовых экспертов
мастер-классы, лайфхаки и много полезных знакомств
Кого ждут в участии:
-python-специалисты, программисты C++ / C#, -DevOps-специалисты, NLP-инженеры, ML-специалисты, -Data scientist, NLU Specialist, UX/UI
продактов, генераторов идей, аналитиков, дизайнеров, финтех
👍3
Чтобы всех отыскать, GraphQL-ем собрать
При изучении русскоязычных статей, выступлений и вакансий возникает ощущение, что GraphQL перешел из разряда хайповой концепции в штатную технологию. Если так, то пришло время заглянуть в особенности ее использования в реальной жизни.

🗓15 декабря (четверг) 18:30

Мы поговорим с Денисом Лукьяновым, руководителем backend разработки Samokat.tech, о задачах и вопросах, с которыми мы встретимся при использовании GraphQL.

Что обсудим
- GraphQL как концепция и протокол
- Инструменты описания и тестирования GraphQL-сервисов
- GraphQL и (микро)сервисная архитектура
- Неочевидные задачи проектирования GraphQL-сервисов

Зарегаться и оставить вопросы участникам можно здесь
👍1
📚 Задача с собеседования на нормализацию базы данных:
"Представь, что к тебе обратился клиент-кондитер. Он продает торты/пирожные на нескольких точках. Свои продажи ведет в таблице exl (во вложение) Его запрос: табличка неудобная, хочу хранить инфу в виде базы данных. Спроектируйте мне базу данных. От тебя требуется нормализировать эту таблицу excel, чтобы в итоге у тебя получилось несколько нормализованных таблиц."
Если хотите потренироваться, то решение можете отправлять в комментарии)
#Собеседование
🔥1
Forwarded from Tory
Коллеги, доброго дня!

С моими выпускниками БА я начала проводить онлайн-встречи с "сундучком находок" на стыке БА и осознанности. Что нового дает в понимании себя бизнес-анализ .. и что дает понимание себя бизнес-анализу

Хочу, чтобы эта тема охватила как можно больше людей, для которых это важно. Поэтому рассказываю вам.

Вот запись нашей первой встречи "Осознанный диалог с собой (на принципах коммуникации, применяемых в ходе сбора требований)"
https://youtu.be/5ybMeZ_BX1M

Ближайшую встречу предлагаю провести 21.12 (ср) с 20:00 до 20:30 (Zoom)
Тема: Почему бизнес не хочет признавать очевидное (на примере [не]принятия себя AS IS)

Запись встречи опубликую

Участие бесплатно. Если хотите присоединиться к прямому эфиру и поделиться своими находками, пожалуйста, отметьте "+" ответом на сообщение. Я буду знать, что тема вам интересна. Пришлю ссылочку на Zoom вам в личку или опубликую в общем доступе (как разрешат админы ЛАФ).
🔥2
и еще одна задачка из собеседования:
«Нам необходимо перенести легаси систему заказчика на новый технологический стек (что именно меняется в плане стека: ос/яп/ и пр. остаётся за кадром и нас сейчас вряд ли интересует). Перенос осуществляется As Is, все функции приложения должны быть доступны потребителям после миграции. Как определить что такое «все» функции приложения, иными словами как написать ФТ к данной системе».
#Собеседования #Тестовые
👍1
Однажды мы рисовали event storming для процесса регистрации ИП, так мы пытались понять огромнейший процесс, который организовывался годами и разными людьми, а также искали узкие места, где можно улучшить этот процесс. А вы в своей работе используете эту диаграмму?
Forwarded from Event Storming (Sergey Baranov)
Нотация Event Storming без элементов модели Software Design.
📚 Поделюсь сегодня парой книг по аналитике:
1️⃣Анализ требований и проектирования систем с использованием UML- Мацяшек
2️⃣Требования для программного обеспечения. Рекомендации по сбору и документированию - Корнипаев И.
👍6
😊 Вчера проводила тестовое собеседование на позицию младшего аналитика и давала вот такую задачку по SQL. Для тех, кто хочет потренироваться - можете отправлять ответы в комментариях, позже скину ответ на задачу)
👍6
🧐 Сегодня на воркшопе у ребят возник вопрос Что такое партиции?

Применительно к хранению в Kafka используется два термина: партиции и топики.
В Kafka данные хранятся в топиках. Топики разделены на партиции. Партиции — это единицы хранения сообщений, а топики — что-то вроде контейнеров, в которых эти партиции находятся. У каждого топика есть уникальное имя, от которого зависят имена партиций. У одного топика могут быть партиции в разных брокерах, но сама партиция всегда привязана к одному брокеру.
В теории партиция — это неизменяемая последовательность сообщений. Продюсер в Kafka может добавлять сообщения в партицию, но не может удалять.
Надо понимать, что партиция привязана к брокеру. Если у нас, допустим, три брокера, а партиция1 существует в брокер1, в других брокерах ее не будет.

Каждая партиция разделена на сегменты. У каждого сегмента есть файл log, где хранится само сообщение, и файл index, где хранится позиция сообщения в файле log.

Kafka использует партиции, чтобы повысить пропускную способность и распределить нагрузку по всем брокерам в кластере.
К минусам партиций относятся:
- наличие большого числа партиций;
- не решают проблему неравномерности данных (партиции могут быть разного размера).
🤩 Стажировка в Яндексе
Виды фичатоглов

Есть разные фичатоглы, чаще всего аналитик встречается с тоглами типа release, но другие тоже неплохо бы знать:
🔸release toggles — скрывают неготовые фичи, уменьшают количество веток, открепляют запуск фичи от даты деплоя. Основной тип флагов.
🔸experiment toggles — используются для A/B тестирования, позволяют таргетировать функции на разные группы пользователей. Таким образом вы можете развернуть новый сервис на Х% аудитории, чтобы оценить нагрузку или собрать первые отзывы.
🔸ops toggles - отключают ресурсоёмкие функции, которая имеет неясные последствия для производительности. Например, так можно регулировать работу приложения на слабых смартфонах или застраховаться от падения производительности при запуске новой функциональности – флаг отключит модуль до того, как тот вызовет критический сбой.
🔸permissioning toggles — открывают доступ к платным фичам или закрытым функциям администратора. Такие флаги могут жить очень долго, быть очень динамичными и менять своё состояние при каждом запросе.

Каждый тогл имеет свои период жизни. Например, experiment toggles для АБ-теста нового экрана в приложении один из самых короткоживущих тоглов, сами АБ-тесты обычно проводят от 1 дня до месяца. Проверили быстро гипотезу “стало ли лучше с новым экраном”, как только собрали результаты - тогл выпилили из кода, поэтому такой тогл динамический и меняется с каждым реквестом.


Статьи:
🔸Feature Toggles (aka Feature Flags)
🔸Что такое feature toggle или как избавиться от мучительных мёржей и долгоживущих веток?
🔸Feature toggle
🤩21