Анализ, коты, цветы и Катя – Telegram
Анализ, коты, цветы и Катя
458 subscribers
277 photos
11 files
158 links
Пишу о работе системным аналитиком в IT: кейсы, ошибки, рост и жизнь по ту сторону процессов.
Автор — @Pacifica_cathul, аналитик, ментор и человек, который всё это пережил лично.
Download Telegram
Что такое архитектурная ката?
Архитектурная ката — это практика, позволяющая отрабатывать навыки проектирования архитектуры, решая разнообразные задачи.

Давно мечтала попробовать, поэтому, когда увидела, что сообщество «Между скобок» организует бесплатную онлайн-кату, сразу вписалась. Организаторами выступили Вадим Клеба, Игорь Шеко и Григорий Скобелев. Спасибо им — здорово, что такие инициативы существуют, да еще и 🤌🏻бесплатно!🤌🏻

🫠 И вот вчера до 11 вечера была активность. И есть 2 впечатления:
1. Технические — пока не структурирована, планирую поделиться ею позже.
2. Личные — тут эмоции.

Очень рада, что решилась участвовать. Это было одновременно интересно, немного сыкотно🤣 и освежающе.

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

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

⭐️ В нашей команде были только системные аналитики, что добавило сложности. Сбалансированный состав с разработчиками или архитекторами сделал бы процесс продуктивнее.

🔥 Самая «пушка» — финал. Игорь Шеко в прямом эфире создал эталонную архитектуру, объясняя свои шаги. Не уверена, что это фишка всех кат.

В общем, архитектурные каты — отличный способ развиваться, особенно если вас интересует проектирование архитектуры. Очень рекомендую попробовать!
🔥5
Нагрузка этой недели 😢 не оставляет шансов структурированно рассказать о технических выводах по архитектурной кате. Поэтому делюсь набором несистематизированных мыслей и полезных ссылок:

1️⃣ На старте нужно строить стабильную работу системы, а затем обогащать ее сценариями сбоев — но только если вы не знаете нужного шаблона.
2️⃣ Использовать сторонние решения для стандартных задач можно и нужно.
3️⃣ Обсуждение лучше начинать с известного и постепенно добавлять детали, а не наоборот.
4️⃣ Если вам предоставили цифры, это не просто так. Даже простые расчеты, например бюджета, можно сделать за пять минут.
5️⃣ В современных системах важно учитывать как статические, так и динамические данные.
6️⃣ Убедитесь, что не ошиблись в расчетах, например, не промахнулись с цифрами на три нуля.
7️⃣ В таких форматах не стоит тратить время на авторизацию.
8️⃣ С самого начала договоритесь об уровне детализации.
9️⃣ Не отображайте на схеме все, что знаете, если не понимаете, зачем это нужно.
🔟 Даже в условиях архитектурной каты (1 час на обдумывание) можно найти время на DDD и Event Storming.

И да, видеостриминги это толстые клиенты)

Мы проектировали видеостриминговую платформу. Вот две полезные ссылки о ключевых решениях, которые пригодятся, если вы, как и я, о них не знали:
- SFU (Selective Forwarding Unit)
- WebRTC

Архитектурные каты — это навык, который можно развить. А как вы считаете?

И нужно, чтобы я рассказала заранее о таких активностях в следующий раз?
👍4🔥1
Моя история терпения: Учить английский 27 лет и всё равно быть на уровне начинающего

#выходнойконтент

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

👀 В 4 года у меня появился репетитор, который увлекательно рассказывал о языке и учил основам. Но репетитор стал проявлять ненужное внимание к моей маме, и занятия пришлось прекратить.

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

В университете ситуация немного изменилась. Я заучивала тексты вроде Samara Aerospace University, и неожиданно для себя через пару лет перешла на английские источники для научных проектов.

Примерно тогда же я установила приложение Lingualeo ✌🏼 и занималась в нем ежедневно почти 4 года. Пока не решила пройти тест в этом же приложении и получила уровень А1 🥲. Я была разочарована и удалила приложение вместе с подпиской.

Два года назад я вернулась к изучению языка — теперь уже через Duolingo (740 дней) и с новым репетитором 🫶🏻. Оказалось, что у меня большой словарный запас 💪🏼, но я так и не получила базовых знаний и нужного наставника. Уже два года я учу английский снова, и, преодолев страх ошибок, теперь могу поддержать простой диалог. Это приятно! И, конечно, я продолжаю обучаться.

К чему я это

Если вы чувствуете, что идёте по кругу в изучении чего-то важного, не переживайте: вы не одиноки. Вот, например, я — за 27 лет не освоила то, что многие преподаватели на YouTube обещают научить за 3 недели. But I don't give up ⚡️
🔥6👍43
Есть одно незавершённое дело у меня в этом году — статья на Хабр. Костяк материала уже есть, но идёт как-то очень медленно. Это тот самый доклад, что был на ЛАФ, про наставничество.

Кто хочет выступить в роли цензора и прожарить мою статью? Желательно на этой неделе.

От меня небольшой подарок из Сочи или консультация по системному анализу. 😊
🔥4👍2
Я очень люблю таблицы. Они позволяют структурировать информацию и делают её компактной.

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

Однако недавно списки стали попадать в "красные флаги" как признак текста, сгенерированного ChatGPT или другим ИИ.

Если посмотреть на мои посты, то я — ИИ. 😅

Это я к чему: не стоит ставить крест на списках. Вот автор их восхваляет и даёт массу рекомендаций, как использовать их правильно. Кстати, ИИ, судя по всему, эти советы уже прочитал.
👍4🔥3
Не успела я написать об одной архитектурной кате, как у другого сообщества System Design World завтра 12.12.24 планируется новая.

Судя по описанию, у них есть несколько иных интересных механик проведения каты, а также комфортные форматы, типа "/Я только посмотреть".

Для меня такие мероприятия каждую неделю — это too much. Но если, читая мои посты на прошлой неделе, вы тоже захотели поучаствовать, ещё есть время влететь!

PS: Ваши лайки и другие реакции показывают мне, что такие новости вам тоже интересны.
🔥5👍4
⚡️Описание требований к валидации в OpenAPI⚡️

Шаблон описания требований к валидации в текстовом формате мы уже разобрали здесь и здесь.
А как быть, если требования описываются в спецификации OpenAPI (Swagger)

OpenAPI — это не только инструмент для документации API, но и мощный способ формализации требований, включая валидацию данных. Давайте разберёмся, как описывать такие требования, используя доступные возможности и примеры.

Тип данных указывается с помощью ключа type. Поддерживаемые типы: string, number, integer, boolean, array, object.
type: string


Обязательность атрибута задаётся с помощью ключа required. Этот ключ указывается на уровне объекта и содержит список полей, которые обязательны для заполнения. Поля, не включённые в required, считаются необязательными.
required:
- user


Для строк можно задать минимальную и максимальную длину с помощью ключей minLength и maxLength.

minLength: 5
maxLength: 63


А для чисел можно задать минимальные и максимальные значения с помощью ключей minimum и maximum.

minimum: 1
maximum: 2147483647

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

Например, разрешить только буквы, цифры и символы _ можно с помощью такого выражения:

pattern: "^[a-zA-Z0-9_.]*$"


Если атрибут может принимать строго определённые значения, то для этого удобно использовать ключ enum, в котором перечисляются все допустимые варианты.

enum:
- admin
- root


Если, наоборот, необходимо указать запрещённые значения, можно использовать ключ enum в сочетании с ключом not.

not:
enum:
- admin
- root


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

example: 2024-11-22T14:25:35Z


Если формат вашего атрибута стандартный, можно использовать дополнительное свойство для типов format для уточнения данных. В OpenAPI есть ряд стандартных форматов, которые в Swagger UI используются для автоматической проверки. Однако, это работает только со стандартными форматами, такими как date, email, uuid и другими. Требования для этих форматов фиксированы и изменить их нельзя. Вы также можете объявить свои форматы, но автоматическая проверка для них не поддерживается.

format: int64


Ну и последнее: если вам нужно человекочитаемое описание, то ничего лучше ключа denoscription до сих пор не придумали.

denoscription: IPv6-адрес, например, 2001:db8::1


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

А если пост наберёт 10 реакций, выложу JSON-файл с примерами и разбором ещё нескольких ключей для валидации.
🔥145👍2
Вау, вас здесь уже больше 100! (Да-да, знаю, как только это произнесу, пара человек сразу отписывается. Проверим? 😉). Но самое главное — только 18% из вас мои родные и друзья. Похоже, пора познакомиться!

Меня зовут Катя Пантелей. Сейчас я работаю в компании группе Астра над платформенном распределенном решением для системных администраторов ALD Pro. Я совмещаю роли системного аналитика и фича-овнера (о последнем расскажу подробнее в январе).

В IT я уже больше 8 лет. И попала я по блату: я пришла инженером-робототехником на единственный инженерный проект в IT-компании. Быстро разобралась с задачами, а потом, как водится, начала помогать всем подряд. Так и оказалось, что моя душа лежит к задачам бизнес- и системного анализа.

За свою небольшую карьеру успела побывать генеральным техническим директором, разработчиком микроконтроллеров и фотографом. А ещё чуть было не стала владельцем собственной ИТ-компании.
Но самым лучшим решением было сосредоточиться и направить всю энергию на развитие себя как системного аналитика.

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

Я считаю, что сеньор за три года — это миф, поэтому спокойно называю себя крепким мидлом. Для меня важнее, чтобы мои навыки были ценны и адекватно оценивались. Пока это работает, я довольна.

Еще я люблю своих кошек, и верю что фотографией котика контент не испортить.

Я в жизни откровенная и искренняя, а это может одновременно привлекать и пугать. Но надеюсь, вы останетесь, потому что впереди нас ждет много полезного, интересного и, возможно, немного сумасшедшего.

Ну вот, вы узнали немного обо мне. Теперь честно: кто вы, как связаны с ИТ и как сюда попали? 😊
20
Анализ, коты, цветы и Катя pinned «Вау, вас здесь уже больше 100! (Да-да, знаю, как только это произнесу, пара человек сразу отписывается. Проверим? 😉). Но самое главное — только 18% из вас мои родные и друзья. Похоже, пора познакомиться! Меня зовут Катя Пантелей. Сейчас я работаю в компании…»
Одна из целей поездки в Сочи — познакомиться с местным бизнес-сообществом. Говорят, в районе Красной Поляны собираются молодые, амбициозные люди, которые горят своими проектами и строят успешные компании. Это показалось отличной возможностью вдохновиться, понять, подходит ли мне такая среда, а заодно, возможно, найти идеи для сотрудничества.

Я вступила в специальный чат, и там действительно движуха! Всё, как в мотивационных картинках: каждый второй — бизнесмен, каждый третий — консультант, который делает бизнесменов ещё успешнее. «Вот оно, сейчас пойдет жара!» — думала я.

Но оказалось, что все мероприятия — бизнес-завтраки, встречи, обсуждения успехов — проходят строго в будни с 8:00 до 15:00.

Фильтруют "рабочий народ" вроде меня. 😅

#выходнойконтент
👀8👍2🔥2
Цена на конференции кусается? 5 идей, как попасть на конференцию

Итак, с конференциями определились. А что делать, если компания не оплачивает поездку, а стоимость участия велика (некоторые стоят до 65к)?

Есть несколько вариантов, почти все из них я пробовала:

1️⃣ Оплатить самостоятельно. Посетить всё не получится, но и не нужно. Выбирайте одну-две самых интересных для вас. И прямо сейчас заведите копилку, куда регулярно перечисляйте фиксированную сумму на профессиональные мероприятия, и тратьте её раз в полгода или год.

Кстати, профессиональные сообщества (например, GetAnalyst) часто предлагают скидки, а организаторы конференций — промокоды.

2️⃣Податься как спикер. Это отличный способ получить максимум. Для спикеров участие всегда бесплатное, часто оплачивается жильё и иногда — проезд. В IT проезд мне пока не оплачивали, но в других сферах я объехала полстраны именно так.

3️⃣ Волонтёрство. Часто организаторы ищут помощников. Если объявлений нет, можно написать им напрямую. Я обычно волонтёрю как фотограф, но есть и другие задачи: писать посты, встречать участников, помогать в залах.
Да, посмотреть все доклады не удастся, но можно договориться посетить самые интересные. А волонтёрское сообщество — это всегда ценные знакомства и крутые ребята ❤️.

4️⃣ Работа в программном комитете. Пока у меня такого опыта нет, но это отличный вариант для профессионального роста.

5️⃣ Организация собственной конференции. Можно начать с небольших мероприятий в вашем городе. Это непростой, но полезный опыт. Однажды мы с друзьями организовали конференцию (не в IT), и это оказалось классной идеей и большой проблемой.

Такие простые (и не очень) способы сделать конференции частью вашего профессионального развития.

Стало что-то неожиданным? Или может у вас есть свои секретные способы?
🔥71👍1
Я продолжаю работать с менти в рамках программы от MENTOR IN TECH 6.0

Помимо общения с менти, есть и обучение для нас, менторов. Благодаря им, за время старта программы я стала точно лучше как ментор.

Вот 10 случайных мыслей, которые я уже вынесла для себя (без моих комментариев):

1️⃣ Начинайте общение с менти с договорённости о конкретном, измеримом и позитивном завершении.

2️⃣ Уточните, каких тем человек не хочет обсуждать.

3️⃣ Менторинг не должен подтверждать важность ментора.

4️⃣ Сначала учимся адекватно воспринимать окружающих, а затем идём в менторинг.

5️⃣ Лучший ментор — тот, кто рассматривает менти как партнёра в процессе развития.

6️⃣ Ментор — не спасатель.

7️⃣ Сначала учимся слушать, потом говорить.

8️⃣ Большинство менти обращаются за помощью, когда уже испробовали другие способы.

9️⃣ Отклоняйте работу с менти, если не уверены.

🔟 Если менти не готовы воспринимать негативную обратную связь, они ещё не готовы к менторингу.

Если бы вам, нужно было дать всего 1 совет начинающему ментору, чтобы это было?
👍43
validation-spec-template.json
5.5 KB
JSON, OpenAPI и 20 реакций — делюсь сокровищем!

Реакций собралось не 10, а целых 20! Не передать, как я рада. Каждый пост создаю с душой, и ваши реакции для меня очень важны❤️

Но я, признаться, ленивая. 😆 Поэтому в глубине души надеялась, что реакций не наберётся, и мне не придётся причесывать JSON-файл. Но ваша активность меня приятно удивила, так что пришлось наводить порядок. 😊

Для тех, кто ещё не в курсе, вот уже почти два месяца я делюсь с вами своим опытом по валидации. Вот несколько тем, которые мы уже обсудили:

Задачи про валидацию.
Посты про регулярки (Раз, Два)
Шаблон требований.
Это предпоследний из серии постов с шаблоном JSON-файла, который показывает, как можно описать требования с использованием OpenAPI.

Как обычно, сохраняем, осмысляем и используем, когда появится подходящая задача!

В комментарии приложу более привычный yaml.

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

#OpenAPI #JSON #СистемныйАнализ #требованиякИТсистемам
🔥42👍2
🎉 В новый год хочу войти с новым названием сообщества.

С одной стороны, это может показаться ерундой, но старое название мне уже не очень нравится — оно плохо запоминается. После общения с ИИ и мужем мы нагенерировали несколько вариантов. Помогите выбрать!

Цель — сделать так, чтобы подписчикам было понятно, о чем мой блог, а новичкам было легко найти меня. Ну и хотелось бы, чтобы в названии оставался автор.

Вот несколько идей:

1️⃣ Блокнот системного аналитика: от багов до успехов
2️⃣ На связи системный аналитик: Катерина Пантелей
3️⃣ Системный анализ на грани (здорового оптимизма)
4️⃣ Мама, я системный аналитик!
5️⃣ Катя Пантелей: анализ без багов
6️⃣ Катя Пантелей: от смысла к ИТ системам
7️⃣ Системный анализ с DJ Катя Пантелей
8️⃣ Оставить старое.

Свои варианты и мнения можете написать в комментариях! Опрос прикрепляю.
1🤔1
Сколько раз обещала себе не покупать новых книг, пока не разберусь со старыми, — но вот опять! Ставь реакции, если такой же.

Сначала короткая оценка электронной версии, затем мысль: «Оно мне нужно».

📚 И вот вместо обеда бегу на пункт выдачи забирать книгу Роберта Мартина «Чистая архитектура».

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

Подробности расскажу позже! 😉
9👍3💩1
Ошибки на ретро: что я поняла после последнего спринта

🤌🏻Ретроспектива — это процесс анализа командой прошедшего спринта, релиза или другого периода работы. Вариантов проведения много, и каждая команда делает это немного по-своему. Мои мысли могут быть полезны в разных форматах и, возможно, сделают их эффективнее. Хочу поделиться, без подробного их анализа и раскрытия нюансов.

⭐️Этап подготовки ⭐️

1. Формировать вопросы заранее.
Классно, если команда формирует вопросы заранее. Но это плохо работает, если модератор перед встречей не приоритизирует их.

2. Напомнить правила ретроспективы.
Казалось, они должны быть понятны, но будем честны — не всем. Потратить 3 минуты на повторение не страшно.

⭐️Проведение⭐️

3. Не только о плохом.

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

4. Токсичность на ретро.

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

5. Ограничить время обсуждения вопросов.

Заранее решите, сколько времени вы будете обсуждать каждый вопрос, и ставьте таймер. Для первого рассмотрения оптимально 8 минут.

6. Контроль модератора.

Если обсуждение уходит не туда, модератор должен остановить его. Иногда даже раньше, чем закончится время на таймере.

7. Назначать ответственных и сроки.

При поиске решения обязательно определяйте, кто за что отвечает и когда это нужно сделать.

8. Проблемы или часть нормы?

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

9. Голосование.

Это крутая методика для разрешения конфликтов и принятия решений.

✌🏼Завершение✌🏼

10. Обратная связь по ретроспективе.

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

А вы когда-нибудь сталкивались с токсичными участниками на ретроспективе? Как решали эту проблему?
👍7
В компании, заметив, как сложно мне даётся написание статьи для Хабра, предложили попробовать начать с более простого формата — ХабрПостов, в рамках челленджа «ХабрКиада».

Хабр — это самое крупное сообщество ИТ-специалистов и не только. Публиковаться там одновременно почётно и страшно. Сообщество активное и живое, и, честно говоря, меня пугала сама мысль о публикации. Но статьи на Хабре — часть моего плана профессионального развития, поэтому я, конечно, согласилась.

Тема давно крутилась у меня в голове. После более чем 50 собеседований и множества разговоров с коллегами, я поняла, что даже сами системные аналитики не всегда понимают, кто они такие. Но мне казалось, что я просто ищу оправдание своей слабости в некоторых технологиях. Но после того, как наткнулась на заметку Дениса Бескова, осознала: мои наблюдения имеют смысл.

Так появилась моя первая статья на Хабре Системный аналитик - проблемная должность. Пусть это и «всего лишь» пост)

Если у вас есть мысли или опыт на тему того, кто такие системные аналитики и чем они на самом деле занимаются, буду рада обсудить это в комментариях! Переходите по ссылке, читайте и делитесь своим мнением.
🔥10👍3
Анализ, коты, цветы и Катя pinned «В компании, заметив, как сложно мне даётся написание статьи для Хабра, предложили попробовать начать с более простого формата — ХабрПостов, в рамках челленджа «ХабрКиада». Хабр — это самое крупное сообщество ИТ-специалистов и не только. Публиковаться там…»
Спасибо всем, кто принял участие в голосовании по имени блога.

Большинство голосов за старое название. А второй популярный вариант "Мама, я системный аналитик!" за время голосования перестал нравится мне.

Поэтому остаюсь со старым названием "Анализ, коты, цветы и Катя" и продолжаю вас развлекать профессиональным контентом, котиками, и, возможно, когда-нибудь расскажу грустную историю почему появились в названии "Цветы".
🔥9👍2
Если вы еще не поняли, скоро Новый год. 😆 Та самая волшебная дата, к которой горят все дедлайны и сходят с ума коллеги. Надеюсь, вы не в числе последних.

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

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

Исчезаю с радаров до января. До встречи в новом году.
🔥84👍1