Как стать автором
Обновить
0
Lidia Borisova @IamLAread⁠-⁠only

Пользователь

Отправить сообщение

API-First и микросервисы

Время на прочтение15 мин
Количество просмотров27K

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

Читать далее

Design API First как паттерн проектирования контрактов межсервисного взаимодействия

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров9.9K

За окном 2023 год, а среди разработчиков только и разговоров, что про микросервисы да API First. Несмотря на то, что эти темы не новы, похоже, что их актуальность даже набирает обороты.

Про микросервисы уже много написано и теоретического и практического. Есть у этого подхода и свои евангелисты (Microservice Architecture) :) В целом это тема достаточно холиварная, особенно при крайних точках зрения. Сегодня мы ее отложим, но обязательно вернемся в контексте темы этой статьи. Конечно, это будет не менее обсуждаемая история, посвященная методологии API First и программным интерфейсам (прежде всего, web, но не только) при проектировании и разработке современных информационных систем :)

Меня зовут Антон, я руководитель Архитектурного комитета в компании SimbirSoft. Мы используем подход API First для проектов самой разной направленности, где есть несколько команд разработки (как минимум Backend и Frontend), а также при высокой неопределенности на этапе реализации (быстроменяющиеся требования и цели, параллельные процессы проектирования и реализации, высокие запросы к TTM и так далее).

Поскольку API First не является чем-то новым для многих команд разработки, то мы решили не писать про то, что все уже знают, а остановиться на отдельных вопросах и разобраться в практическом аспекте применения методологии API First в части проектирования, прототипирования и разработки.

Этот материал открывает цикл статей, посвященных практическому внедрению методологии API First в разработку наших команд. Если быть точным, то мы отдаем предпочтение «младшему брату» API First, практикующему  проектирование (design), — известному как Design API First. Чтобы избежать путаницы, далее термин «API First» будет обозначать подход к разработке ПО, а термины «Design API First» и «Design First» – проектирование ПО в рамках подхода API First.

2 часть: Как мы внедряли Design API First. Показываем на примере сервиса аутентификации

3 часть: Интеграция паттерна Design API First в конвейер разработки ПО: наш опыт

4 часть: Как генерировать модели интерфейсов на основе спецификации на стороне frontend-приложений

5 часть: Design API First. Кодогенерация Roslyn

Читать далее

Пять простых шагов для понимания JSON Web Tokens (JWT)

Время на прочтение5 мин
Количество просмотров738K

jwt


Представляю вам мой довольно вольный перевод статьи 5 Easy Steps to Understanding JSON Web Tokens (JWT). В этой статье будет рассказано о том, что из себя представляют JSON Web Tokens (JWT) и с чем их едят. То есть какую роль они играют в проверке подлинности пользователя и обеспечении безопасности данных приложения.

Читать дальше →

Путеводитель по оценкам задач и котики

Уровень сложностиСложный
Время на прочтение11 мин
Количество просмотров15K

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

Читать далее

В поисках альтернативы Jira

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров58K

Наша команда как и многие другие работала с облачными продуктами Atlassian: Jira и Confluence. Осенью прошлого года, Atlassian отправила нам письмо счастья.

Читать далее

Полное руководство по проектированию систем в виде схемы

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров28K

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

Читать далее

«Системный дуализм» и выгорание: дуальности системного аналитика

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров5.7K

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

Поговорим как рассеять облако страхов и расслабить клапана, чтобы фляга не засвистела.

Читать далее

Kafka за 20 минут. Ментальная модель и как с ней работать

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров187K

Привет! Меня зовут Глеб Гончаров, и я руковожу подгруппой ИТ-инфраструктуры в СберМаркете. В работе мы широко используем Kafka как шину данных для микросервисов и не раз убедились на практике, что к инструменту важно подобрать правильный подход. Об этом сегодня и поговорим в двух частях — сначала обсудим основы, а в конце статьи будет ссылка на практические задания.

Читать далее

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

Время на прочтение10 мин
Количество просмотров81K
Есть множество типов архитектур ПО со своими плюсами и минусами. Далее поговорим об особенностях наиболее популярных из них и расскажем о своем переходе на микросервисы.

Читать дальше →

Что на самом деле происходит, когда пользователь вбивает в браузер адрес google.com

Время на прочтение19 мин
Количество просмотров443K


Эта статья является попыткой ответа на старый вопрос для собеседований: «Что же случается, когда вы печатаете в адресной строке google.com и нажимаете Enter?» Мы попробуем разобраться в этом максимально подробно, не пропуская ни одной детали.

Примечание: публикация основана на содержании репозитория What happens when...

Представленный контент изобилует большим количеством терминов, в переводе некоторых из них могут присутствовать различные неточности. Если вы обнаружите какую-то ошибку в нашем переводе — напишите личным сообщением, и мы всё исправим.

Мы перенесли перевод в репозиторий GitHub и отправили Pull Request автору материала — оставляйте свои правки к тексту, и вместе мы сможем значительно улучшить его.
Читать дальше →

Как на самом деле устроена техническая поддержка

Время на прочтение9 мин
Количество просмотров15K

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

Меня зовут Дмитрий Семин, я руковожу службой сопровождения клиентов в ITGLOBAL.COM. В этом материале расскажу, как устроена наша служба, сколько обращений обычно поступает от клиентов и систем мониторинга и кто их обрабатывает.

Читать далее

Аббревиатуры для умников. DoR, DoD, AC, CoS, SC, SMART, INVEST

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров20K

Дорогой читатель, в этом посте мы с тобой рассмотрим 6 аббревиатур и подумаем когда их применение уместно.

Читать далее

Как терялись космонавты

Время на прочтение7 мин
Количество просмотров31K


Утром седьмого июля к МКС успешно стартовал корабль «Союз» новой модификации МС. В ней были улучшены различные системы, и впервые телеметрия и голосовая связь с космонавтами будут доступны на любом витке. Космическая связь даже на околоземной орбите — не такая простая штука, как это может показаться, и история космонавтики хранит множество историй, как из-за проблем со связью на какое-то время космонавты «терялись».
Читать дальше →

Архитектура приложений и интеграции: гайд по основным понятиям простыми словами

Время на прочтение16 мин
Количество просмотров131K

Здесь мы доступно знакомим с видами архитектур, их общим назначением, наиболее очевидных преимуществах и недостатках.

Мини-туториал по теме от лида-аналитика "ITQ Group" Виталия Якубина.

Читать далее

Регулярные выражения (regexp) — основы

Время на прочтение21 мин
Количество просмотров1.2M

Регулярные выражения (их еще называют regexp, или regex) — это механизм для поиска и замены текста. В строке, файле, нескольких файлах... Их используют разработчики в коде приложения, тестировщики в автотестах, да просто при работе в командной строке!

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

Например, на вход приходит дата рождения в формате ДД.ММ.ГГГГГ. Вам надо передать ее дальше, но уже в формате ГГГГ-ММ-ДД. Как это сделать с помощью простого поиска? Вы же не знаете заранее, какая именно дата будет.

Читать далее

Идентификация, Аутентификация, Авторизация. В чем же разница?

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров76K

Всем привет, дорогие друзья!

Приходилось ли Вам когда-нибудь тестировать формы авторизации?

Думаю, что каждый тестировщик сталкивался с ситуацией, когда после тестирования одной из таких «форм» с логином и паролем приходилось заводить баг-репорт c использованием слова «Авторизация».

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

Возможно ли это? Конечно!

Именно поэтому в данной статье мы разберем такой процесс как «Авторизация», а также поговорим о таких очень близких понятиях как «Идентификация» и «Аутентификация». Разберем, как всё это взаимосвязано и постараемся сделать это максимально просто и доступно для того, чтобы у вас не осталось никаких вопросов после прочтения данной статьи!

Читать далее

12 принципов создания успешной иконки

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров10K

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

Тут мы сосредоточимся на работе в Figma и приёмами, что позволяют сделать всё правильно.

Читать далее

Кажется, у меня появился джун

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров23K

— Привет! Мы решили нанять тебе помощника на текущий проект, нашли подходящего кандидата. Кстати, он выходит в понедельник.
— Эммм, окей.

Читать далее

Асинхронная интеграция. Что это такое и как её дружить

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров13K

Продолжением предыдущей статьи об архитектуре и интеграциях Архитектура приложений и интеграции: гайд по основным понятиям простыми словами / Хабр (habr.com), в данной статье будет освещен вопрос асинхронной интеграции. 

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

Читать далее

API FIRST — что это поменяло

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров8.9K

Я долго не могла понять, почему это пример API-driven дизайна. Оказалось, api — это пчёлы

Классический подход к проектированию, существующий с незапамятных времён, — CODE FIRST, в нём разработчики сами устанавливают правила для взаимодействия информационных систем. Подход позволяет быстро получить осязаемый результат в виде запрограммированного куска системы, но есть несколько минусов:

  • Первый — возможность получить обратную связь есть только тогда, когда код готов и пользователь может проверить решение, кликая разные кнопочки в GUI. Это часто приводит к тому, что реализованную часть системы приходится писать заново.
  • Второй, что хуже — CODE FIRST предполагает каскадную модель разработки: нет возможности настроить параллельно несколько потоков работ.
  • Третий недостаток — отсутствие документации и часто слишком детализированное API. Такое API невозможно переиспользовать. 
  • И ещё один, четвёртый, минус — отсутствие адаптации к изменениям. А изменения обычно происходят уже во время разработки.

На замену CODE FIRST пришёл подход DESIGN FIRST. Главными героями здесь становятся дизайнеры. Сначала они отрисовывают все макеты, проектируют кликабельные интерфейсы, и только потом, после ревью пользователей, пишется код системы. Это улучшает UX/UI, команда получает обратную связь до того, как продукт будет готов. Но и тут есть очевидные недостатки:

  • Дефицит бизнес-навыков и аналитического мышления у дизайнеров.
  • Маршруты, положенные в основу архитектуры системы и UI, часто не совпадают с картой бизнес-процессов пользователя. Проще говоря, дизайнер может изобразить любой вариант UI, но возникает вопрос: а можно ли реализовать ту или эту фичу как функционал?
  • Ну и та же проблема, как и с CODE FIRST: нет возможностей для быстрой и эффективной адаптации к изменениям. 

И вот тогда, на стыке CODE FIRST и DESIGN FIRST, появился подход API FIRST, который удачно объединил достоинства всех предыдущих методов.
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Тверская обл., Россия
Дата рождения
Зарегистрирована
Активность

Специализация

Системный аналитик
BPMN
UML
Системный анализ
Спецификация программного обеспечения
ER-диаграммы
Проектирование информационных систем
Анализ требований