Как протестировать код на Go с базой данных? В этой статье опишу пример такого тестирования в связке с Postgres, очисткой на основе копирования базы данных и рассмотрю некоторые альтернативы.
User
System Design для самых маленьких. Reference к интервью
Эта статья-инструкция по построению высоконагруженных распределенных систем. Описанный подход может быть полезен как reference при подготовке к интервью по system design в FAANG и не только.
Как из метрик Prometheus построить график Latency
Обычно мы подключаем сбор метрик в prometheus к нашим web‑приложениям с помощью каких‑то клиентских библиотек, которые отдают метрики на /metrics
. В этой статье я хочу рассказать как визуализировать Latency с помощью Histogram метрики.
Будет полезно тем, кто еще не строил метрики из Prometheus, а так же тем, кто хочет понять как их интерпретировать.
Действительно ли Apache Kafka сохраняет правильный порядок сообщений?
Нам говорят, что Apache Kafka сохраняет порядок сообщений для каждой темы/раздела, но насколько это правда? В этой статье мы проанализируем несколько реальных сценариев, в которых слепое принятие этой догмы, может привести к неожиданным и ошибочным последовательностям сообщений.
Bigtech собесы дней минувших
В эпоху докризисной жизни, мне, как инженеру ориентировавшемуся на европейский и американский рынок, приходилось часто бывать на различных собеседованиях. Этот длиннотекст - краткое обобщение опыта общения с различными зарубежными компаниями в период 2021-2023 года в основном по профилю Software Engineer c редким вкраплением DevOps/SRE.
Книги, которые мы читаем
Вы видели отчёты крупных книжных онлайн-магазинов и маркетплейсов о самых читаемых книгах 2022 года? Скажу откровенно: любопытно, но мне бы не хотелось получить такой список литературы на лето. Причём ни из какого рейтинга. Отдельные — да, вполне, некоторые даже ждут своей очереди на полке или прочитаны, — а вот на все просто жалко времени. Но насколько же точно востребованные книги отражают нашу действительность и демонстрируют, как глубоки и сильны переживания читателей! Отчаяние, вера, желание помочь самому себе, стремление к быстрым и лёгким деньгами, спорадическое стремление к обучению и смене профессии, тяга к любви и красивой жизни, — обо всём говорят молчаливые обложки книг, не побоюсь сказать, бестселлеров.
А вот хабравчане накидали неплохой список книг, причём обосновали, чем же каждая из них хороша. Критики, которым я доверяю 🙂
ChatGPT как инструмент для поиска: решаем основную проблему
Вышедшая чуть больше месяца назад ChatGPT уже успела нашуметь: школьникам в Нью-Йорке запрещают использовать нейросеть в качестве помощника, её же ответы теперь не принимаются на StackOverflow, а Microsoft планирует интеграцию в поисковик Bing - чем, кстати, безумно обеспокоен СЕО Alphabet (Google) Сундар Пичаи. Настолько обеспокоен, что в своём письме-обращении к сотрудникам объявляет "Code Red" ситуацию. В то же время Сэм Альтман, CEO OpenAI - компании, разработавшей эту модель - заявляет, что полагаться на ответы ChatGPT пока не стоит.
Насколько мы действительно близки к внедрению продвинутых чат-ботов в поисковые системы, как может выглядеть новый интерфейс взаимодействия, и какие основные проблемы есть на пути интеграции? Могут ли модели сёрфить интернет бок о бок с традиционными поисковиками? На эти и многие другие вопросы постараемся ответить под катом.
Retry or No?
В этой статье разберем вариант реализации функционала перезапроса сообщений из семейства resilience шаблонов. Мы поговорим о retry. Точнее обсудим:
1. Что такое устойчивость и какое влияние на нее имеет retry?
2. Анализируем, где применять retry;
3. Реализуем retry;
4. Пишем unit-тесты с wiremock;
5.Делаем starter;
Часть 3. Управление знаниями в Obsidian. Продвинутые техники. Excalibrain. Spaced repetition. Breadcrumbs. Longform
Эта статья завершает цикл "Управление знаниями в Obsidian". В ней будет предполагаться, что вы способны понять все техники и приемы из прошлой второй части про базовый рабочий процесс, т.к. здесь будут показаны продвинутые способы управления персональной базой знаний. В частности, статья затронет следующие темы:
• Ведение визуальной базы знаний (Excalidraw + Excalibrain)
• Создание системы для интервального повторения (Spaced repetition)
• Создание гибкой иерархии (Breadcrumbs + Excalibrain)
• Использование алгоритмов для поиска новых связей между заметками (Graph Analysis)
• Написание длинных текстов (Longform)
Как научиться разработке на Python: новый видеокурс Яндекса
Для изучения курса нужно знать основы Python и понимать, как приложения развёртываются на серверах. Мы ждём, что вы умеете делать запросы к базам данных и знаете, как создаются веб‑приложения, — хотя бы на начальном уровне.
Разбираемся с Redis
Этот материал представляет собой глубокое исследование всего, что связано с Redis. В частности — речь пойдёт о различных способах организации хранилищ Redis, о постоянном хранении данных, о форках процессов.
Без одной faangи или как я проходил собеседования
Привет, Хабр! Меня зовут Рустам, работаю программистом 9 лет. 7 лет работал в Контуре и около 2 лет в Яндексе. В этой статье расскажу про свой опыт подготовки и прохождения собеседований в большие технологические компании, поделюсь рекомендациями.
Пробовался в Facebook, Apple, Amazon, Microsoft, Google. Пять попыток: четыре на бэкенд программиста, одна на инженера по инфраструктуре. Два предложения по работе, два отказа, одно потенциальное предложение.
Принял предложение в Amazon. Сейчас в Лондоне.
Feature freeze С++23. Итоги летней встречи комитета
На недавней встрече комитет C++ «прорвало», и в черновую версию C++23 добавили:
std::mdspan
std::flat_map
std::flat_set
- freestanding
std::print("Hello {}", "world")
- форматированный вывод ranges
constexpr
дляbitset
,to_chars/from_chars
std::string::substr() &&
import std;
std::start_lifetime_as
static operator()
[[assume(x > 0)]];
- 16- и 128-битные float
std::generator
- и очень много другого
Как продакту заработать авторитет в команде
В этой статье:
— Чтобы заслужить доверие заказчика, нужно регулярно и последовательно обеспечивать точки касания его и идеи
— PMM - это сказка, мечта и, вообще, топ штука
— Не надо быть азиатом, чтобы быть на хорошем счету – надо вложиться, сделать домашку
— Синьор продакт – это не человек…
Как тимлиду достоверно знать срок выполнения задач, не отвлекая подчиненных
Тимлиду постоянно приходится отвечать на вопрос «когда сделаете?» или «когда будет готово?». И часто для ответа на этот вопрос нужно отвлечь от работы своего сотрудника, обсудить с ним задачу и только после этого дать ответ.
Не факт, что ответ совпадет с реальностью. И любой руководитель знает, что для того, чтобы гарантированно уложиться в названый срок, нужно заложить минимум трехкратный запас времени. Заказчики этот принцип тоже знают и поэтому стремятся срезать срок, насколько это возможно. Тимлиду опять приходится отвлекать сотрудника и обсуждать с ним «варианты оптимизации сроков выполнения». Потом цикл повторяется до тех пор, пока кто-то — либо заказчик, либо тимлид — не упрется рогом, не продавит свое решение.
Недовольными, как правило, оказываются все. Тем не менее все постоянно играют в эту игру, и никто никому не верит.
Однако, если использовать исторические данные по сделанным ранее проектам и задачам, то можно узнать с 80% вероятностью срок исполнения задачи любого типа. Никакой магии. Просто математика и немного теории вероятностей :)) В этом суть Канбан-метода.
Эй-Яй, крипта, MLOps и командный пет-проджект
В этой статье я расскажу, как мы командой пилили пет-проджект в рамках курса ODS по MLOps. Покажу не только финальный результат, но и немного расскажу про процесс работы, какие были сложности, как организовывали эффективную работу в команде. Может оказаться полезным для тех, кто хочет окунуться в Machine Learning и сделать свой пет-проджект, но пока чего-то не хватало. Также будет полезно тем, кто уже работает в области Data Science, но пока не окунулся в атмосферу DS, нет крутых коллег и разгвооров про фреймворки у кофемашины, а опыт командной работы именно в области DS получить хочется.
Сразу про то, что получилось на выходе: https://cryptobarometer.org/
Геймификация обучения в IT
Геймификация — это процесс использования игровых элементов в неигровом контексте. Он имеет много преимуществ по сравнению с традиционными подходами к обучению, в том числе:
Как одолеть вопросы по АБ тестам с собеседований
Данная статья продолжение моих "баталий" с HR-ами в январе этого года: погружусь в тему АБ тестов на основе своего опыта прохождения собеседований.
Т.к. данная тема не самая простая для аналитиков, и не только для нас. То давайте начнем с базовых теоретических вопросов, которые спрашивают на собесах - можно использовать данную статью, как гайд для погружения в АБ тесты.
Пережить распродажу на Ozon: хайлоад, сковородки и 38 инфарктов
Мы нечасто задумываемся о том, как работает тот или иной сервис и какой объём работ скрывается за тем, чтобы товар или услуга прибыли к нам вовремя. Взять, например, «чёрную пятницу» и День холостяка в e-com — дни самых больших распродаж. Казалось бы, что там такого? Со стороны может выглядеть, что главное — прогреть аудиторию предложениями разной степени заманчивости и запастись товарами на складах. Конечно, это не так. На деле нескольким дням распродаж предшествует год активной подготовки: от прогнозирования нагрузки и закупки железок до перестройки архитектуры. О том, на что мы обращали внимание и как готовились к высокому сезону, читайте под катом.
Мягкий способ релокации в Европу, или Поиск тихой гавани в неспокойные времена
Если 20-21 года можно назвать «годами удалёнки», то 2022 можно назвать годом релокации. Если раньше мысль о переезде посещала меня в формате «ну когда-нибудь потом, перееду в тепло ближе к пенсии», то после февраля этого года, когда зарубежные компании начали сворачивать бизнес в России, заказчики — сокращать бюджеты, а деньги со счёта в банке можно ждать неделями — вопрос о переезде в другую страну встал ребром. Причём не с целью «переждать», а как минимум для небольшой адаптации за рубежом, для возможного переезда уже на ПМЖ.
В качестве такой первой остановки выбрал Сербию (почему именно её расскажу дальше). Если вас тоже посещали/посещают мысли уехать — переходите под кат, там я делюсь своими критериями выбора страны, деталями переезда и сведениями, которые удалось узнать у уже переехавших.
Information
- Rating
- Does not participate
- Registered
- Activity