Привет, Хабр!
Собрать Lakehouse на слайде несложно. Берём S3-совместимое хранилище, добавляем Iceberg, Spark, Trino, Kafka, Airflow и каталог данных. Получается современно, масштабируемо и архитектурно красиво. Гораздо сложнее сделать так, чтобы эта конструкция работала в определенных корпоративных сценариях. В статье попробуем отделить архитектурную концепцию от маркетинга и разобраться, как на самом деле идут проекты внедрения Data Lakehouse в России: какие решения доступны на рынке, какие проблемы платформа не решает, когда её внедрение имеет смысл и как выбрать подход к миграции.
Читать далееКогда я только начал изучать рынок разработки в США, меня в первую очередь заинтересовали их зарплаты. И такие зарплаты американских Software Engineer, как $150k, $180k, $200k+ в год, для меня, на тот момент обычного middle‑разработчика из РФ, выглядели непривычно большими. И у меня быстро возник вопрос: А за что, собственно, американская компания готова платить такие деньги?
Неужели просто за знание React, Node.js, TypeScript и AWS?
И после глубокого изучения американского рынка я пришёл к такому выводу, что высокая компенсация связана не столько с количеством технологий в резюме, сколько с тем, какую часть инженерной ответственности разработчик способен взять на себя. Но сначала про их зарплаты.
В США имеет смысл различать два понятия: Base Salary — фиксированная зарплата и Total Compensation (TC) — общая годовая компенсация, которая обычно включает base salary, бонус и акции/RSU. TC нельзя напрямую сравнивать с зарплатой в РФ: equity может быть существенной частью компенсации, а её структура и ликвидность отличаются. По актуальным данным из Levels.fyi, на август 2026 года медианная Total Compensation Software Engineer в США составляет около $195k. 25-й перцентиль — около $137k, 75-й — около $282k, и это данные по Software Engineer всех уровней. Поэтому я сделал выборку с конкретными уровнями, которые можно приблизительно сопоставить с Middle.
Читать далееСегодня компании все чаще используют нейросети не только для отдельных запросов, но и для выполнения целых цепочек задач. ИИ-агент может самостоятельно найти информацию, написать код, обратиться к внутренней системе и подготовить результат. Чем больше таких действий система выполняет без участия человека, тем важнее становится контроль за ее работой и тем выше цена ошибки.
На третьем фестивале True Tech Friends эксперты обсудили реальные случаи внедрения ИИ-агентов и ситуации, в которых автоматизация начинала работать не так, как от нее ожидали. В центре дискуссии оказался практический вопрос: где агенту действительно нужна автономность, а какие задачи лучше оставить обычным алгоритмам.
В обсуждении приняли участие Ярослав Лосев, руководитель команды фронтенд-разработки «Яндекс Путешествий», Сергей Курбанов, руководитель исследований и разработок MWS, и Даниил Слюсарь, руководитель разработки PT Application Inspector в Positive Technologies.
Читать далееРазбор одной инженерной задачи: как приложение рядом с игрой читает чат прямо из памяти процесса, почему первый способ это делать сжигал половину ядра и что пришло ему на смену. Тема — память чужого процесса, строка, которая не стоит на месте, и мёртвая копия, неотличимая от живой.
Читать далееЗадумывались ли вы когда-нибудь о том, что на самом деле происходит под капотом, когда вы рендерите приложение React? Мы знаем, что React строит дерево DOM и отображает UI на экране, но как React конструирует это дерево и как он эффективно обновляет его при изменении состояния?
В этой статье мы рассмотрим React Fiber — основной движок согласования (reconciliation) React. Мы рассмотрим, как React строил DOM до v15, недостатки этой ранней стековой (stack) модели с точки зрения производительности и то, как асинхронная архитектура Fiber решает эти проблемы, начиная с React v16 и до React v19.
Читать далееПривет, Хабр! Я Евгений Шувагин, последний год работаю над компонентом Face-Shot в Т-Банке.
Представим ситуацию: клиент хочет перевести большую сумму, используя мобильное приложение. Внутренние системы видят подозрительную активность и запрашивают проверку по селфи, человек наводит камеру на лицо — получает отказ. А все из-за того, что на бэкенде была получена размытая фотография потолка с кусочком лица пользователя, по которому никак не понять, действительно ли это владелец счета хочет провести операцию. Клиент звонит в поддержку, злится. Банк теряет доверие. Именно такие сценарии заставили нас серьезно заняться качеством записываемого фото.
Читать далееВы можете назвать свою компанию красиво: вплести свое имя или вдохновляющий текст. Но это не гарантирует безопасность бизнеса, если вы не учли требования закона к интеллектуальной собственности.
При чем здесь интеллектуальная собственность?
Название организации, название бренда или название компании – это слова из обычной речи. В разговоре вы их используете без последствий для себя и своего бизнеса.
Другое дело, если вы хотите закрепить название компании исключительно за собой. С этого момента вы имеете дело с фирменным наименованием – объектом интеллектуальной собственности.
Интеллектуальная собственность охраняется законом по-особенному.
Читать далееКак просьба друга «настроить кассу» закончилась open-source ERP, тринадцатью российскими интеграциями и нейросетью, которая теперь считает закупки, ищет косяки в учёте и пишет владельцу в Telegram.
Есть у меня друг. Назовём его Артём.
Полгода назад он решил открыть ресторан. Небольшой: пятнадцать столиков, кухня, бар, доставка. Никакой федеральной сети и отдела автоматизации на сорок человек. Обычный ресторан, где владелец ещё вчера выбирал стулья, сегодня разбирается с поставщиком мяса, а вечером внезапно узнаёт, что касса тоже требует внимания.
Примерно за месяц до открытия Артём пришёл ко мне с классической фразой:
— Слушай, тыжепрограммист. Помоги систему настроить. Ну чтобы касса, кухня, заказы — всё нормально работало.
Если вы когда-нибудь были «тем самым знакомым программистом», то примерно понимаете, чем обычно заканчивается слово «помоги». Сначала задача выглядела просто: выбрать что-нибудь вроде iiko, поставить, настроить и забыть.
В итоге я полез смотреть, как вообще устроен ресторанный софт, перебрал несколько систем, остановился на open source, русифицировал его, прикрутил российские кассы, банки, 1С, маркировку, агрегаторов доставки, а потом зачем-то решил, что обычной автоматизации мне уже мало.
Так в ресторане появился DeepSeek, который скоро заменит Артема, а может и всех остальных. Сам будет заказывать еду, сам кушать... ну это я отвлекся.
Сразу важный момент. Я не писал ресторанную ERP с нуля. Это был бы отличный способ потратить много времени и получить плохую кассу. Я взял готовую open-source систему и начал допиливать её под конкретный ресторан. И вот здесь всё стало интереснее.
Читать далееЕсли вы пытались спарсить сайт на Cloudflare через Selenium или Playwright и упёрлись в бесконечный «Verify you are human» — дело не в вашем коде. Дело в том, что Cloudflare палит автоматизацию браузера ещё до того, как отработает первая строчка JS‑скрипта.
Читать далееПредставим, что вам предстоит приобрести новый автомобиль. Хотел бы я сказать, что сам столкнулся с таким выбором, но увы и ах… С одной стороны — красивый внедорожник с трехлитровым бензиновым двигателем, а с другой — технологичный электрокар с возможностью бесплатно парковаться и большой переноской (зарядкой-удлинителем). Что вы выберете? Скорее всего, «электричку», которая будет работать и в бензиновый кризис. При этом пару лет назад многие наоборот выбрали бы кроссовер. Получается, при любой крупной покупке надо учитывать риски и возможности в долгосрочной перспективе, а не только ситуацию здесь и сейчас.
Что же выбрать?Полтора года назад разговор про AI и архитектуру обычно сводился к одному вопросу: насколько быстрее теперь пишется код. Сейчас вопрос звучит иначе. Если значительная часть проектирования и реализации переходит к AI‑агентам — что происходит с самой системой принятия архитектурных решений?
Читать далееStockfish умеет находить сильные ходы. Но браузерному расширению ещё нужно понять, какая из нескольких досок относится к текущей партии, дождаться стабильной позиции, пережить остановку service worker и не показать устаревший результат.
Дальше не про кнопки, а про проверки: какая доска настоящая, не протух ли ответ, пока считал движок, куда девать WASM, когда Chrome гасит service worker, и почему «сыграй как 1500» нельзя получить, урезав глубину. Отдельно, без эвфемизмов: подсказка в партии с человеком — это чит.
Читать далееИз новостей: аудитория The Rogue Prince of Persia достигла 1 миллиона игроков, 2 миллиона вишей у новой Onimusha, Харви Смит открыл собственную студию, Уоррен Спектор ушёл из индустрии, Double Fine пытается выжить через KS, 4 миллиона проданных копий у 007 First Light.
Из интересностей: как создать 3D-рендерер для Playdate, 5 месяцев на игровой движок и месяц на игру, как дырявый Shareware‑диск позволил спиратить Quake, алгоритм для бесшовной генерации подземелий.
Читать далееDoorDash построили внутреннюю платформу для облачных AI-агентов под названием Flux. Масштаб уже впечатляющий: за один месяц 2026 года через неё прогнали 130 000 инженерных задач, включая свыше 25 000 автоматических код-ревью в неделю и более 10 000 запусков playbook'ов из более чем 300 уникальных сценариев — всё это работает без участия человека, параллельно и круглосуточно.
Почему ушли от локальных агентов на ноутбуках
Команда описывает три конкретных ограничения агентных воркфлоу, запущенных прямо на машинах инженеров:
Читать далееЭтой весной мне понадобился лист QR‑кодов с подписями: по коду на каждую позицию, чтобы скачать PDF, распечатать и разрезать. Онлайн‑генераторы делают коды по одному или просят подписку за пакет, так что я написал свой сервис на PHP 8.2. В посте про то, что интереснее разработчику: чистое детерминированное ядро с golden‑тестами байт‑в-байт, кириллические домены и punycode, кириллица, которую TCPDF молча теряет в SVG, артикулы в виде 4.6E+12 из Excel, “прозрачный” PNG с маджентовым фоном и самописный EAN-13 с оракулом в тестах.
Читать далееЗаходят как на электронную почту разработчики на C++, а там письма про легаси.
И это не начало анекдота, а начало email-проекта Ghost in the code — серии писем от опытных инженеров о том, какие инструменты и процессы помогают наладить работу с легаси-кодом. Среди авторов — Антон Полухин, Константин Владимиров, Андрей Карпов и другие инженеры из крупных технологических компаний. Первое письмо придет 15 сентября, а пока выясним, о чем расскажут эксперты и что ждет тех, кто решит все задачи от авторов.
Погрузиться в легасиКогда используешь корпоративный VPN для рабочих сервисов и локальный прокси для “внешних” сайтов, то иногда просто добавить основной домен в прокси оказывается недостаточно:
YouTube может остаться без превью, Letterboxd — без постеров, а ChatGPT — без загрузки файлов.
Расскажу, как сделал свой велосипед сделал Chrome-расширение, которое ищет такие внешние зависимости в двух режимах: анализирует уже загруженную страницу или записывает домены, появившиеся во время конкретного действия. И почему отсеять аналитику и фоновый шум, выбрать безопасную область правила и при этом не запрашивать доступ ко всему трафику оказалось сложнее, чем просто собрать список доменов.
Читать далееКаждый, кто хоть раз устанавливал Linux вручную, знает этот ритуал: загрузиться с Live‑образа, запустить fdisk или parted, создать таблицу разделов, отформатировать их в btrfs/ext4, создать субтома, а затем вручную примонтировать всё это в /mnt.
Конечно, такой подход можно использовать и при установке NixOs. Но вопрос — зачем?
Это не только полностью противоречит самой сути NixOS — системы, где всё должно быть описано декларативно в коде, но и существенно влияет вообще на удобство использования этой системы в будущем. Стоит вам захотеть развернуть точно такую же конфигурацию на другом сервере или ноутбуке, и весь ручной процесс разметки приходится повторять заново, вспоминая точные флаги монтирования вместо того, чтобы написать всего лишь одну команду.
В этой статье мы этим вопросом и займёмся, а поможет нам в этом известная утилита disko. Мы напишем чистый декларативный конфигурационный файл в ДВУХ вариантах:
Читать далееAI-агента сегодня можно собрать за несколько часов. Но это не значит, что бизнес понимает, где его действительно стоит внедрять.
Компании часто начинают с Build: выбирают модель, подключают Jira, GitHub, MCP, собирают workflow. А уже потом пытаются понять, какую проблему они вообще решили.
В статье разбираю другой подход: сначала найти места, где команда теряет время на восстановление контекста, ручную координацию и переключение между системами. Для этого мы используем Context Audit и понятие контекстного долга.
Поговорим о том, как увидеть такие проблемы в Jira, Confluence и GitHub, почему не каждую из них стоит автоматизировать и что делать после аудита.
Читать далееКак я улучшил гибридный квантово-устройчивый протокол шифрования за 4 месяца экспериментов. Разбор различных методов ротации ключей, NTT и других нюансов проектирования протоколов шифрования с объяснением.
Читать далее