Вам (не) нужен рефакторинг
За всю мою карьеру в 80% «полезный» рефакторинг приводил к случаям: «ой у нас отвалилось треть функционала».
👨💻 Рефакторинг это норма и конечно можно и нужно его делать. Но вот когда все работает и когда есть бизнес фичи ЗАЧЕМ?)
💃 Сразу вспоминаю когда быстро нужно было напилить MVP за 3 месяца. Пришла новая разработница никого не спросив переписала кучу классов, работу с апишкой и отвалились все мои крит фичи, которые должны были показывать на демо.
Кайф да и только 😋😍
За всю мою карьеру в 80% «полезный» рефакторинг приводил к случаям: «ой у нас отвалилось треть функционала».
Кайф да и только 😋😍
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3👍2🤔2
Пхукет, ИИ, Cursor
Делюсь последними новостями. Максимально спонтанно улетел из Питера в Тай и скорее всего проведу зиму в Азии.
В работе сейчас активно работаю с ИИ, интегрирую большие системы собственные разработки компании и внешние, пишу ИИ-агентов.
😳 Что меня удивило: все используют курсор в работе и это максимально поощряется.
🙈 Буквально год назад курсор только вышел, а сейчас
все планирование происходит с помощью него.
Сама разработка и скорость быстро поменялась. Теперь вайб-кодинг норма👍
ℹ️ Буду делиться интересными вещами про нейронки в собственной работе, которые реально ускоряют работу, а что пока что нейронки не способы сделать
Делюсь последними новостями. Максимально спонтанно улетел из Питера в Тай и скорее всего проведу зиму в Азии.
В работе сейчас активно работаю с ИИ, интегрирую большие системы собственные разработки компании и внешние, пишу ИИ-агентов.
🙈 Буквально год назад курсор только вышел, а сейчас
все планирование происходит с помощью него.
Сама разработка и скорость быстро поменялась. Теперь вайб-кодинг норма
ℹ️ Буду делиться интересными вещами про нейронки в собственной работе, которые реально ускоряют работу, а что пока что нейронки не способы сделать
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12💋3👍2
Зимовка айтишника на Пхукете, Бали
Уже как полтора месяца назад улетел из Питера в Азию и работаю отсюда. Проехал Пхукет 🇹🇭 , Бали 🇮🇩 , Гонконг 🇭🇰 , Шеньжень 🇨🇳
➕ Плюсы
В +28 куда приятнее жить и работать , чем в -10 и без солнца😄
Стоимость жизни: в ЮВ Азии жизнь гораздо дешевле чем в Питере или Москве.
Перезагрузка головы: новый контекст освежает и придает новые идеи💡
➖ Сложности
Дисциплина: очень сложно работать, хочется пойти на пляж и начать смузихлебить
Таймзоны: начинаю работать в 15 а заканчиваю в 23. Когда все отдыхают вечером ты только заканчиваешь.
Т.к. у меня нет никаких обязательств и я свободен зимовка нереально крутой вариант, которым нельзя не пользоваться.
Уже как полтора месяца назад улетел из Питера в Азию и работаю отсюда. Проехал Пхукет 🇹🇭 , Бали 🇮🇩 , Гонконг 🇭🇰 , Шеньжень 🇨🇳
➕ Плюсы
В +28 куда приятнее жить и работать , чем в -10 и без солнца
Стоимость жизни: в ЮВ Азии жизнь гораздо дешевле чем в Питере или Москве.
Перезагрузка головы: новый контекст освежает и придает новые идеи
➖ Сложности
Дисциплина: очень сложно работать, хочется пойти на пляж и начать смузихлебить
Таймзоны: начинаю работать в 15 а заканчиваю в 23. Когда все отдыхают вечером ты только заканчиваешь.
Т.к. у меня нет никаких обязательств и я свободен зимовка нереально крутой вариант, которым нельзя не пользоваться.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤10🔥4💋1
Расскажу, как на моём реальном проекте внедряются нейронки
Это не просто
«отправил данные по API с токеном и визуализировал результат»
1️⃣ Системный промпт
При любых интеграциях отдельно пишется системный промпт.
Он отвечает за:
📐 формат ответа (строгая структура, строгая схема)
🚧 ограничения и правила
export const SYSTEM_PROMPT_V1 = `
You are an assistant helping to analyze user input.
Rules:
- Return JSON only
- If data is insufficient, return "INSUFFICIENT_DATA"
Output format:
{
"summary": string,
"confidence": number
}
`;
2️⃣ Анонимизация данных 🔐
Перед тем как отправить персональные данные, их обязательно нужно обезличить.
Мы сделали отдельный сервис анонимизации, который:
Внутри сервиса анонимизации крутится отдельная логика замены данных.
POST /anonymize
{
"text": "Иван Иванов работает в компании X и живет в Москве"
}
function anonymize(text: string) {
return text
.replace(/[А-ЯЁ][а-яё]+ [А-ЯЁ][а-яё]+/g, "USER_NAME")
.replace(/Москва|Санкт-Петербург/g, "CITY");
}
3️⃣ Оркестратор вместо прямого вызова AI
Мы не дергаем ChatGPT напрямую
Есть оркестратор, который:
async function aiPipeline(rawInput: UserInput) {
const anonymized = await anonymizeService(rawInput);
const preparedPrompt = buildPrompt({
system: promptRegistry.v1,
user: anonymized.text,
});
const aiResponse = await callLLM(preparedPrompt);
const validated = validate(aiResponse);
return postProcess(validated);
}
4️⃣ Пост-обработка ответа
Ответ модели это не конец. После ответа LLM мы:
Только после этого мы начинаем видеть результат.
Сам пайплайн в реальности куда сложнее,
но база именно такая.
При интеграции важно учесть архитектуру, безопасность, контроль и ограничения
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤2🔥1
Микрофронтенды
Микрофронты — это подход, при котором большое фронтенд-приложение разбивается на независимые части, каждая из которых:
🚧 разрабатывается отдельно
🚀 может деплоиться независимо
👥 имеет свою команду и ответственность
По сути, это микросервисы, но для фронтенда🧩
🤔 Зачем это делают?
Тут похоже как с микросервисами:
желание поделить монолит на независимые куски,
чтобы не зависеть от других команд / функционала.
👨💻 Как это выглядит в коде
SPA composition (через роутинг)
Shell-приложение решает, какое SPA показывать по URL:
✅ Плюсы очевидны:
- независимые релизы
- масштабирование команд
- изоляцию ошибок
- можно использовать React, Vue, Angular одновременно
❌ Минусы тоже есть:
- сложнее инфраструктура
- сложнее дебаг
- выше требования к архитектуре
Для стартапа или маленькой команды чаще всего монолит лучший выбор.
Микрофронты оправданы, если вы работаете на большом проекте 🏗️
В моей практике я использовал микрофронты на очень больших проектах:
🏦 2 больших банка и 🛒 маркетплейс.
Есть несколько вариантов реализации: Module Federation, iframe, SPA composition
Микрофронты — это подход, при котором большое фронтенд-приложение разбивается на независимые части, каждая из которых:
🚧 разрабатывается отдельно
По сути, это микросервисы, но для фронтенда
Тут похоже как с микросервисами:
желание поделить монолит на независимые куски,
чтобы не зависеть от других команд / функционала.
👨💻 Как это выглядит в коде
SPA composition (через роутинг)
Shell-приложение решает, какое SPA показывать по URL:
// shell/App.tsx
import { BrowserRouter, Routes, Route } from "react-router-dom";
export function App() {
return (
<BrowserRouter>
<Routes>
<Route path="/profile/*" element={<ProfileApp />} />
<Route path="/billing/*" element={<BillingApp />} />
</Routes>
</BrowserRouter>
);
}
- независимые релизы
- масштабирование команд
- изоляцию ошибок
- можно использовать React, Vue, Angular одновременно
❌ Минусы тоже есть:
- сложнее инфраструктура
- сложнее дебаг
- выше требования к архитектуре
Для стартапа или маленькой команды чаще всего монолит лучший выбор.
Микрофронты оправданы, если вы работаете на большом проекте 🏗️
В моей практике я использовал микрофронты на очень больших проектах:
Есть несколько вариантов реализации: Module Federation, iframe, SPA composition
// profile/webpack.config.js
new ModuleFederationPlugin({
name: "profile",
exposes: {
"./ProfileWidget": "./src/ProfileWidget",
},
});
<iframe
src="https://billing.example.com"
style="width:100%; height:100%; border:0"
/>
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥2👍1
САМАЯ СЛОЖНАЯ АРХИТЕКТУРА
В новом ролике поговорим о подходе микрофронтов.
В чем отличие от микросервисов и почему Яндекс и Сбер используют эту архитектуру?
В новом ролике поговорим о подходе микрофронтов.
В чем отличие от микросервисов и почему Яндекс и Сбер используют эту архитектуру?
YouTube
Микрофронтенды убивают фронтенд? Горькая правда
Бесплатный пробный урок по микрофронтам - https://kostya-it.pro/microfront/
Получить доступ к интенсиву в телеграм https://web.tribute.tg/s/LJi
Микрофронтенды — это решение или архитектурная ловушка?
В этом видео разбир - аем микрофронты без хайпа и иллюзий:…
Получить доступ к интенсиву в телеграм https://web.tribute.tg/s/LJi
Микрофронтенды — это решение или архитектурная ловушка?
В этом видео разбир - аем микрофронты без хайпа и иллюзий:…
❤5🔥4🆒2
Самая дорогая фронтенд-архитектура
Есть фронтенд-навыки, которые просто закрывают задачи.
А есть те, которые повышают ценность разработчика на рынке.
💫 Микрофронты из второй категории.
их сильно ценят крупные компании — и готовы за это платить.
Микрофронты появляются, когда продукт становится большим:
много команд, независимые релизы, сложные домены.
В этот момент фронтенд перестаёт быть приложением
и становится сложной системой.
В которой вопросы без простых ответов:
— какие зависимости shared?
— кто владеет роутингом?
— где границы ответственности?
Одна строка здесь уже архитектурное решение.
Поэтому микрофронты — одна из самых сложных
и самых дорогих архитектур во фронтенде.
На этом и построен мой интенсив по микрофронтам:
архитектура, реальные кейсы и мышление сильного инженера .
Если хочешь прокачать навык, который реально ценят работодатели смотри пробный урок.
👉 ПРОБНЫЙ УРОК
❗️ Узнать детальнее в личке
👉 ПОЛУЧИТЬ ДОСТУП
Есть фронтенд-навыки, которые просто закрывают задачи.
А есть те, которые повышают ценность разработчика на рынке.
их сильно ценят крупные компании — и готовы за это платить.
Микрофронты появляются, когда продукт становится большим:
много команд, независимые релизы, сложные домены.
В этот момент фронтенд перестаёт быть приложением
и становится сложной системой.
В которой вопросы без простых ответов:
— какие зависимости shared?
— кто владеет роутингом?
— где границы ответственности?
shared: {
react: { singleton: true },
'react-dom': { singleton: true }
}
Одна строка здесь уже архитектурное решение.
Поэтому микрофронты — одна из самых сложных
и самых дорогих архитектур во фронтенде.
На этом и построен мой интенсив по микрофронтам:
архитектура, реальные кейсы и мышление сильного инженера .
Если хочешь прокачать навык, который реально ценят работодатели смотри пробный урок.
👉 ПРОБНЫЙ УРОК
👉 ПОЛУЧИТЬ ДОСТУП
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
Konstantin
You can contact @kostya_xxxx right away.
🔥11❤5🥰2
Микрофронты в банке: архитектура, за которую платят дорого
Это было большое банковское приложение, которое в итоге грузило 15 микрофронтов.
Несколько команд, разные домены, независимые релизы классика для MFE.
На старте всё выглядело красиво на схеме.
А в реальности сложности начались почти сразу.
Первое — общие зависимости.
UI Kit должен быть единым, но обновляться безопасно.
Второе — общение между микрофронтами.
Прямые импорты запрещены, global state — риск.
Мы сделали отдельный пакет в Nexus npm, который выступал контрактом:
Этот пакет обновлялся отдельно и жёстко контролировался.
Главное открытие — микрофронты ломаются не из-за кода,
а из-за отсутствия правил и границ ответственности.
Именно такой реальный опыт я разбираю на интенсиве по микрофронтам:
архитектура, контракты, ошибки и решения из продакшена.
Если хочешь понять, как это делают в больших продуктах:
Смотри
👉ПРОБНЫЙ УРОК
👉 Узнать детальнее в лс
ПОЛУЧИТЬ ДОСТУП
Это было большое банковское приложение, которое в итоге грузило 15 микрофронтов.
Несколько команд, разные домены, независимые релизы классика для MFE.
На старте всё выглядело красиво на схеме.
А в реальности сложности начались почти сразу.
Первое — общие зависимости.
UI Kit должен быть единым, но обновляться безопасно.
shared: {
react: { singleton: true },
'@bank/ui-kit': { singleton: true }
}Второе — общение между микрофронтами.
Прямые импорты запрещены, global state — риск.
Мы сделали отдельный пакет в Nexus npm, который выступал контрактом:
// @bank/mf-bridge
export const events = createEventBus();
events.emit('user:logout');
events.on('user:updated', handler);
Этот пакет обновлялся отдельно и жёстко контролировался.
Главное открытие — микрофронты ломаются не из-за кода,
а из-за отсутствия правил и границ ответственности.
Именно такой реальный опыт я разбираю на интенсиве по микрофронтам:
архитектура, контракты, ошибки и решения из продакшена.
Если хочешь понять, как это делают в больших продуктах:
Смотри
👉ПРОБНЫЙ УРОК
👉 Узнать детальнее в лс
ПОЛУЧИТЬ ДОСТУП
Telegram
Konstantin
You can contact @kostya_xxxx right away.
✍5❤3👍3
Миллион WebSocket соединений
Представьте что у вас огромный поток пользователей и уперлись в аппартные ограничения. Что делать? Как масштабировать?
В новом ролике поговорим про вертикальное и горизонтальное масштабирование
Представьте что у вас огромный поток пользователей и уперлись в аппартные ограничения. Что делать? Как масштабировать?
В новом ролике поговорим про вертикальное и горизонтальное масштабирование
👍5🔥3❤1