Как аналитику понять, что нужен фичатогл для фичи?
Для того, чтобы прописать в документации о необходимости фичатогла аналитику необходимо понять минусы и плюсы.
Плюсы и минсуы
Плюс - задача хорошо декомпозирована и мёржится небольшими порциями
Минусы
- постоянные merge-конфликты в основной ветке, которые вам потребуется разрешать
- сложность тестирования: при выходе нового релиза, QA инженеры тестируют все фичи, которые в него входят, а также пробуют включать и выключать их, используя feature switcher-ы. Это требует большого количества дополнительного времени, так как желательно протестировать всевозможные комбинации флагов
-появление мёртвого кода: значения многих feature toggle-ов не меняются на протяжении длительных промежутков времени или не меняются вовсе, и таким образом код, написанный для другого значения флага, фактически становится «мёртвым»
Как решать минусы:
- чтобы понимать, какой эффект имеет тот или иной фичатогл и по какому ключу его искать в базе данных, следует создать подробную документацию с описанием всех фичатоглов.
- чтобы избежать появления “мёртвого” кода, нужно периодически удалять устаревшие фичатоглы и связанный с ними код
Как прописать фичатогл в документации:
Название фичатоглов продумывает аналитик, в компании может быть стандатизировано название, пример фичатогла на добавление экрана подписания документов для кредита наличными в мобильном приложении банка:
mbios_17899_signed_documents_cashloanflow
mband_15894_signed_documents_cashloanflow
где mbios_17899 - номер задачи в Jira, а igned_documents_cashloanflow - описание фичи, причем фичатогл описывается на каждую мобильную платформу
Для того, чтобы прописать в документации о необходимости фичатогла аналитику необходимо понять минусы и плюсы.
Плюсы и минсуы
Плюс - задача хорошо декомпозирована и мёржится небольшими порциями
Минусы
- постоянные 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
продактов, генераторов идей, аналитиков, дизайнеров, финтех
Призовой фонд 1 700 000 рублей!
Дополнительные бонусы:
возможность получить работу или стажировку
новогодний мерч, подарки от партнеров и сертификаты
менторская поддержка от топовых экспертов
мастер-классы, лайфхаки и много полезных знакомств
Кого ждут в участии:
-python-специалисты, программисты C++ / C#, -DevOps-специалисты, NLP-инженеры, ML-специалисты, -Data scientist, NLU Specialist, UX/UI
продактов, генераторов идей, аналитиков, дизайнеров, финтех
👍3
Forwarded from NextWay - анализ и проектирование в IT
Чтобы всех отыскать, GraphQL-ем собрать
При изучении русскоязычных статей, выступлений и вакансий возникает ощущение, что GraphQL перешел из разряда хайповой концепции в штатную технологию. Если так, то пришло время заглянуть в особенности ее использования в реальной жизни.
🗓15 декабря (четверг) 18:30
Мы поговорим с Денисом Лукьяновым, руководителем backend разработки Samokat.tech, о задачах и вопросах, с которыми мы встретимся при использовании GraphQL.
Что обсудим
- GraphQL как концепция и протокол
- Инструменты описания и тестирования GraphQL-сервисов
- GraphQL и (микро)сервисная архитектура
- Неочевидные задачи проектирования GraphQL-сервисов
Зарегаться и оставить вопросы участникам можно здесь
При изучении русскоязычных статей, выступлений и вакансий возникает ощущение, что GraphQL перешел из разряда хайповой концепции в штатную технологию. Если так, то пришло время заглянуть в особенности ее использования в реальной жизни.
🗓15 декабря (четверг) 18:30
Мы поговорим с Денисом Лукьяновым, руководителем backend разработки Samokat.tech, о задачах и вопросах, с которыми мы встретимся при использовании GraphQL.
Что обсудим
- GraphQL как концепция и протокол
- Инструменты описания и тестирования GraphQL-сервисов
- GraphQL и (микро)сервисная архитектура
- Неочевидные задачи проектирования GraphQL-сервисов
Зарегаться и оставить вопросы участникам можно здесь
👍1
📚 Задача с собеседования на нормализацию базы данных:
"Представь, что к тебе обратился клиент-кондитер. Он продает торты/пирожные на нескольких точках. Свои продажи ведет в таблице exl (во вложение) Его запрос: табличка неудобная, хочу хранить инфу в виде базы данных. Спроектируйте мне базу данных. От тебя требуется нормализировать эту таблицу excel, чтобы в итоге у тебя получилось несколько нормализованных таблиц."
Если хотите потренироваться, то решение можете отправлять в комментарии)
#Собеседование
"Представь, что к тебе обратился клиент-кондитер. Он продает торты/пирожные на нескольких точках. Свои продажи ведет в таблице exl (во вложение) Его запрос: табличка неудобная, хочу хранить инфу в виде базы данных. Спроектируйте мне базу данных. От тебя требуется нормализировать эту таблицу excel, чтобы в итоге у тебя получилось несколько нормализованных таблиц."
Если хотите потренироваться, то решение можете отправлять в комментарии)
#Собеседование
🔥1
Forwarded from Tory
Коллеги, доброго дня!
С моими выпускниками БА я начала проводить онлайн-встречи с "сундучком находок" на стыке БА и осознанности. Что нового дает в понимании себя бизнес-анализ .. и что дает понимание себя бизнес-анализу
Хочу, чтобы эта тема охватила как можно больше людей, для которых это важно. Поэтому рассказываю вам.
Вот запись нашей первой встречи "Осознанный диалог с собой (на принципах коммуникации, применяемых в ходе сбора требований)"
https://youtu.be/5ybMeZ_BX1M
Ближайшую встречу предлагаю провести 21.12 (ср) с 20:00 до 20:30 (Zoom)
Тема: Почему бизнес не хочет признавать очевидное (на примере [не]принятия себя AS IS)
Запись встречи опубликую
Участие бесплатно. Если хотите присоединиться к прямому эфиру и поделиться своими находками, пожалуйста, отметьте "+" ответом на сообщение. Я буду знать, что тема вам интересна. Пришлю ссылочку на Zoom вам в личку или опубликую в общем доступе (как разрешат админы ЛАФ).
С моими выпускниками БА я начала проводить онлайн-встречи с "сундучком находок" на стыке БА и осознанности. Что нового дает в понимании себя бизнес-анализ .. и что дает понимание себя бизнес-анализу
Хочу, чтобы эта тема охватила как можно больше людей, для которых это важно. Поэтому рассказываю вам.
Вот запись нашей первой встречи "Осознанный диалог с собой (на принципах коммуникации, применяемых в ходе сбора требований)"
https://youtu.be/5ybMeZ_BX1M
Ближайшую встречу предлагаю провести 21.12 (ср) с 20:00 до 20:30 (Zoom)
Тема: Почему бизнес не хочет признавать очевидное (на примере [не]принятия себя AS IS)
Запись встречи опубликую
Участие бесплатно. Если хотите присоединиться к прямому эфиру и поделиться своими находками, пожалуйста, отметьте "+" ответом на сообщение. Я буду знать, что тема вам интересна. Пришлю ссылочку на Zoom вам в личку или опубликую в общем доступе (как разрешат админы ЛАФ).
YouTube
Осознанный диалог с собой (на принципах коммуникации, применяемых в ходе сбора требований)
Цикл онлайн-встреч на стыке бизнес-анализа и осознанности личности
Презентация, которую использовала на встрече
https://docs.google.com/presentation/d/1D_Ta5puorUYnckP2W5QEwTLVBPQIXHuPBSSjZLhjJXQ/edit?usp=sharing
Пространство для общения по выбранной теме:…
Презентация, которую использовала на встрече
https://docs.google.com/presentation/d/1D_Ta5puorUYnckP2W5QEwTLVBPQIXHuPBSSjZLhjJXQ/edit?usp=sharing
Пространство для общения по выбранной теме:…
🔥2
и еще одна задачка из собеседования:
«Нам необходимо перенести легаси систему заказчика на новый технологический стек (что именно меняется в плане стека: ос/яп/ и пр. остаётся за кадром и нас сейчас вряд ли интересует). Перенос осуществляется As Is, все функции приложения должны быть доступны потребителям после миграции. Как определить что такое «все» функции приложения, иными словами как написать ФТ к данной системе».
#Собеседования #Тестовые
«Нам необходимо перенести легаси систему заказчика на новый технологический стек (что именно меняется в плане стека: ос/яп/ и пр. остаётся за кадром и нас сейчас вряд ли интересует). Перенос осуществляется As Is, все функции приложения должны быть доступны потребителям после миграции. Как определить что такое «все» функции приложения, иными словами как написать ФТ к данной системе».
#Собеседования #Тестовые
👍1
Однажды мы рисовали event storming для процесса регистрации ИП, так мы пытались понять огромнейший процесс, который организовывался годами и разными людьми, а также искали узкие места, где можно улучшить этот процесс. А вы в своей работе используете эту диаграмму?
Forwarded from Event Storming (Sergey Baranov)
Нотация Event Storming без элементов модели Software Design.
📚 Поделюсь сегодня парой книг по аналитике:
1️⃣Анализ требований и проектирования систем с использованием UML- Мацяшек
2️⃣Требования для программного обеспечения. Рекомендации по сбору и документированию - Корнипаев И.
1️⃣Анализ требований и проектирования систем с использованием UML- Мацяшек
2️⃣Требования для программного обеспечения. Рекомендации по сбору и документированию - Корнипаев И.
👍6
🧐 Сегодня на воркшопе у ребят возник вопрос Что такое партиции?
Применительно к хранению в Kafka используется два термина: партиции и топики.
В Kafka данные хранятся в топиках. Топики разделены на партиции. Партиции — это единицы хранения сообщений, а топики — что-то вроде контейнеров, в которых эти партиции находятся. У каждого топика есть уникальное имя, от которого зависят имена партиций. У одного топика могут быть партиции в разных брокерах, но сама партиция всегда привязана к одному брокеру.
В теории партиция — это неизменяемая последовательность сообщений. Продюсер в Kafka может добавлять сообщения в партицию, но не может удалять.
Надо понимать, что партиция привязана к брокеру. Если у нас, допустим, три брокера, а партиция1 существует в брокер1, в других брокерах ее не будет.
Каждая партиция разделена на сегменты. У каждого сегмента есть файл log, где хранится само сообщение, и файл index, где хранится позиция сообщения в файле log.
Kafka использует партиции, чтобы повысить пропускную способность и распределить нагрузку по всем брокерам в кластере.
К минусам партиций относятся:
- наличие большого числа партиций;
- не решают проблему неравномерности данных (партиции могут быть разного размера).
Применительно к хранению в Kafka используется два термина: партиции и топики.
В Kafka данные хранятся в топиках. Топики разделены на партиции. Партиции — это единицы хранения сообщений, а топики — что-то вроде контейнеров, в которых эти партиции находятся. У каждого топика есть уникальное имя, от которого зависят имена партиций. У одного топика могут быть партиции в разных брокерах, но сама партиция всегда привязана к одному брокеру.
В теории партиция — это неизменяемая последовательность сообщений. Продюсер в Kafka может добавлять сообщения в партицию, но не может удалять.
Надо понимать, что партиция привязана к брокеру. Если у нас, допустим, три брокера, а партиция1 существует в брокер1, в других брокерах ее не будет.
Каждая партиция разделена на сегменты. У каждого сегмента есть файл log, где хранится само сообщение, и файл index, где хранится позиция сообщения в файле log.
Kafka использует партиции, чтобы повысить пропускную способность и распределить нагрузку по всем брокерам в кластере.
К минусам партиций относятся:
- наличие большого числа партиций;
- не решают проблему неравномерности данных (партиции могут быть разного размера).
Многие спрашивают про Kafka. Нашла отдельный курс именно про это, там есть бесплатные 3 темы, в самый раз, чтобы аналитику понять основы Kafka. Остальные темы уже для разработчика.
https://slurm.io/kafka
https://slurm.io/kafka
Слёрм
Apache Kafka: база – курс по Апаче Кафка, онлайн-курс по диспетчеру Apache Kafka на платформе Слёрм
Курс по Apache Kafka База: узнайте как работать с платформой для передачи и обработки событий в реальном времени. Более 50 учебных программ по современным инструментам, подходам и методикам. IT-курсы, онлайн-интенсивы, вебинары и практикумы для инженеров…
👍10🤩1
Виды фичатоглов
Есть разные фичатоглы, чаще всего аналитик встречается с тоглами типа release, но другие тоже неплохо бы знать:
🔸release toggles — скрывают неготовые фичи, уменьшают количество веток, открепляют запуск фичи от даты деплоя. Основной тип флагов.
🔸experiment toggles — используются для A/B тестирования, позволяют таргетировать функции на разные группы пользователей. Таким образом вы можете развернуть новый сервис на Х% аудитории, чтобы оценить нагрузку или собрать первые отзывы.
🔸ops toggles - отключают ресурсоёмкие функции, которая имеет неясные последствия для производительности. Например, так можно регулировать работу приложения на слабых смартфонах или застраховаться от падения производительности при запуске новой функциональности – флаг отключит модуль до того, как тот вызовет критический сбой.
🔸permissioning toggles — открывают доступ к платным фичам или закрытым функциям администратора. Такие флаги могут жить очень долго, быть очень динамичными и менять своё состояние при каждом запросе.
Каждый тогл имеет свои период жизни. Например, experiment toggles для АБ-теста нового экрана в приложении один из самых короткоживущих тоглов, сами АБ-тесты обычно проводят от 1 дня до месяца. Проверили быстро гипотезу “стало ли лучше с новым экраном”, как только собрали результаты - тогл выпилили из кода, поэтому такой тогл динамический и меняется с каждым реквестом.
Статьи:
🔸Feature Toggles (aka Feature Flags)
🔸Что такое feature toggle или как избавиться от мучительных мёржей и долгоживущих веток?
🔸Feature toggle
Есть разные фичатоглы, чаще всего аналитик встречается с тоглами типа release, но другие тоже неплохо бы знать:
🔸release toggles — скрывают неготовые фичи, уменьшают количество веток, открепляют запуск фичи от даты деплоя. Основной тип флагов.
🔸experiment toggles — используются для A/B тестирования, позволяют таргетировать функции на разные группы пользователей. Таким образом вы можете развернуть новый сервис на Х% аудитории, чтобы оценить нагрузку или собрать первые отзывы.
🔸ops toggles - отключают ресурсоёмкие функции, которая имеет неясные последствия для производительности. Например, так можно регулировать работу приложения на слабых смартфонах или застраховаться от падения производительности при запуске новой функциональности – флаг отключит модуль до того, как тот вызовет критический сбой.
🔸permissioning toggles — открывают доступ к платным фичам или закрытым функциям администратора. Такие флаги могут жить очень долго, быть очень динамичными и менять своё состояние при каждом запросе.
Каждый тогл имеет свои период жизни. Например, experiment toggles для АБ-теста нового экрана в приложении один из самых короткоживущих тоглов, сами АБ-тесты обычно проводят от 1 дня до месяца. Проверили быстро гипотезу “стало ли лучше с новым экраном”, как только собрали результаты - тогл выпилили из кода, поэтому такой тогл динамический и меняется с каждым реквестом.
Статьи:
🔸Feature Toggles (aka Feature Flags)
🔸Что такое feature toggle или как избавиться от мучительных мёржей и долгоживущих веток?
🔸Feature toggle
martinfowler.com
Feature Toggles (aka Feature Flags)
Feature Flags can be categorized into several buckets; manage each appropriately. Smart implementation can help constrain complexity.
🤩2❤1