/блог
Длинные разборы проектов: зачем, как устроено внутри, где было сложно и как я это решил.
← На главнуюDokploy, ZITADEL, FlexPrice, SigNoz, PostHog, Pangolin, свой SMS-шлюз на 4G-модеме и десяток баз данных — полный стек, на котором держится всё остальное в этом блоге.
MTProto с нуля на Go: 355 из 781 метода, каждый подтверждён реальным e2e-тестом, честный E2EE на X3DH и Double Ratchet — и манифест, который однажды сам поймал 188 методов, забытых в статусе planned.
Полная реализация протокола Discord: REST v9/v10, Gateway v10, голос через SFU — и баг, который увидел только честный e2e-тест с двумя живыми участниками звонка.
Один скомпрометированный контейнер, систематический аудит всего остального парка и шесть архитектурных изменений: OpenBao, изоляция БД, сетевая изоляция, rootless-контейнеры, сканирование уязвимостей и обновление всех образов — включая тот самый уязвимый Next.js.
8+ self-hosted MCP-серверов, два форкнутых CLI-инструмента для ИИ-кодинга с одним захардкоженным эндпоинтом и свой LLM-шлюз под ними — что пришлось перенастроить, чтобы всё это заработало на инфраструктуре без единого вендорского облака.
Зачем тратить вычисления на инференсе в виде токенов? Я собрал latentGPT — рекуррентный reasoner с нуля — чтобы понять, когда итерации в латентном пространстве выигрывают у chain-of-thought и как не дать им коллапсировать.