Search
Write a publication
Pull to refresh
6
0
Игорь @peacecoder85

Backend Engineer

Send message

Целенаправленный дизайн микросервисов

Reading time6 min
Views5.8K

В своем стремлении перейти на микросервисы я столкнулся с аналогичными проблемами. Чаще всего я работал с клиентами и корпорациями, чей «микросервисный» дизайн приводил к единому моносервису. По сути, монолитное приложение было заменено действительно большим RESTful API.

Я решил рассмотреть пример создания целенаправленного микросервисного дизайна… правильным способом.

Читать далее

Миграция монолитов в микросервисы на практике

Reading time7 min
Views9.6K

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

Однако при принятии решения о необходимости миграции возникает множество вопросов: как вы определяете границы услуги? Как вы проверяете свойства самовосстановления архитектуры микросервиса?

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

Читать далее

Как мы создаем приложение на основе микросервисной архитектуры, с какими особенностями сталкиваемся и как их обходим

Reading time7 min
Views11K

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

Читать далее

Когда и как переходить с монолита на микросервисы. Предпосылки и общие понятия

Reading time5 min
Views7.9K

В серии из трех статей рассказываем о переходе с монолитной на микросервисную архитектуру. Разбираемся, когда и кому это действительно нужно, рассматриваем 7 миграционных шаблонов и самый больной вопрос: «Как быть с данными?».

Читать далее

Стратегии тестирования микросервисов

Reading time11 min
Views42K

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

Читать далее

Когда и как переходить с монолита на микросервисы. 7 миграционных паттернов

Reading time6 min
Views11K

В серии из трех статей рассказываем о переходе с монолитной на микросервисную архитектуру. Разбираемся, когда и кому это действительно нужно, рассматриваем 7 миграционных шаблонов и самый больной вопрос: «Как быть с данными?».

Читать далее

REST API в микросервисной архитектуре

Reading time9 min
Views23K
image

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

Гранулярность микросервисов. Насколько мелко нарезать?

Reading time14 min
Views9.4K

Привет, Хабр! Меня зовут Руслан Сафин и я расскажу про микросервисы и как определить необходимую гранулярность. Я работаю техническим директором в Byndyusoft. Развиваю техническую культуру и участвую в проектах в роли IT-архитектора, а ещё преподаю авторский курс по IT-архитектуре в университете. В коммерческой разработке 15 лет. Из необычного — проектировал защиту от накруток в интернет-голосовании конкурса Мисс Россия и автоматическое определение предвзятости судей в танцевальном спорте.

Byndyusoft занимается заказной разработкой с продуктовым подходом. Так как наша компания работает с крупными заказчиками, мы постоянно учимся новому, перенимаем и сами делимся практиками, наблюдаем и используем разные подходы и приёмы проектирования. Этим практическим опытом я и поделюсь в статье.

Читать далее

Введение в DDD: когда микросервисов на Go недостаточно

Reading time8 min
Views7.4K

Микросервисная архитектура помогает строить гибкие и масштабируемые приложения. Однако в случае бессистемного использования этого подхода вы довольно быстро столкнётесь с разочарованием и неконтролируемыми сложностями. Избежать проблем помогает Domain-Driven Design (DDD) — предметно-ориентированное проектирование. В статье расскажем о принципах его работы, а также разберём основы стратегических паттернов в Golang. 

Читать далее

Почему усилия не приносят результата? Как перестать топтаться на месте в бизнесе и карьере, часть первая

Reading time3 min
Views9.3K

Думаю, не я один упирался в стеклянный потолок, когда действия есть, а результата нет. Кажется, еще чуть-чуть и все изменится: бизнес попрет, навыки прокачаются, доходы увеличатся, но несмотря на все усилия — ничего не меняется. Хочу поделиться несколькими ловушками мышления, из-за которых возникает бег на месте, и которые доставили мне особенно много хлопот.

Читать далее

20 советов для разработчиков игр от разработчиков игр

Reading time8 min
Views7.1K

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

Читать далее...

Чистый код: как писать код, который легко читать

Reading time11 min
Views18K
Для начала мы обсудим, зачем вам вообще может понадобиться писать более читаемый, а не краткий код. Затем мы рассмотрим стратегии, как это делать в случае:

  • Именования переменных, классов и функций
  • Вспомогательных функций
  • Комментариев к коду
  • Перечислений/словарей/запечатанных классов и так далее
  • Упорядочивания и именования пакетов

Зависит ли эффективность от меньшего количества нажатий на клавиши?


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

Моя логика была проста: если у меня это занимает меньше времени, то так я быстрее справлюсь с работой.

Эта логика имела бы смысл, если бы были истинными следующие условия:

  • Мне или кому-то другому никогда не придётся читать или исправлять то, что я написал в прошлом
  • Я нечасто забываю при чтении функции, в чём смысл одной или нескольких переменных
  • Мне время от времени не приходится писать действительно сложный и запутанный код
  • Я могу переименовывать функции, классы или свойства внешних библиотек с непонятными или нелогичными названиями во что-то более разумное

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

У вас может быть другое мнение, и это абсолютно нормально! Можете взять из этой статьи только самое полезное для вас, а об остальном забыть.
Читать дальше →

Кибернетические глаза — реальность? ARGUS-II, или второе зрение

Reading time8 min
Views15K

           
Человек получает большую часть информации с помощью зрения. По данным ВОЗ, на планете насчитывается около 285 миллионов слепых людей. Среди них 39 миллионов не видят вообще ничего, а 18% находятся в возрастной категории до 50 лет. Это колоссальная цифра. По факту, во всех странах насчитывается множество людей, не способных вести полноценный образ жизни, эффективно трудиться и взаимодействовать с обществом. Все они нуждаются в помощи и восстановлении этой, без сомнения, жизненно важной функции организма.
Читать дальше →

Нейрофутуризм. К чему еще приспособят ИИ в ближайшем будущем?

Reading time5 min
Views5.6K


Почти каждый год в интернете появляется новая тема, которая будоражит умы человечества и звучит чуть ли не из каждого утюга. Сначала случился бум криптовалют, затем на повестке дня возникли роботы от Boston Dynamics, им на смену явилась технология NFT, а теперь вакантное место заняли нейросети. Про ChatGPT, Dalli-e 2 и Midjourney слышали уже все, рассказывать о них еще раз нет никакого смысла. А какие ещё возможности есть у современного искусственного интеллекта, и какие из них будут востребованы в ближайшем будущем? Вот самые интересные, а также перспективные проекты и направления.
Читать дальше →

Выйди и зайди правильно

Reading time8 min
Views55K

Управлять программистами в ИТ-компании – дело особое. Не сказать, что сильно сложное. Совру, если назову простым. Особое.

Книжек, статей, курсов создано великое множество. Что-то помогает, у кого-то получилось. Собственно, промахнуться с оценкой сложно – отрасль ведь не просто существует, но и весьма активно развивается. Даже в нашей деревне. Значит, как-то, кое-как, с горем пополам, но управление программистами не только возможно, но и получается.

Однако, кризисы случаются. Бывает, что затяжные – например, какая-нибудь серьёзная деревенская компания не может ни найти, ни воспитать приличного руководителя программистов. Благо, сейчас это не великая проблема – бизнес вполне себе растёт лишь потому, что растёт рынок, и заполнить его некому. Поэтому за начальника сойдёт и табуретка. Но – лишь до поры, до времени.

Регулярно ИТ-бизнес думает-думает, решает-решает, плюнет, да и снова попробует старый добрый метод: нанять успешного руководителя из другой сферы. Производство, строительство, торговля – ну суть. Оттуда много кандидатов, у них подтверждённый опыт, зачастую – MBA, и они такие прям чёткие всегда! Знают, чего хотят, на что способны, чего им нужно.

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

Много раз пытался объяснить, помочь – и начинающим руководителям-варягам, и тем, кто их тащит в ИТ. Никто, разумеется, не слушал. Ну да я уже привык, поэтому сижу себе помалкиваю.

Однако, тут такая история вышла: в ИТ-компанию собралась устроиться некто Ира, хорошая знакомая моего хорошего знакомого. Он, как мог, пытался её отговорить, но не преуспел, т.к. сам работает программистом, и руководителем никогда не был.

Попросил меня. Я предложил формат статьи – и моё мнение услышит, и ваше. В конце концов, вполне возможно, я не прав, как это обычно случается (если верить вашим комментариям).

Итак, погнали. Буду писать, как бы лично обращаясь к Ирине.

Читать далее

Сферы, в которых дополненная реальность изменила правила игры

Reading time9 min
Views8.7K

За последние годы технологии дополненной реальности (Augmented Reality, AR) и виртуальной реальности (Virtual Reality, VR) совершили существенный прогресс в различных отраслях. Они меняют способы работы и взаимодействия с клиентами бизнесов в разных сферах: от онлайн-торговли до здравоохранения. В этом посте мы рассмотрим десять инновационных бизнес-моделей AR, совершивших революцию в разных отраслях и раскрывших новые возможности для роста и развития. Эти модели (от виртуальных примерочных в онлайн-торговле до виртуальных экскурсий в строительстве) демонстрируют потенциал технологий AR в современной бизнес-среде.
Читать дальше →

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

Reading time13 min
Views4.9K

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

Читать далее

«Подводные камни» интеллектуальной собственности на программное обеспечение, или Чего опасаться «стартапам»

Reading time4 min
Views3.4K

Мало написать "программное обеспечение", - права на него надо ещё уметь защищать!

В российском праве "программное обеспечение" именуется "Программами для ЭВМ".

А термины "Программное обеспечение", "Софт", "Программный продукт" и т.д. - это сленг.

Программы для ЭВМ охраняются наравне с литературными произведениями, и поэтому программы для ЭВМ являются объектами права интеллектуальной собственности (точнее: авторского права).

Статья 1261 Гражданского кодекса РФ гласит, что "Программой для ЭВМ является представленная в объективной форме совокупность данных и команд, предназначенных для функционирования ЭВМ и других компьютерных устройств в целях получения определенного результата, включая подготовительные материалы, полученные в ходе разработки программы для ЭВМ, и порождаемые ею аудиовизуальные отображения".

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

И поэтому пока что главным критерием для сравнения программ для ЭВМ является установление фактов идентичности исходных текстов (исходных кодов) этих программ.

Однако, как говорится "Гладко было на бумаге, да забыли про овраги".

Читать далее

Микросервис головного мозга. Рецепты качества

Reading time10 min
Views9.7K

Эта статья подготовлена на основе доклада «Микросервис головного мозга» Михаила Трифонова, Lead frontend Cloud и основателя frontend-сообщества TeamSnack. Мы разберём когда необходимы микрофронты, каким должен быть технологический стек, как нарезать мироксервисы и какие существуют стандарты при построении микросервисной архитектуры.

Эта статья, по сути, продолжение первой части «Микросервис головного мозга. Пилим всё, что движется». В ней Михаил рассказывал, как ему с командой удалось ускорить разработку с помощью микросервисного подхода. Они поэтапно строили микросервисную архитектуру, распилили монолит, UIKIT и создали архитектуру.

Читать далее

Tesla идет вниз: что происходит?

Reading time6 min
Views28K


Ну, вы, наверное, слышали. Илон Маск недавно стал первым человеком в истории, потерявшим больше $200 млрд. Раньше рекорд был за Масаёси Соном, главой SoftBank, потерявшим $59 млрд в двухтысячном. На третьем месте легендарный Эйке Батиста, который в 2012-2013 гг. умудрился потерять $30 млрд и стать банкротом. А потом попытался выкрутиться из этого положения и попал в тюрьму на 30 лет. От седьмого богача планеты — до заключенного без гроша в кармане.


До банкротства и тюрьмы Маску еще далеко, он по-прежнему в топ-10 миллиардеров, но ещё один такой год (а дела с Твиттером складываются не очень хорошо) — и всё вполне может к тому прийти.

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

Information

Rating
7,930-th
Location
Одесса, Одесская обл., Украина
Date of birth
Registered
Activity

Specialization

Backend Developer
Senior
From 4,000 $