вроде ничего не произошло, а внутри свербит
"надо что-то менять"
и где-то в глубине: "а может попробовать?.."
ну и тут, конечно, начинается база
но ведь ты уже знаешь, чем это заканчивается
после майских
конечно, ничего критичного, просто… ничего не меняется
хотя правда в том, что старт вообще никогда не будет выглядить как "ну всё, я готов на 100%"
обычно это ближе к: "блин, я пока не до конца понимаю, но хоть попробую"
если ты давно смотришь в сторону системного анализа -
вот он! тот самый момент, когда можно не просто думать, а зайти и попробовать
у нас на курсе не про "послушал и забыл"
ты делаешь реальный проект и постепенно начинаешь понимать, как это всё работает в жизни, а не в теории
если откликается - залетай!
потому что "потом" обычно не наступает)
ссылочку дублируем,
Please open Telegram to view this post
VIEW IN TELEGRAM
prosystalent.ru
Профессия «Системный аналитик» за 6 недель. Обучаем и трудоустраиваем в IT — вы платите только после выхода на работу
Онлайн курс, помощь в трудоустройстве, заработная плата от 140 000 руб
🔥5⚡3🍾3
Чем на самом деле занимается системный аналитик
(часть 1 - ожидание vs реальность)
Когда люди думают о системном анализе, представляют примерно так:
👉 я буду продумывать систему
👉 писать требования
👉 разбираться в логике
Звучит привлекательно и вроде бы интеллектуально, правда?😐
Но давай посмотрим на то,
что происходит💬 на самом деле💬
📏 📏 📏 📏
📍 Ожидание №1: "Я буду писать требования"
📍 Реальность:
📏 📏 📏 📏
📍 Ожидание №2: "Я буду много думать"
📍 Реальность:
📏 📏 📏 📏
📍 Ожидание №3: «Я буду работать с документацией»
📍 Реальность:
📏 📏 📏 📏
📍 Ожидание №4: "Я просто связующее звено"
📍 Реальность:
📏 📏 📏 📏
✅ И вот что интересно:
Редко дают чёткое задание "делай вот это".
Обычно есть идея, ограничения, а ты разберись, что с этим делать.
Вот где начинается настоящая работа аналитика! Не просто ТЗ писать, а понять, что происходит, собрать картину, договориться, и только потом оформлять.
📏 📏 📏 📏
‼️ И хотим сказать прямо, чтобы не сложилось ощущение, что это ад)
Да, иногда сложно и утомительно.
Да, бывает жутко много разговоров, а бывает и нет.
Но это одна из самых живых ролей в айти.
Ты не сидишь над одной задачей неделями, постоянно переключаешься,
видишь, как идея превращается в продукт, и реально влияешь на то, как система будет работать!
не код пишешь, а решаешь, что и зачем вообще должно быть.
📏 📏 📏 📏
Если любишь разбираться, связывать разные куски, общаться и наводить порядок в неразберихе➡️ эта работа быстро затягивает!
Проверено👍
📏 📏 📏 📏
⭐️ В следующий раз расскажем про реальные проблемы аналитика
и нужные навыки, которые действительно помогают)
(а не просто красиво выглядят в резюме)
⏪ Если узнал себя или подумал "а я не так это себе представлял",
или наоборот, стало ещё интереснее - жми любую реакцию ниже⏩
Когда люди думают о системном анализе, представляют примерно так:
Звучит привлекательно и вроде бы интеллектуально, правда?
Но давай посмотрим на то,
что происходит
🍑 придётся вытаскивать их из людей, которые сами толком не знают, что им нужно:
"сделайте удобно"/"как сейчас, только лучше"/"ну вы же аналитик, помозгуйте там"➡️ эти фразы будут тебе очень знакомы)
Аналитик вроде должен угадать, как лучше, чтобы разработка могла стартовать и идти дальше.
😑 постоянные уточнения, проверки, возврат к уже сделанному:
понял➡️ уточнил➡️ оказалось по-другому➡️ переделал.
Причина не в твоей некомпетентности( 🤪 🤪 🤪 ) , а просто система - это сложный сплав разных зависимостей, и сразу всё не расскажут.
😨 основная часть времени проходит на созвонах с бизнесом, разработкой, тестировщиками, иногда со всеми сразу.
Иногда писать➡️ не главное (но взаимосвязанное), важнее договориться и понять друг друга.
😕 Ты становишься человеком, через которого проходит всё.
Если где-то что-то пойдёт не так, упрёки сразу на тебе:➡️ аналитик не так описал/забыл учесть/аналитик не донёс
Даже если проблема абсолютно не в твоей зоне ответственности.
Редко дают чёткое задание "делай вот это".
Обычно есть идея, ограничения, а ты разберись, что с этим делать.
Вот где начинается настоящая работа аналитика! Не просто ТЗ писать, а понять, что происходит, собрать картину, договориться, и только потом оформлять.
Да, иногда сложно и утомительно.
Да, бывает жутко много разговоров, а бывает и нет.
Но это одна из самых живых ролей в айти.
Ты не сидишь над одной задачей неделями, постоянно переключаешься,
видишь, как идея превращается в продукт, и реально влияешь на то, как система будет работать!
не код пишешь, а решаешь, что и зачем вообще должно быть.
Если любишь разбираться, связывать разные куски, общаться и наводить порядок в неразберихе
Проверено
и нужные навыки, которые действительно помогают)
или наоборот, стало ещё интереснее - жми любую реакцию ниже
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍5🔥3
Чем на самом деле занимается системный аналитик
(часть 2 - с чем ты столкнёшься и что действительно важно)
В прошлом посте мы немного снизили градус ожиданий.🤷♀️
🔜 Если вкратце: аналитик - это не только писать ТЗ, но и уметь разобраться в огромной системе. (поэтапно)
➡️ А теперь честно: что на самом деле ждёт тебя на работе?
📌 Почти никогда ты не получишь идеально сформулированную задачу
❌ Не будет таких моментов: "сделай вот это, вот тебе детальное описание"
✅ Гораздо чаще:
👉 надо как-то улучшить процесс, подумай/ что-то не работает как надо, найди где проблема/пользователи жалуются, что неудобно, надо подумать над обновлением
Ну и здесь начинается важное:
❌ задаёшь вопросы/вытягиваешь детали/собираешь общую картину
👉 это и есть твоя настоящая работа.
📌 Люди говорят одно, думают другое и делают третье
Классика жанра:
👉 бизнес требует: нам нужна вот такая фича, только так и никак иначе
👉 разработчики отвечают: это нереализуемо
👉 пользователь в ответ: да я вообще этим не пользуюсь))
И вот ты в центре этого кружения.👀
👉 Твоя задача - не просто записывать слова, а понять, что на самом деле нужно системе.
📌 Ты будешь ошибаться (и это нормально 🧘 )
Обязательно что-то упустишь, не спросишь или плохо поймёшь.
И это вскрывается: во время разработки/на тестах, а иногда и в проде
❗️ Это не значит, что ты плохой аналитик, это правда часть процесса, через которую проходят все, вообще все.
📌 70% работы - это общение 📞
И речь не о схемах, не о UML и не о крутых терминах, заученных наизусть
👉 Речь о том, чтобы:
❌ задать правильный вопрос/уметь переформулировать/договариваться/объяснять одну и ту же мысль разным людям по-разному
Поэтому на работе жёстко прокачиваются навыки общения против твоей воли)
⏭ И ну вот почему возникает разрыв⏮
👉 Бывает так:
человек знает теорию, рассказывает на интервью весь свой прекрасный опыт.
👉 А потом выходит в реальную работу и думает о том, с чего вообще начать?
Потому что на практике не всё крутится вокруг терминов, там и мышление, и постоянная практика.
📌 Но есть и хорошая новость!
Всё это кажется сложным, пока не возьмёшься за дело. )
Навыки аналитика - не дар, а то, что можно и нужно тренировать.
Со временем ты начинаешь формироваться как специалист и ты сможешь:
😔 лучше формулировать вопросы
😔 быстрее видеть слабые места
😔 понимать, когда тебя пытаются ввести в заблуждение
😔 увереннее общаться с командой
И однажды себя осенит: да я вообще уже шарю за многое тут! и как вы без меня жили...😐
И это, наверное, один из самых кайфовых моментов в профессии)
🧷 🧷 🧷 🧷 🧷
Если после этого поста стало чуть меньше тумана в голове,
то значит мы всё делаем правильно)
можешь дать знать реакцией👇
В прошлом посте мы немного снизили градус ожиданий.
Ну и здесь начинается важное:
Классика жанра:
И вот ты в центре этого кружения.
Обязательно что-то упустишь, не спросишь или плохо поймёшь.
И это вскрывается: во время разработки/на тестах, а иногда и в проде
И речь не о схемах, не о UML и не о крутых терминах, заученных наизусть
Поэтому на работе жёстко прокачиваются навыки общения против твоей воли)
человек знает теорию, рассказывает на интервью весь свой прекрасный опыт.
Потому что на практике не всё крутится вокруг терминов, там и мышление, и постоянная практика.
Всё это кажется сложным, пока не возьмёшься за дело. )
Навыки аналитика - не дар, а то, что можно и нужно тренировать.
Со временем ты начинаешь формироваться как специалист и ты сможешь:
И однажды себя осенит: да я вообще уже шарю за многое тут! и как вы без меня жили...
И это, наверное, один из самых кайфовых моментов в профессии)
Если после этого поста стало чуть меньше тумана в голове,
то значит мы всё делаем правильно)
можешь дать знать реакцией
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥3
Есть такая штука, с которой почти все сталкиваются одинаково:
Ты открываешь сайт, кликаешь…а дальше полный ступор, непонятно, куда смотреть
И дальше два сценария:
Честно говоря, работать аналитику без DevTools - это всё равно, что идти вслепую.
Ты не видишь, какие именно данные отправляются, что приходит в ответ, где зарыта ошибка.
- не работает
- что именно?
- ну… всё😬
DevTools - это не что-то сложное.
Это просто инструмент, который показывает, как система реально работает.
Не по документации, не как задумывалось, а как есть
Самое полезная штука - вкладка Network.
Открываешь её и - бац! многое становится на свои места:
- ааа, фронт не тот параметр шлёт
- а бэк вообще другое отдаёт
Ты меньше дёргаешь разработчиков, быстрее находишь проблемы и в целом начинаешь лучше понимать систему.
Плюс это сразу видно - кто реально понимает, как этим пользоваться.
Когда ты начинаешь открывать DevTools раньше, чем писать кому-то с вопросом.
Отсюда начинается настоящий прогресс)
Поначалу, конечно, может казаться, что там всё сложное и непонятное.
Без паники!
DevTools не нужно выучить наперёд, его просто надо начать использовать)
Если хотите, можем показать на реальном примере: что именно смотреть в Network и как быстро находить проблему.
Жми любую реакцию, разберём
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9🔥6👀4
🔌 Аналитику про API: почему без этого ну совсем никак?
Это случается почти с каждым новичком↘️
Тебе говорят:
➡️ слушай, а проверь, какие там параметры улетают
➡️ глянь, что бэк отвечает
➡️ там 400-я ошибка, посмотри, что не так
😔 И вот ты сидишь, и в голове лишь один вопрос:
а что именно мне там искать?..😐
✔️ И очень быстро становится ясно:
без понимания того, как работает API, ты просто не видишь и половины всего, что происходит.
📌 А что же там на самом деле происходит?
По сути, любое твое действие на сайте - это почти всегда одна и та же цепочка:
запрос и ответ.
Нажал кнопку, и вот уже что-то улетело на сервер, а потом что-то вернулось обратно.
Вся логика системы, ее сердцевина, часто бьется именно здесь.
📌 И в чем же тогда загвоздка, если ты совсем не врубаешься в эти процессы?
Ну, смотри:
🔸 ты понятия не имеешь, какие данные на самом деле уходят
🔸 не можешь понять, где именно засела ошибка
🔸 сам себя толком проверить не в состоянии
🔸 да и постоянно висишь на крючке у разработчиков
😔 Отсюда и рождаются знакомые до боли диалоги:
📌 Что же тогда стоит держать в голове,
и при этом не углубляясь в дебри разработки?
Не надо тебе становиться программистом.
Но вот что по минимуму, на базовом уровне, знать очень важно:
👉 что вообще такое запрос: то есть, что именно система отсылает
👉 и что такое ответ: что она потом получает
Стоит еще разобраться, какие там бывают параметры и как они передаются,
ну и, конечно, что значат все эти статусы: успех это или все-таки ошибка.
👍 Вот этих знаний уже вполне достаточно, чтобы ты чувствовал себя гораздо увереннее и мог ориентироваться.
📌 Ну и ещё моментик
👌 Аналитик, вполне может сам описывать API:
говорить про методы, про параметры, какие будут ответы и возможные ошибки – все это часть его работы.
✖ Но вот в чем главная фишка: аналитик не пишет код.
Его задача – глубоко понимать, как все устроено и как оно должно выглядеть с точки зрения логики.
📌 И что тебе это даст на практике?
Ну, очень много полезного:
😔 ты спокойно открываешь DevTools и впрямь понимаешь, что там творится.
😔 проблему находишь гораздо быстрее,
😔 можешь уже предметно поговорить с разработчиками о задачах,
😔 да и вообще чувствуешь себя в работе куда увереннее.
Это ли не прелесть навыков)
Это случается почти с каждым новичком
Тебе говорят:
а что именно мне там искать?..
без понимания того, как работает API, ты просто не видишь и половины всего, что происходит.
По сути, любое твое действие на сайте - это почти всегда одна и та же цепочка:
запрос и ответ.
Нажал кнопку, и вот уже что-то улетело на сервер, а потом что-то вернулось обратно.
Вся логика системы, ее сердцевина, часто бьется именно здесь.
Ну, смотри:
- Что-то не работает
- А что именно?
- Ну... просто не работает😳
и при этом не углубляясь в дебри разработки?
Не надо тебе становиться программистом.
Но вот что по минимуму, на базовом уровне, знать очень важно:
Стоит еще разобраться, какие там бывают параметры и как они передаются,
ну и, конечно, что значат все эти статусы: успех это или все-таки ошибка.
говорить про методы, про параметры, какие будут ответы и возможные ошибки – все это часть его работы.
Его задача – глубоко понимать, как все устроено и как оно должно выглядеть с точки зрения логики.
Ну, очень много полезного:
Это ли не прелесть навыков)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥3😎2❤1
🔌 Поговорим про интеграции:
зачем они вообще нужны аналитику?
🔖 Сначала многие представляют себе систему как-то так:
это просто сайт.
На сайте:
есть экран➡️ есть кнопка ➡️ за ней какая-то логика.
🔖 Но очень скоро приходит понимание:
Сайт - это далеко не вся система. Бывает, что это лишь красивая обложка)
Ведь стоит только начать копать в любую реальную задачу поглубже, как всплывают детали:
〰️ данные приходят из одной системы
〰️ сохраняются уже в другой
〰️ потом проверяются в третьей
〰️ а иногда и вовсе куда-то отправляются дальше
И всё это работает благодаря запросам)
По факту, интеграция➡️ это то, как разные системы общаются между собой, используя API.
➡️ Одна система говорит другой, отправляя запрос:
➡️ А вторая ей в ответ:
или
💙 Давайте посмотрим на что-то совсем простое:
вот, например, логин.
💙 Вы вводите свои данные, нажимаете кнопку "Войти".
Снаружи кажется, что сайт тебя или пустил, или не пустил.
Но если заглянуть под капот, то там происходит вот что:
👉 фронт отправляет POST-запрос с твоим логином и паролем
👉 бэк тут же проверяет полученные данные, есть ли такая учётка в бд
👉 может сходить и в другую систему
(например, для проверки авторизации)
👉 получает от неё ответ
👉 возвращает вам статус ответа и результат (200/401/400)
И только после всей этой беготни вы видите, что получилось на экране.
💙 Вот тут-то и кроется самое интересное для аналитика.
Если не вникать, что там внутри происходит, то для вас это будет просто "работает или не работает".
Но если вы разобрались, то сразу видно:
💙 какой запрос вообще ушёл
💙 какие параметры в нём были переданы
💙 что вернулось в ответ
💙 и на каком именно шаге всё сломалось
И вот тогда привычная задача о том, что "авторизация не работает" уже не выглядит как что-то загадочное)
Она превращается из простого "что-то сломалось"
в чёткое, например "бэк ответил 401, потому что проверка не прошла"
В этом и заключается вся разница.
🔠 🔠 🔠 🔠 🔠 🔠 🔠
⭐️ И когда вы эту цепочку начинаете видеть,
то вы уже не просто тыкаете пальцем в небо, пытаясь угадать, где же проблема)
Вы её находите, точно и наверняка⭐️
зачем они вообще нужны аналитику?
это просто сайт.
На сайте:
есть экран
Сайт - это далеко не вся система. Бывает, что это лишь красивая обложка)
Ведь стоит только начать копать в любую реальную задачу поглубже, как всплывают детали:
И всё это работает благодаря запросам)
По факту, интеграция
👉 держи данные, обработай их
👉 отлично, всё валидно, вот тебе результат обработки
или
👉 сорри, у тебя тут ошибка в данных, не могу обработать, вот тебе в ответ ошибка
вот, например, логин.
Снаружи кажется, что сайт тебя или пустил, или не пустил.
Но если заглянуть под капот, то там происходит вот что:
(например, для проверки авторизации)
И только после всей этой беготни вы видите, что получилось на экране.
Если не вникать, что там внутри происходит, то для вас это будет просто "работает или не работает".
Но если вы разобрались, то сразу видно:
И вот тогда привычная задача о том, что "авторизация не работает" уже не выглядит как что-то загадочное)
Она превращается из простого "что-то сломалось"
в чёткое, например "бэк ответил 401, потому что проверка не прошла"
В этом и заключается вся разница.
Интеграции - это не просто какая-то абстракция и что-то там для галочки.
Это та самая кровь, что течёт по венам любой системы, ведь через них проходит почти каждая логическая операция.
И чем глубже вы погружаетесь в работу, тем яснее становится:
система - это далеко не только экраны
в своей основе - это сложная цепочка запросов, которые бегают между разными сервисами.
то вы уже не просто тыкаете пальцем в небо, пытаясь угадать, где же проблема)
Вы её находите, точно и наверняка
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍3🔥3
Спойлер:
Потому что, на самом деле, в этот момент требования только начинают жить.
Разработчик берётся за задачу и буквально сразу начинаются уточняющие вопросы:
И часть из этого у тебя в голове есть…
но в тексте - не всегда.
Дальше, как правило, запускается такой привычный цикл:
что-то уточнил
Просто пока за задачу не взялись с другой стороны,
в голове у каждого она всё равно выглядит немного по-своему.
аналитик никуда не пропадает.
Следом в дело вступает тестирование.
Тут начинается любимое:
тестировщик берёт твою стройную логику и аккуратно её ломает
И вот порой именно на этом этапе и вылезают самые занятные моменты.
😮💨 Потом - релиз.
Пользователи обязательно начнут делать что-то непредсказуемое,
тут же всплывут новые нюансы, и, конечно, появятся доработки.
который ведёт задачу от самой первой идеи
до того момента, как она реально заработает в системе.
а скорее как большой процесс, который нужно заботливо довести до логического и рабочего завершения.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤2👍2🤯2
текст чистый, логика ясна, примеры есть.
Прямо так и тянет нажать "в разработку".)
то поверь, это сохранит тебе немало нервов.
Мы тут собрали для тебя небольшой список вопросов, по которым можно свериться со своими требованиями:
Просто своими словами, без шпаргалок:
что делает пользователь? что делает система? и что в итоге должно получиться?❌ Если вдруг начинаешь:
сбиваться, путаться или прыгать с мысли на мысль,
то скорее всего, где-то в логике ещё есть пробел.
Речь не об идеальном мире, а о самом обычном пользовательском пути:
забыл ввести что-то? ввёл не то, что надо? или вообще не туда нажал?❌ Если в этих критических точках:
всё расплывчато или никак не описано,
то будь готов, вопросы не заставят себя ждать.
Если в задаче фигурирует хоть одно поле, то должно быть описание, откуда оно берётся.
это сам пользователь вводит? или из другой системы прилетает? а может, оно вычисляется на лету?❌ Без такой ясности разработчикам придётся гадать,
а потом они уже начнут заваливать тебя вопросами.
Такое не всегда бросается в глаза, но случается:
тут описали одну логику,
а чуть дальше она уже почему-то изменилась.❌ И тогда реализация пойдёт так, как кто-то что-то сам понял.
получится ли отдать эту задачу в работу вообще без созвона?❌ Если ты про себя думаешь: "да ладно, потом объясню если что",
то это верный признак, что в тексте ты что-то упустил....
❌ Если ты не можешь сходу объяснить:
- вот так проверяем
- и вот такой должен быть результат,
значит, задача пока ещё сырая.
Но он точно поможет отловить самые частые недочёты ещё до того,
как они доберутся до разработчиков.
А это, в свою очередь, сэкономит уйму времени и тебе, и всей команде)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤3👀2
Когда готовишься к собесу, очень уж хочется думать, что всё решит только теория.
Повторил REST, освежил SQL, вспомнил BPMN, зазубрил свой опыт и кажется, что вроде можно идти покорять рынок.
Так красиво, уверенно, прямо как настоящий айтишник.
Потому что проверяют не только то, что ты знаешь.
Проверяет ещё, как ты мыслишь.
На собесе, кстати, очень быстро видно, умеет ли человек рассуждать.
Не просто отделаться фразой "я собирал требования", а внятно рассказать:
Дело не в том, что они совсем ничего не знают.
Просто они привыкли давать ответы по шаблону, а не разбирать конкретную ситуацию.
А знаете, какой прикол? идеальный ответ не всегда и нужен.
Иногда куда сильнее смотрится кандидат, который просто и спокойно говорит:
Это звучит гораздо живее и профессиональнее, чем просто попытка угадать тот самый "правильный ответ".
Потому что в настоящей работе аналитика, по сути, почти никогда не бывает задач прямо как из учебника.
а ты сидишь между ними и пытаешься собрать из этого всего хоть какую-то внятную картину.
Вот на собеседовании как раз и проверяют, сможешь ли ты в такой картинке не растеряться.
Поэтому, когда готовишься к собеседованию, это не просто зазубривание определений.
Это ещё и живая практика:
Мы, кстати, постоянно такое наблюдаем на наших мок-собесах)
Человек вроде и базу знает, но теряется, когда ему надо просто начать рассуждать вслух.
он уже совсем иначе отвечает: намного спокойнее, чётче, увереннее.
Поэтому, если ты готовишься к собесу, не стоит ограничиваться одними конспектами.
Теория, важна, но она всё равно не заменит практику.
Ведь на работе тебе придётся не вспоминать готовые ответы, а самому разбираться в реальных, живых задачах.
а хочешь по-настоящему потренироваться на реальных вопросах, проработать кейсы, пройти мок-собесы,
то у нас есть отличный курс по системному анализу.
Там не просто сухая теория,
но и много практики, свой пет-проект, поможем с резюме, проведём мок-собесы
и даже сопроводим в поиске работы.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥2👀2
🧩 Чем фронт отличается от бэка
(и где здесь наш аналитик)
💙 Когда в задачах начинают мелькать 'фронт' и 'бэк', это кажется какой-то жуткой абстракцией, правда?
💙 На деле всё куда проще и понятнее:
👉 фронт ➡️ это то, что мы называем клиентом,
то есть всё, что работает прямо у пользователя: будь то браузер или мобильное приложение.
👉 бэкенд ➡️ это сервер,
место, где обрабатываются все запросы, где хранится вся логика и данные.
🟠 🟠 🟠 🟠 🟠
Давайте посмотрим, как это обычно выглядит в любой реальной задаче:
➡️ пользователь что-то нажимает
➡️ клиентская часть (наш фронт) собирает нужные данные
➡️ и отправляет их HTTP-запросом на сервер
➡️ сервер (то есть бэк) обрабатывает всё это дело
➡️ потом возвращает какой-то ответ
и уже на основе этого ответа клиент решает, что именно показать пользователю.
🟠 🟠 🟠 🟠 🟠
🤔 Если копнуть чуть глубже, в технические детали:
💻 клиентская сторона формирует запрос:
1️⃣ определяет метод, например, GET или POST
2️⃣ указывает URL
3️⃣ прикладывает параметры или тело запроса (payload)
😀 сервер же:
1️⃣ сначала проверяет все данные на валидность
2️⃣ потом выполняет свою логику
3️⃣ может обратиться к базе данных или другим сервисам
4️⃣ и в конце возвращает ответ, который включает статус и тело.
💻 а клиент:
1️⃣ интерпретирует полученный ответ
2️⃣ и затем меняет состояние пользовательского интерфейса
🟠 🟠 🟠 🟠 🟠
😎 И тут на сцену выходит наш аналитик!
Он описывает обе эти стороны,
и самое главное - как они между собой "общаются", их стык.
😀 для бэка он прописывает:
💻 а для фронта он описывает:
➡️ какие действия доступны для пользователя
➡️ что происходит, когда пользователь кликает или вводит что-то
➡️ как нужно реагировать на разные ответы от бэка
➡️ и что именно показывать при успехе, ошибке или во время загрузки.
🟠 🟠 🟠 🟠 🟠
⛳️ Возьмём, к примеру, тот же процесс авторизации:
Если все эти моменты не описаны чётко, то появляются расхождения и проблемы.
🟠 🟠 🟠 🟠 🟠
😊 Вот что важно понять:
🟠 🟠 🟠 🟠 🟠
Поэтому, чтобы хорошо работать,
одного понимания как выглядит интерфейс явно недостаточно.
И просто знать 'как работает бэк' - тоже не выход.
😊 Надо видеть всю цепочку целиком:
👉 от действия пользователя 👉 через запрос 👉 его обработку
👉 до ответа 👉 и окончательного поведения интерфейса)
(и где здесь наш аналитик)
то есть всё, что работает прямо у пользователя: будь то браузер или мобильное приложение.
место, где обрабатываются все запросы, где хранится вся логика и данные.
Давайте посмотрим, как это обычно выглядит в любой реальной задаче:
и уже на основе этого ответа клиент решает, что именно показать пользователю.
❕ Поймите, это всегда одна непрерывная цепочка,
а не какие-то 'две разные части', живущие сами по себе.
Он описывает обе эти стороны,
и самое главное - как они между собой "общаются", их стык.
➡️ какие методы, или эндпоинты, есть вообще➡️ какие параметры мы принимаем➡️ какие ответы и ошибки нужно возвращать➡️ какие там правила и валидации действуют
👉 фронт:
отправляет POST-запрос на /login с адресом электронной почты и паролем.👉 бэк:
проверяет эти данные и возвращает
либо 200 (всё хорошо),
либо 401 (ошибка авторизации).👉 фронт:
1) если пришло 200, то пользователь попадает в систему
2) если же пришло 401, то фронт показывает ему ошибку на экране.
Если все эти моменты не описаны чётко, то появляются расхождения и проблемы.
аналитик не просто описывает 'экран'
или какой-то 'метод по отдельности'.👉 он формулирует тот самый контракт, соглашение между клиентом и сервером:➡️ что мы отправляем➡️ что получаем в ответ➡️ и как на всё это реагируем.
Поэтому, чтобы хорошо работать,
одного понимания как выглядит интерфейс явно недостаточно.
И просто знать 'как работает бэк' - тоже не выход.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥2👍1
чтобы больше не путаться в этих "синхронно/асинхронно/очереди/вебсокеты"
Это практическое руководство:
отличия подходов, где что лучше, и как об этом говорить на собеседованиях.
💙 Можно сохранить и возвращаться, когда в задачах или на собесах всплывает "а как лучше интегрировать?"
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3❤2😍2👍1
🔐 Что же такое JWT, access token и refresh token
и почему это тебя постоянно разлогинивает☹️
⤵️ Наверняка у тебя бывало такое:
сидишь себе спокойно на сайте, занимаешься своими делами…
и вдруг раз:
👉 сессия истекла
👉 нужно войти снова
👉 авторизуйтесь повторно
А ты такой:
😐 да я буквально десять минут назад заходил...
🟠 🟠 🟠 🟠 🟠
⤵️ На самом деле за этим стоит довольно важная техническая штука,
с которой аналитики сталкиваются буквально на каждом шагу.
⤵️ Речь идёт о🤩 токенах авторизации🤩
и чаще всего в их устройстве встречаются:
🪵 JWT-токен
🪵 access token
🪵 refresh token
Звучит это куда страшнее, чем работает на самом деле))
🟠 🟠 🟠 🟠 🟠
🤔 Если попробовать объяснить совсем просто:
😔 Когда ты вводишь свой логин и пароль,
то сервер их проверяет и как бы говорит:
😔 После такой проверки сервер выдаёт тебе access token,
это такой специальный временный ключ доступа.
😔 Теперь каждый раз, когда ты обращаешься к сайту,
клиент (фронт) отправляет этот токен вместе с запросом, словно говоря:
🟠 🟠 🟠 🟠 🟠
⤵️ И вот тут мы подходим к JWT (или JSON Web Token)
Это просто один из популярных форматов, в котором такой токен может быть сделан.
Внутри него обычно содержится вся нужная информация:
👉 кто ты как пользователь
👉 до какого момента этот токен вообще действителен
👉 какие у тебя есть права или роли в системе
и, конечно, специальная подпись, чтобы никто не смог подделать этот токен.
😔 Так что это вовсе не какая-то "магическая строка", а вполне чётко организованные данные.
🟠 🟠 🟠 🟠 🟠
💙 Но есть одна загвоздка.
❌ Если access token будет действовать вечно, это становится небезопасно.
🟠 🟠 🟠 🟠 🟠
⤵️ И чтобы пользователю не приходилось постоянно заново вводить пароль,
когда access token истечёт, придумали🤩 refresh token🤩
💙 Access token можно представить как одноразовый пропуск, чтобы пройти в офис.
💙 А refresh token это как твой постоянный документ,
по которому можно прийти и получить новый временный пропуск🤭
😔 Когда срок действия access token заканчивается:
👉 фронт направляет серверу refresh token
👉 сервер внимательно его проверяет
👉 и, если всё в порядке, выдаёт новый access token.
При этом обычный пользователь чаще всего вообще ничего такого не замечает)
🟠 🟠 🟠 🟠 🟠
⤵️ А вот если и refresh token уже просрочен или по каким-то причинам стал недействительным,
тогда тебя и выкидывает на страницу входа.
😔 Вот почему иногда сайт:
👉 просто спокойно обновляет твою сессию, и ты продолжаешь работать
а иногда:
👉 требует войти заново
🟠 🟠 🟠 🟠 🟠
🤩 И зачем, спрашивается, всё это полезно понимать аналитику?
⤵️ И в задачах то и дело всплывают вопросы, например:
🟠 🟠 🟠 🟠 🟠
🚩 И вот в такие моменты очень здорово помогает
не просто знать, "что нажать в интерфейсе",
а понимать, что на самом деле происходит внутри под капотом.
🚩 Ведь чем дальше ты растёшь в аналитике,
тем чаще начинаешь видеть систему как единое целое,
а не просто набор отдельных экранов😊
и почему это тебя постоянно разлогинивает
сидишь себе спокойно на сайте, занимаешься своими делами…
и вдруг раз:
А ты такой:
с которой аналитики сталкиваются буквально на каждом шагу.
и чаще всего в их устройстве встречаются:
Звучит это куда страшнее, чем работает на самом деле))
то сервер их проверяет и как бы говорит:
👍 "Хорошо, этому пользователю можно доверять"
это такой специальный временный ключ доступа.
клиент (фронт) отправляет этот токен вместе с запросом, словно говоря:
🫶 Привет, это снова я, пропустите плиз
Это просто один из популярных форматов, в котором такой токен может быть сделан.
Внутри него обычно содержится вся нужная информация:
и, конечно, специальная подпись, чтобы никто не смог подделать этот токен.
Представь, если его кто-то украдёт, то получит доступ навсегда😬
Поэтому access token обычно не живёт долго:👉 всего пять минут, или полчаса, но максимум час
когда access token истечёт, придумали
по которому можно прийти и получить новый временный пропуск
При этом обычный пользователь чаще всего вообще ничего такого не замечает)
тогда тебя и выкидывает на страницу входа.
а иногда:
Да потому что авторизация встречается буквально везде, куда ни глянь:👉 в личных кабинетах на сайтах👉 в мобильных приложениях👉 при настройке различных интеграций👉 в работе с API👉 в админках разных систем👉 да и в корпоративных системах тоже.
💙 где хранится этот самый токен💙 в какой момент он обновляется💙 что мы делаем, если его срок действия закончился💙 как фронт должен реагировать на ошибку 401💙 и как правильно разлогинивать пользователя
не просто знать, "что нажать в интерфейсе",
а понимать, что на самом деле происходит внутри под капотом.
тем чаще начинаешь видеть систему как единое целое,
а не просто набор отдельных экранов
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥2👍1
то чаще всё это превращается в какой-то набор совершенно незнакомых слов:
И становится особенно весело, когда видишь какой-нибудь url, который кажется длиной в половину твоей жизни
Очень многие, когда только начинают,
просто берут и механически копируют URL из того же Postman или Swagger, не особо вникая:
и почему вдруг всё это разваливается на части из-за одного единственного символа
Поэтому сегодня мы собрали для вас такую, прямо скажем, полезную шпаргалочку:
Причём мы не просто даём голую теорию, а разбираем всё это с примерами)
читать любую API-документацию, разбираться в DevTools,
понимать, как устроены запросы в Postman
и уже не пугаться длинных URL-адресов в логах))
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥4💯3