Pull to refresh
12
0
Александр Гилевич @Dobby007

Архитектор решений, технический лидер

Send message

Я изучила 900 самых популярных инструментов ИИ на базе open source — и вот что обнаружила

Reading time8 min
Views30K

Четыре года назад ИТ-эксперт Чип Хуэн* проанализировала экосистему ML с открытым исходным кодом. С тех пор многое изменилось, и она вернулась к изучению темы, на этот раз сосредоточившись исключительно на стеке вокруг базовых моделей.

О результатах исследования читайте под катом.

*Обращаем ваше внимание, что позиция автора может не всегда совпадать с мнением МойОфис.

Читать далее
Total votes 42: ↑42 and ↓0+42
Comments7

Как Сбербанк Онлайн готовится к пиковым нагрузкам

Level of difficultyEasy
Reading time12 min
Views9.5K

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

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

Читать далее
Total votes 39: ↑39 and ↓0+39
Comments26

3 способа запуска Spark в Kubernetes из Airflow

Level of difficultyEasy
Reading time7 min
Views1.7K

После того, как я научился запускать spark-submit с мастером в Kubernetes и даже получил ожидаемый результат, пришло время ставить мою задачу на расписание в Airflow. И тут встал вопрос, как это правильно делать. Во всемирной паутине предлагается несколько вариантов и мне было непонятно, какой из них стоит выбрать. Поэтому я попробовал некоторые из них и сейчас поделюсь полученным опытом.

Читать далее
Total votes 9: ↑8 and ↓1+7
Comments0

Знакомство с .Net Compiler Platform

Reading time13 min
Views5.5K

.Net Compiler Platform, или Roslyn - это высокоуровневый API для анализа и рефакторинга кода, написанного на  С# и VB (языках .Net). С помощью Roslyn можно как создавать независимые инструменты анализа и рефакторинга, так и писать расширения, встраиваемые в Visual Studio. При правильном подходе использование .Net Compiler Platform позволяет упростить написание кода, автоматизировать рутинные задачи разработчика и тем самым сократить время и усилия, затрачиваемые на разработку. 

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

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments8

Мой опыт собеседования в Amazon

Reading time6 min
Views61K

О чём эта статья

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

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

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

Начало, предложение от Amazon

В один прекрасный день 6 сентября, мне пришел такой сообщение в Линкедин.

Читать далее
Total votes 93: ↑90 and ↓3+87
Comments177

Как получил оффер от Microsoft

Reading time6 min
Views53K

О чем эта статья

Это продолжение моих похождений по ФААНГ. Предыдущая статья была о моем опыте собеседования в Амазоне.

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

К слову, все собеседования тоже сейчас проходят онлайн, и никаких онсайт интервью нет.

Читать далее
Total votes 88: ↑80 and ↓8+72
Comments139

Переезд в США от визы О-1 до гринкарты: стоимость эмиграции, сроки, ошибки и советы

Reading time10 min
Views26K

Пять лет назад, в июле 2017 я впервые рассказал на Хабре свою историю переезда в США по визе для талантливых специалистов. В июле уже этого года эта история, наконец, завершилась получением гринкарты. Поскольку первая статья вызвала достаточно большой интерес, было много вопросов, я решил опубликовать новый материал по итогам всего этого опыта со всеми его этапами, ошибками, подводными камнями и плюсами. Поехали!

Disclaimer: вся статья лишь суммирует мой личный опыт, мысли об ошибках и правильных ходах – это ни в коем случае не legal advice, но мне в свое время не хватало и такой информации.

Читать далее
Total votes 51: ↑43 and ↓8+35
Comments101

Как россиянину получить ВНЖ в Армении?

Reading time5 min
Views116K

Продолжение рассказов из Армении. Для начала какой смысл вообще получать ВНЖ в Армении, ведь гражданин РФ может находиться там в течение 180 дней без необходимости пересечения границы? Однако все не так просто, смысл есть. Начиная с 24 февраля 2022 года, довольно внушительное количество западных банков перестали открывать счета россиянам или приостановили сотрудничество по текущем счетам. К санкциям против граждан РФ также присоединились всевозможные платежные системы, брокеры, крипто-биржи, фриланс площадки и так далее. В большинстве случаев от россиянина требуют сменить место жительства, и в качестве подтверждения требуют вид на жительства иностранного государства.

Если в истории с банками Армении из предыдущего поста, возникают все большие сложности при открытии счета, то процесс получения ВНЖ в Армении и его варианты можно смело назвать доступными. Это, конечно же не история, когда можно сделать ВНЖ дистанционно, не вылезая из дома, но в сравнении с той-же Грузией, Сербией, Турцией и Кипром, мне показалось проще и по процедуре и по шансам на одобрение.

В Армении существует два вида ВНЖ: на основании открытия ИП в Армении и дополнительная форма временного ВНЖ на основании трудоустройства в армянской фирме. Эта форма обладает почти теми же возможностями, что и условный бизнес-ВНЖ

Читать далее
Total votes 51: ↑48 and ↓3+45
Comments25

Блокчейн на C# (.Net Core 3.1), Часть 0

Reading time5 min
Views17K

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

под кат
Total votes 25: ↑18 and ↓7+11
Comments13

Структурное логирование и интерполированные строки в C# 10

Level of difficultyMedium
Reading time11 min
Views26K

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

Читать далее
Total votes 29: ↑29 and ↓0+29
Comments11

Избавляемся от постоянного написания конструкторов для инжекта зависимостей с помощью C# Source Generators

Reading time5 min
Views11K

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

Поэтому я решил автоматизировать это дело, благо в .NET 5 у нас есть такая возможность в виде Source Generators.

А так же хотелось поделиться библиотекой с теми, кого так же как и меня достало написание спагетти конструкторов!

Читать далее
Total votes 43: ↑38 and ↓5+33
Comments70

Blazor: Server и WebAssembly одновременно в одном приложении

Reading time8 min
Views18K


ASP.NET Core Blazor — это разработанная Microsoft веб-платформа, предназначенная для запуска на стороне клиента в браузере на основе WebAssembly (Blazor WebAssembly) или на стороне сервера в ASP.NET Core (Blazor Server), но две эти модели нельзя использовать одновременно. Подробнее о моделях размещения написано в документации.


В статье я расскажу о том, как


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

TL;DR:


Gif с демонстрацией полученного результата


Пример доступен на github.

Читать дальше →
Total votes 17: ↑17 and ↓0+17
Comments9

Паттерн CQRS: теория и практика в рамках ASP.Net Core 5

Reading time8 min
Views66K

Скорость разработки и производительность программистов могут отличаться в зависимости от их уровня и используемых в проектах технологиях. Для проектирования ПО нет стандартов и ГОСТов, только вы выбираете, как будете разрабатывать свою программу. Один из лучших способов повысить эффективность работы — применить шаблон проектирования CQRS. 

Существует три вида паттерна CQRS: Regular, Progressive и Deluxe. В этой статье я расскажу о первом — классическом паттерне Regular CQRS, который мы используем в DD Planet в рамках разработки онлайн-сервиса «Выберу.ру». Progressive и Deluxe — более сложные архитектуры и влекут за собой использование обширного набора абстракций.

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

Читать дальше
Total votes 5: ↑4 and ↓1+3
Comments27

Создание прекрасных приложений с помощью Xamarin.Forms

Reading time2 min
Views9.1K

Есть вопрос, который мне постоянно задают в Твиттере: как создавать приложения с крутым дизайном с помощью Xamarin.Forms? Это отличный вопрос, ведь любой может создавать красивые приложения, немного вдохновившись и поработав над стилем. Я не дизайнер и не претендую на звание дизайнера, но есть много отличных источников вдохновения для дизайна приложений, включая Dribbble, Uplabs и другие. Эти дизайны от талантливых людей со всего мира могут повлиять на внешний вид ваших собственных приложений.

Подробнее под катом!

Читать далее
Total votes 6: ↑5 and ↓1+4
Comments11

Application performance management (APM) от Broadcom для мониторинга производительности приложений (включая мобильные)

Reading time8 min
Views5.3K
Всем привет! В этой статье расскажем о возможностях мониторинга производительности приложений одного из лидеров квадранта Gartner c APM-решениями — Broadcom.

image

Appdynamics, Dynatrace и New Relic достаточно известны на российском рынке. Broadcom чуть менее знаком, этакая серая лошадка, однако, имеет не уступающий всем троим функционал мониторинга приложений. А использование APM-решения от Broadcom в комплексе с другим их продуктом, зонтичной AIOps-системой DX Operations Intelligence, позволит создать единое окно мониторинга для разнокалиберного ПО и инфраструктуры. Под катом текст и скриншоты.
Читать дальше →
Total votes 6: ↑5 and ↓1+4
Comments0

Владельцы MAPS.ME отменили изменения и вернули старое приложение. Надолго ли?

Reading time7 min
Views65K

Слева — старое приложение, справа — декабрьская версия от южнокорейцев. Источник: «Смерть MAPS.ME?»

В ноябре 2020 года Mail.Ru Group продала MAPS.ME южнокорейской компании Daegu Limited (входит в состав платёжной системы Parity.com), и уже 20 декабря 2020 года новые владельцы выпустили обновление, которое практически убило приложение.

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

К счастью, новые владельцы осознали глубину своей ошибки и откатили изменения. В апдейте от 30 декабря 2020 года восстановлена вся функциональность. Казалось бы, победа? Справедливость восторжествовала? Нет, в это слабо верится.
Читать дальше →
Total votes 70: ↑63 and ↓7+56
Comments58

Пора обновить ваш монитор

Reading time16 min
Views174K

Иллюстрация: Юлия Прокопова

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

Поэтому я оптимизирую настройки, чтобы показывать действительно, действительно хорошие буквы. Для этого необходим хороший монитор. Не просто нужен, а ОБЯЗАТЕЛЕН. А под «хорошим» я имею в виду настолько хороший, насколько это возможно. Это мои мысли, основанные на моём собственном опыте того, какие мониторы лучше подходят для программирования.
Читать дальше →
Total votes 181: ↑148 and ↓33+115
Comments991

A* pathfinding на C#: двоичные кучи и борьба с аллокациями

Reading time20 min
Views14K
Сегодня мы разбираем один из популярнейших алгоритмов поиска пути. Работать будем с двумерным массивом целочисленных координат.

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

Я был изумлен, когда поверхностный поиск не выдал мне ни одной качественной реализации алгоритма A* на C# без использования сторонних библиотек (это не значит, что их нет). А значит самое время размять пальцы!

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

Приступим!
Читать дальше →
Total votes 17: ↑17 and ↓0+17
Comments15

[Подборка] 6 no-code инструментов для быстрого запуска продуктов и автоматизации процессов

Reading time4 min
Views9.8K


Изображение: Designmodo

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

К счастью, сегодня все большее распространение получают no-code инструменты, которые позволяют решать ранее достаточно сложные задачи легко и без необходимости писать хоть строку кода. В новой статье я собрал несколько таких полезных инструментов, которыми пользуюсь сам, и которые позволяют быстро запускать качественные ИТ-продукты без больших вложений.
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments5

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

Reading time15 min
Views107K
Пользуетесь ли вы структурами данных и алгоритмами в повседневной работе? Я обратил внимание на то, что всё больше и больше людей считает алгоритмы чем-то таким, чем, без особой связи с реальностью, технические компании, лишь по собственной прихоти, интересуются на собеседованиях. Многие жалуются на то, что задачи на алгоритмы — это нечто из области теории, имеющей слабое отношение к настоящей работе. Такой взгляд на вещи, определённо, распространился после того, как Макс Хауэлл, автор Homebrew, опубликовал твит о том, что произошло с ним на собеседовании в Google:

Google: 90% наших инженеров пользуются программой, которую вы написали (Homebrew), но вы не можете инвертировать бинарное дерево на доске, поэтому — прощайте.

Хотя и у меня никогда не возникало нужды в инверсии бинарного дерева, я сталкивался с примерами реального использования структур данных и алгоритмов в повседневной работе, когда трудился в Skype/Microsoft, Skyscanner и Uber. Сюда входило написание кода и принятие решений, основанное на особенностях структур данных и алгоритмов. Но соответствующие знания я, по большей части, использовал для того чтобы понять то, как созданы некие системы, и то, почему они созданы именно так. Знание соответствующих концепций упрощает понимание архитектуры и реализации систем, в которых эти концепции используются.



В эту статью я включил рассказы о ситуациях, в которых структуры данных, вроде деревьев и графов, а так же различные алгоритмы, были использованы в реальных проектах. Здесь я надеюсь показать читателю то, что базовые знания структур данных и алгоритмов — это не бесполезная теория, нужная только для собеседований, а что-то такое, что, весьма вероятно, по-настоящему понадобится тому, кто работает в быстрорастущих инновационных технологических компаниях.
Читать дальше →
Total votes 71: ↑69 and ↓2+67
Comments53

Information

Rating
Does not participate
Registered
Activity