Search
Write a publication
Pull to refresh
13
0

Software Developer

Send message

Предметно-ориентированная микросервисная архитектура от Uber

Reading time16 min
Views27K
Прим. перев.: недавняя статья от Uber Engineering рассказывает о путешествии этой крупной компании к своей улучшенной версии микросервисной архитектуры. Несмотря на то, что некоторые интернет-пользователи не без причин увидели в новом подходе «всего лишь применение принципов DDD к микросервисам», статья снискала огромный интерес у сообщества разработчиков и других инженеров. А посему — рады представить её русскоязычную версию, подготовленную специально для хабра.



Введение


В последнее время активно обсуждаются недостатки сервис-ориентированных архитектур и, в частности, микросервисных архитектур (МА). Всего несколько лет назад многие с готовностью переходили на МА из-за их многочисленных преимуществ: гибкости в виде независимых развертываний, прозрачной принадлежности, повышения стабильности систем и лучшего разделения ответственности. Однако не так давно ситуация изменилась: микросервисный подход стали критиковать за склонность серьезно увеличивать сложность, из-за которой иногда бывает тяжело реализовать даже тривиальные функции. (Мы рассказывали об этом в докладе «Микросервисы: размер имеет значение, даже если у вас Kubernetes» — прим. перев.)

В настоящее время в Uber насчитывается около 2200 критических микросервисов, и мы испытали все достоинства и недостатки этого подхода на себе. В течение последних двух лет Uber пыталась сократить запутанность микросервисного ландшафта, попутно сохранив преимущества данной архитектуры. С помощью этой публикации мы планируем представить наш обобщенный подход к микросервисным архитектурам, получивший название «Domain-Oriented Microservice Architecture» (DOMA).
Читать дальше →

ИТ-аналитик, чем его работа ценна для бизнеса

Reading time10 min
Views16K

“Аналитик, проанализируй мне эту задачу” - говорит бизнес-заказчик. Что он имеет в виду? Анализ - это всего лишь  метод исследования, характеризующийся выделением и изучением отдельных частей объектов исследования (по википедии), но бизнес в своих словах подразумевает нечто большее, чем просто анализ.

Что делает ИТ-аналитик и в чем ценность его работы для бизнеса? Пробуем разобраться. 

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

Читать далее

Я стал думать над мелочами в коде, и уничтожил все желание программмировать

Reading time24 min
Views31K


На моей последней проектной работе мне предложили создать решение на .net/c# с нуля. Заложить архитектуру, стандартные либы, практики, и т.д. Приложение планировалось большое, я получил море бюджета на исследование и продумывание всего.

В процессе я принял много решений. Так много, что сильно удивился — сколько же практик и подходов у меня сложилось за довольно короткую карьеру. Откуда я их взял? Как я к ним пришёл, и с хрена ли я в них верю?

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

У меня в башке есть такой абстрактный «правильный разработчик», который всё делает единственно верным образом. Обычно моя задача быть немного на него похожим. Когда я пишу какой-то код, спрашиваю: «А как бы поступил правильный разраб? Что бы он выбрал и почему?». Да, его не существует, и он на самом деле никак бы не поступил, и эта мысленная сущность не помогает мне решать проблемы. Она нужна для двух вещей: заставляет задавать себе кучу вопросов и чувствовать себя куском говна каждый раз, когда хоть что-то сделал.

С годами работы и я, и мой правильный разраб стали одинаковыми, и мы почти не задаём себе вопросов. Но говном-то я себя, конечно же, считаю, видимо, по привычке.
Читать дальше →

Заметки тимлида

Reading time6 min
Views18K
Всем привет! Меня зовут Кира, уже более двух лет я выполняю обязанности тимлида в Тинькофф. Сначала я руководила QA-инженерами, а три месяца назад перешла в разработку продукта.

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


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

Как выкать в английском языке: градация слова «you»

Reading time5 min
Views72K


В английском нет слова «ты». Вернее, оно есть, но используется только в литературе и религии.

Английское «you» используют и вместо «ты», и вместо «вы» как обращения к одному человеку, и вместо «вы» как обращения к нескольким людям, и даже «Вы» как особо уважительного обращения.

Поэтому встает вопрос, как правильно использовать «you», чтобы избежать недоразумений.

Понятно, что во фразе «Hey you, motherf*cker!» уважительным обращением даже не пахнет. Но нюансов английского выканья все же хватает. О них сегодня и расскажем.
Читать дальше →

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

Reading time6 min
Views49K


В ХIV веке в английском языке начался процесс, который называют Великим сдвигом гласных. Латинское произношение и нижненемецкая фонетика стали вытесняться новыми вариантами. В ходе этого процесса два долгих гласных стали дифтонгами, а еще пять сильно изменились.

Но в средние века не было интернета. В каждом графстве постепенно устоялся свой собственный способ написания и произношения. К примеру, слово «church» на территории Англии могли произносить 22 разными способами, а «she» — 60 вариантами. Знакомое всем «though» и вовсе имело целых 500 вариантов написаний и произношений.

Изменил все один человек — Уильям Кэкстон. Но большинство студентов, которые учат английский как иностранный, ругают этого джентльмена последними словами, когда узнают, как именно читаются слова в английском. Спойлер: как попало. И ругают его, даже если вообще никогда не слышали это имя. Мы расскажем, почему.
Читать дальше →

.NET в целом: обзор от Скотта Хансельмана

Reading time14 min
Views25K


Скотт Хансельман — ключевой человек для .NET-сообщества: например, на конференции Microsoft Build он ведёт презентацию для разработчиков, а у его микроблога в Twitter около 250 000 подписчиков.


При этом в мире .NET он очень давно. Ещё в 2003-м преподавал C#, то есть был глубоко погружён в тему практически с её появления. А последние 13 лет работает в Microsoft, наблюдая за всем изнутри и общаясь с разработчиками из других компаний.


Поэтому ему хорошо видна общая картина: он лично наблюдал, как эта экосистема развивалась со временем, и знает, как она используется разными разработчиками для разных целей. И этим летом на нашей конференции DotNext он выступил с докладом, посвящённым не каким-то конкретным деталям, а как раз общему обзору .NET — от прошлого до будущего. А мы решили сделать для Хабра текстовую расшифровку, чтобы стало можно не только посмотреть доклад на английском, но и прочитать на русском.

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

Хорошо ли вы помните nullable value types? Заглядываем «под капот»

Reading time11 min
Views15K
image1.png

В последнее время модной темой стали nullable reference types. Однако старые добрые nullable value types никуда не делись и всё так же активно используются. Хорошо ли вы помните нюансы работы с ними? Предлагаю освежить или проверить свои знания, ознакомившись с этой статьёй. Примеры кода на C# и IL, обращения к спецификации CLI и коду CoreCLR прилагаются. Начать предлагаю с интересной задачки.
Читать дальше →

Сценарий идеального технического собеседования

Reading time14 min
Views33K


Дисклеймер: это сценарий идеального технического собеседования в Delivery Club Tech. Мнение нашей команды может не совпадать с мнением читателей.

Привет, Хабр! Меня зовут Василий Козлов, я iOS-техлид в Delivery Club. Я часто и много провожу собеседования. В этой статье я собрал накопленный опыт и собственные наблюдения, которыми хочу поделиться. Во второй части статьи приведу пример собеса с комментариями со своей стороны. Итак, начнём.

1. Собесы бывают разные: жёлтые, зелёные, красные (лирическое отступление)


Есть мнение, что сложные технические собесы не работают. Сооснователь платформы для рекрутинга Interviewing.io Алин Лернер ранее писала, что компании, которые подбирают сотрудников, опираясь на сложные технические собеседования, «тратят ресурсы на множество кандидатов, которые не понимают игровую сущность собеседований». В результате на финишную прямую в таких компаниях выходят кандидаты, которые хороши именно в прохождении интервью.
Читать дальше →

ИТ-архитектор. Как стать тем, на кого не учат?

Reading time7 min
Views31K

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

Читать далее

Наследование реализации в С++. Реальная история

Reading time9 min
Views8.1K
Привет, Хабр!

В поисках вдохновения, чем бы пополнить портфель издательства на тему С++, мы набрели на возникший словно из ниоткуда блог Артура О'Дуайера, кстати, уже написавшего одну книгу по C++. Сегодняшняя публикация посвящена теме чистого кода. Надеемся, что вам будут интересны как сам кейс, так и автор.
Читать дальше →

Я принес вам решение проблемы с исключениями в C#. Но вам не понравится

Reading time8 min
Views46K


Я каждый день пишу код на сишарпе, и натыкаюсь на одну проблему: я трачу кучу времени на то, чтобы решить, как быть, если что-то идёт не по плану.

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

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

Я провёл более 600 технических интервью — и вот пять проблемных мест, которые я заметил у кандидатов

Reading time9 min
Views49K
Недавно я провёл 600-е собеседование на interviewing.io (IIO). Хотелось бы поделиться опытом, рассказать, как я подхожу к интервью, и пролить свет на типичные проблемы у кандидатов. Каждый интервьюер на IIO индивидуален, поэтому ваши результаты могут отличаться. У нас на платформе сформировалось замечательное сообщество, где каждый работает над улучшением своих знаний, навыков и результатов интервью.

Пробное интервью на interviewing.io


Мы оцениваем людей по трём четырёхбалльным шкалам. Оценка «один» означает плохой результат, а «четыре» — очень хороший. Я обычно вначале даю кандидату три балла, а затем прибавляю/отнимаю очки по мере интервью.

Каждый интервьюер отдаёт предпочтение какому-то одному аспекту. Лично я проявляю некоторую предвзятость в сторону скиллов «общение» («коммуникация») и «решение проблем», которые мы обсудим ниже.
Читать дальше →

Говорить как Уинстон Черчилль: кому нужно продать душу, чтобы общаться на английском ТАК

Reading time9 min
Views29K
Уинстон Черчилль — один из самых известных политиков XX века. Его успехи на государственном поприще — пример для подражания многих молодых политиков.

Черчилль достиг чуть ли не наивысшего уровня в ораторском искусстве. Его речи обсуждают даже через 80 лет после того, как они были произнесены. Отчасти причина в том, как премьер-министр Великобритании использует английский язык, как жонглирует словами и смыслами.

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


Почему «angina» — это не «ангина», а «resin» — не «резина», или Ложные друзья переводчика

Reading time5 min
Views9.4K
У немцев, которые изучают английский как второй язык, очень распространен анекдот.

Английское слово «become» и немецкое «bekommen» очень похожи по написанию и звучанию. Но означают разное. «Become» — «становиться, превращаться», а «bekommen» — «получить, найти».

Немец перепутал слова и, придя в мясной магазин, спросил: «Where can I become a sausage?». Вместо «Где я могу найти колбасу?» получилось «Где я могу стать колбасой?».

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


В пещерах этого не было

Reading time7 min
Views92K
Есть такой момент в человеческой психологии, что многие вещи, услышанные в течение жизни, начинают восприниматься как нечто само собой разумеющееся — как гравитация или магнетизм, хотя их просто кто-то когда-то придумал. От этой напасти в мозгу есть лайфхак – «В пещерах такого не было», об этом я сегодня выскажусь в плане IT.

image

Глава 0. Base-1


Когда я учился в школе (199x) все сидели на Pascal – язык чёткий, мудрый, на нём даже Dos Navigator был написан c VESA скринсейверами, а позже The Bat!, и олимпиадники ACM ICPC в 2000-е годы были в основном паскалистами. Мне из-за любви к играм и графике в то время зашёл C/C++, и сразу же в глаза бросилось фундаментальное различие – от ноля или единицы индексируются массивы, это до сих пор приходится уточнять на том же hackerrank.com.
Читать дальше →

Я посредственный разраб, плохой муж и ужасный отец — нет никакого баланса и выбора

Reading time5 min
Views63K


Мне нравятся пост-ковидные правила игры. Добрая половина вакансий — удаленка. Мы больше не ищем в описании слова «гибкий график» — это теперь само собой разумеется. Никому не придет в голову заставить программиста строго сидеть за компом от 9 утра до шести вечера. Боссы теперь уважают наше время и личное пространство. И нам все еще очень хорошо платят.

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

Когда я первый раз получил оффер на ремоут, я так и подумал. В том, как офис пожирает лишнее время очень простая арифметика — конкретно на работу тратишь часа четыре, еще четыре ты страдаешь фигней, два тратишь на дорогу и час вычеркиваешь из каждого утра — он хоть и свободный, но бесполезный. Около восьми часов ты должен спать. У тебя остается всего пять часов на свои дела по дому и общение с семьей. Это ничтожно мало — ведь ты ещё обычно и зверски устал, когда вернулся.
Читать дальше →

Посадите программиста в поток. Защищайте. Не мешайте. Наслаждайтесь

Reading time5 min
Views36K
Нужна справка на каждого ребенка. Да, и согласие на обработку персональных данных. От каждого из родителей. Пусть и анкету каждый заполнит. Статистический отчет о том, сколько мальчиков и девочек. Да, и по возрастам. И по районам прописки. Ну и по школам. Разделите там, пожалуйста, обычные школы, лицеи и гимназии. Нет, педсовет пропускать нельзя. Это всего 4 часа. Раз в неделю. Да, всем педагогам надо прийти. Конечно, вам нужно работать еще и в детских садах. Каждому из вас. Трижды в неделю. И костюмы ваши нам не нравятся, нужно меньше красок – чего как попугаи-то?

Так, а почему новых постановок нет? Где победы на конкурсах? Что значит два месяца бегаете бумажки собираете? Какое еще творчество? И почему у вас на него времени нет? Какого еще секретаря вам нанять? Что значит «я ухожу»? Вы серьёзно думаете, что справитесь без нас? Что ж, удачи.

Примерно так описал один очень хороший руководитель одного очень хорошего танцевального коллектива жизнь «под крылом» государственного учреждения, когда объяснял, почему ушёл «из-под крыла».

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

Escrow (эскроу) исходного кода

Reading time2 min
Views5K
Чаще всего термин эскроу (escrow) используется при оплате покупок или передачи работы по фрилансу. Эта, скорее короткая заметка, чем большая статья, описывает применение code escrow — депонирование исходного кода.

Неважно маленькая ли вы команда или большая компания, развиваете ли вы известный на рынке продукт или делаете новый стартап. В какой-то момент к вам придет заказчик с вопросом: «А что произойдет, если вдруг ваша компания закроется?». Ни известное имя, ни размер команды не гарантирует того, что продукт будет существовать и внезапно не исчезнет.
Читать дальше →

Information

Rating
Does not participate
Location
Россия
Registered
Activity