По темам учли все пожелания - будем писать методы Promise, массивов, строк. Но только те, что спрашивают и попадались на собеседованиях.
Можно учавствовать не только в качестве слушателя, но и решать задачи вместе с нами, предлагать интересные решения
Вместе будем прокачиваться, рассуждать и кайфовать с прогресса💪
Всех ждём! 🤝
📆Время: 20:00
📌Место: Telegram
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12🔥7
Привет! Хочу пообщаться с теми, кто хочет получить оффер Х2 от своей ЗП и не знает, как это сделать, или не получается.
Задумался над тем, как сделать менторство и канал еще лучше, а для этого мне нужно понять, чего вам не хватает в первую очередь.
Предлагаю 2 формата: заполнить анкету и созвониться.
Заполнить анкету займет минут 10 – сделай это прямо сейчас:
👉ЗАПОЛНИТЬ АНКЕТУ
При отправке заполненной формы можно будет скачать гайд по поиску работы и сборник задач с реальных собеседований по теме Hash-map.
А также приглашаю на интервью минут на 30. Что вы от этого получите:
- Найдете свои точки роста
- Станете партнером создания продукта
- В благодарность я бесплатно проведу для тебя мок-собеседование на 30 минут.
Кто готов – пишите сюда: @codepunks_bro
Задумался над тем, как сделать менторство и канал еще лучше, а для этого мне нужно понять, чего вам не хватает в первую очередь.
Предлагаю 2 формата: заполнить анкету и созвониться.
Заполнить анкету займет минут 10 – сделай это прямо сейчас:
👉ЗАПОЛНИТЬ АНКЕТУ
При отправке заполненной формы можно будет скачать гайд по поиску работы и сборник задач с реальных собеседований по теме Hash-map.
А также приглашаю на интервью минут на 30. Что вы от этого получите:
- Найдете свои точки роста
- Станете партнером создания продукта
- В благодарность я бесплатно проведу для тебя мок-собеседование на 30 минут.
Кто готов – пишите сюда: @codepunks_bro
👍4🤝3
На прошлых стримах пробили отметку в 50 участников и зрителей, что очень радует) В рамках интернета кажется, что это мало, блогеры собирают и тысячи зрителей. Но с другой стороны - у нас не развлекательный контент, а совместное решение задач, а это совсем другое 🙂
И если подумать с этой стороны, не каждая IT компания собирает митапы на 50 разработчиков, где каждый решает задачи и может свободно рассуждать, не волнуясь за мнение коллег по поводу своего решения)
Я думаю что это наша супер-сила, так что всех ждём, и как обычно рады, если будете решать задачи вместе с нами в чате или голосом🤓
Старт в 20:00! 🤝
📌Место: Telegram
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11
У нас первый голосовой отзыв)
Никита - ты 💪, 100% заслуженный оффер🔥
Пока большинство считает что рынок просел и невозможно устроиться, наши ребята заходят на позиции с двух ног)
Держим темп💪 💪
Никита - ты 💪, 100% заслуженный оффер🔥
Пока большинство считает что рынок просел и невозможно устроиться, наши ребята заходят на позиции с двух ног)
Держим темп
Please open Telegram to view this post
VIEW IN TELEGRAM
👏14💯4👍3
Тихон | Помогаю разработчикам устроиться в BigTech pinned «Привет! Хочу пообщаться с теми, кто хочет получить оффер Х2 от своей ЗП и не знает, как это сделать, или не получается. Задумался над тем, как сделать менторство и канал еще лучше, а для этого мне нужно понять, чего вам не хватает в первую очередь. Предлагаю…»
Вышла запись одного из наших стримов.
Огромное спасибо нашему подписчику Мише за участие, а так же нашему ментору Дамиру за интересные вопросы🐹
https://www.youtube.com/watch?v=k9bRKFDzAXc
Всем приятного просмотра🤓
P.S. Специально для ангулярщиков: на канале вчера вышло видео с Angular-собеседованием, очень интересные вопросы и темы поднимали👌
Огромное спасибо нашему подписчику Мише за участие, а так же нашему ментору Дамиру за интересные вопросы
https://www.youtube.com/watch?v=k9bRKFDzAXc
Всем приятного просмотра
P.S. Специально для ангулярщиков: на канале вчера вышло видео с Angular-собеседованием, очень интересные вопросы и темы поднимали👌
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Мок интервью Frontend | Тренировка перед реальным собесом
#программист #айти #собес
Мой телеграм-канал: https://www.tgoop.com/+PkvI8JmOd2U1ODFi
Таймкоды:
2:08 Типы данных JS
2:46 На что делятся типы данных
10:35 Как лучше задать контекст для стрелочной функции через call или apply?
16:23 Что такое статистические методы?…
Мой телеграм-канал: https://www.tgoop.com/+PkvI8JmOd2U1ODFi
Таймкоды:
2:08 Типы данных JS
2:46 На что делятся типы данных
10:35 Как лучше задать контекст для стрелочной функции через call или apply?
16:23 Что такое статистические методы?…
🔥11❤6👍6🥰1
Кстати, если вы не успели или не могли прийти на стрим с решением задач, он тоже уже на ютубе👉
https://www.youtube.com/watch?v=WBVxOhcscvU
https://www.youtube.com/watch?v=WBVxOhcscvU
YouTube
Задачи, на которых валятся кандидаты| Frontend
#программист #айти #собес
Мой телеграм-канал: https://www.tgoop.com/+PkvI8JmOd2U1ODFi
Таймкоды:
6:21 задача 2(Массивы чисел)
11:36 последовательность Фиббоначи
25:35 функция sum
32:17 Как отсортировать просрочные и не просрочные записи
48:15 Ответы на вопросы…
Мой телеграм-канал: https://www.tgoop.com/+PkvI8JmOd2U1ODFi
Таймкоды:
6:21 задача 2(Массивы чисел)
11:36 последовательность Фиббоначи
25:35 функция sum
32:17 Как отсортировать просрочные и не просрочные записи
48:15 Ответы на вопросы…
🔥15🥰5🙏3
Лучшая команда менторов. Часть 2.
Хочу продолжить знакомить вас с нашей командой, которая в любых условиях устраивает разработчиков на middle/senior позиции. Все наши результаты и отзывы были бы невозможны без сильной команды и совместной работы над кейсом каждого, кто к нам приходит. И так, поехали:
Александр Рубенов, 25 лет
- 7 лет в индустрии ( стартап Flatplan, Яндекс, VK, Авито, Т-Банк, X5 Tech )
- Основной стек: TS, React, Redux, Node.js
- Прошел и провел более 200 собеседований
- Имеет опыт трудоустройства на вторую работу по ИП
- Индивидуальный подход к каждому менти, нацелен на результат
- В свободное время разрабатывает tg-ботов, изучает AI, психологию, биохакинг, медицину
Балаев Юрий, 28 лет.
- Опыт более 5 лет ( ВТБ, АндерсонЛаб, Сбер, Озон )
- Основной стек TS, React, Effector
- От логиста до Senior Developer в Озоне ( с небольшим крюком через FinTech )
- Большая вера в способности людей.
- Сам заряжается от мотивированных людей и мотивирует других.
Если думаешь что лето не идеальное время для поиска работы - это не так, уже к осени можно выйти на новую работу, закрыть долги, накопить на квартиру или переехать в новый город. Ни один человек на программе не пожалел что сменил компанию.
Если хочешь поработать с нами и получить оффер 250-350 с гарантией результата - пиши хочу на бесплатную диагностику.
Хочу продолжить знакомить вас с нашей командой, которая в любых условиях устраивает разработчиков на middle/senior позиции. Все наши результаты и отзывы были бы невозможны без сильной команды и совместной работы над кейсом каждого, кто к нам приходит. И так, поехали:
Александр Рубенов, 25 лет
- 7 лет в индустрии ( стартап Flatplan, Яндекс, VK, Авито, Т-Банк, X5 Tech )
- Основной стек: TS, React, Redux, Node.js
- Прошел и провел более 200 собеседований
- Имеет опыт трудоустройства на вторую работу по ИП
- Индивидуальный подход к каждому менти, нацелен на результат
- В свободное время разрабатывает tg-ботов, изучает AI, психологию, биохакинг, медицину
Балаев Юрий, 28 лет.
- Опыт более 5 лет ( ВТБ, АндерсонЛаб, Сбер, Озон )
- Основной стек TS, React, Effector
- От логиста до Senior Developer в Озоне ( с небольшим крюком через FinTech )
- Большая вера в способности людей.
- Сам заряжается от мотивированных людей и мотивирует других.
Если думаешь что лето не идеальное время для поиска работы - это не так, уже к осени можно выйти на новую работу, закрыть долги, накопить на квартиру или переехать в новый город. Ни один человек на программе не пожалел что сменил компанию.
Если хочешь поработать с нами и получить оффер 250-350 с гарантией результата - пиши хочу на бесплатную диагностику.
🔥10❤3🏆1
Рубрика: база. Часть 1.
Fiber - это тема, знание которой может пройти вам React-собеседование, а на вопросе про reconcillation и рендер можно ответить гораздо интереснее чем кажется. Поехали:
🧱 Основная идея Fiber
React Fiber — это реализация виртуального DOM в виде связанного списка (а не дерева), которая позволяет:
- разбить рендеринг на мелкие задачи (units of work),
- приостанавливать и возобновлять работу,
- реализовать кооперативную многозадачность внутри браузера.
🔄 Цикл работы Fiber
Fiber работает в две фазы:
1. Render phase (Work Phase)
React проходит по компонентам и строит новое Fiber-дерево.
- Создает FiberNode для каждого компонента.
- Эта фаза может быть прервана — например, если у пользователя событие click.
2. Commit phase
Вносит изменения в реальный DOM.
-Эта фаза непрерывна и должна быть быстрой.
🧩 Что же такое FiberNode?
Каждый компонент (функция, класс, DOM-элемент) представлен объектом FiberNode:
🧠 Это похоже на двусвязный список, а не просто дерево — это позволяет гибко перемещаться по узлам.
⚙️ Алгоритм работы: пошагово
- Начинаем с корня (RootFiber) и проходим вниз по дереву.
- Создаём "units of work" — каждый Fiber обрабатывается как отдельная задача.
- React делает depth-first traversal: спускается в child, потом sibling, потом вверх по return.
- Когда все узлы пройдены — React имеет новое дерево.
Далее идет сравнение alternate (старого Fiber) с новым — что поменялось?
- На основе flags (например, Placement, Update, Deletion) формируется список изменений.
- Commit phase: React применяет изменения к DOM за один батч.
📌 Это позволяет React быть асинхронным и отзывчивым, даже при сложных рендерах.
🔁 Double Buffering (alternate)
React использует стратегию двойной буферизации: для каждого узла есть alternate.
current — текущее дерево, отображаемое в DOM.
workInProgress — новое дерево, создающееся в render phase.
После коммита:
workInProgress становится current, а старое дерево отправляется в alternate.
🚦Приоритеты (Lanes)
С React 18 ввели систему Lanes — механизм управления приоритетами работы.
click → высокая приоритетная полоса.
fetch data → низкая.
Fiber может приостановить выполнение низкоприоритетной задачи, чтобы обработать что-то более важное.
💬 Подытожим
Fiber — это архитектура реакта, которая:
✅ Представляет каждый элемент UI как FiberNode, связанный с другими.
✅ Позволяет прерывать работу, планировать и расставлять приоритеты.
✅ Делает React асинхронным и отзывчивым.
✅ Использует две фазы: render (можно прерывать) и commit (синхронная).
✅ Поддерживает time slicing, useTransition, useDeferredValue и другие оптимизации.
Fiber - это тема, знание которой может пройти вам React-собеседование, а на вопросе про reconcillation и рендер можно ответить гораздо интереснее чем кажется. Поехали:
🧱 Основная идея Fiber
React Fiber — это реализация виртуального DOM в виде связанного списка (а не дерева), которая позволяет:
- разбить рендеринг на мелкие задачи (units of work),
- приостанавливать и возобновлять работу,
- реализовать кооперативную многозадачность внутри браузера.
До Fiber обновления происходили синхронно и рекурсивно: всё дерево компонентов проходилось и обновлялось за один проход. Это означало, что React не мог остановиться, отложить часть работы или расставить приоритеты.
🔄 Цикл работы Fiber
Fiber работает в две фазы:
1. Render phase (Work Phase)
React проходит по компонентам и строит новое Fiber-дерево.
- Создает FiberNode для каждого компонента.
- Эта фаза может быть прервана — например, если у пользователя событие click.
2. Commit phase
Вносит изменения в реальный DOM.
-Эта фаза непрерывна и должна быть быстрой.
🧩 Что же такое FiberNode?
Каждый компонент (функция, класс, DOM-элемент) представлен объектом FiberNode:
interface FiberNode {
type: string | Function;// Тип компонента
key: string | null;// Ключ для списка
stateNode: DOM | instance | null; // DOM-узел или экземпляр класса
child: FiberNode | null;// Первый дочерний узел
sibling: FiberNode | null;// Следующий "брат"
return: FiberNode | null;// Родитель
alternate: FiberNode | null;// Старый Fiber (для сравнения)
flags: Flags;// Какие изменения внести
pendingProps: any;// Новые пропсы
memoizedProps: any;// Старые пропсы
memoizedState: any;// Старое состояние
}
🧠 Это похоже на двусвязный список, а не просто дерево — это позволяет гибко перемещаться по узлам.
⚙️ Алгоритм работы: пошагово
- Начинаем с корня (RootFiber) и проходим вниз по дереву.
- Создаём "units of work" — каждый Fiber обрабатывается как отдельная задача.
- React делает depth-first traversal: спускается в child, потом sibling, потом вверх по return.
- Когда все узлы пройдены — React имеет новое дерево.
Далее идет сравнение alternate (старого Fiber) с новым — что поменялось?
- На основе flags (например, Placement, Update, Deletion) формируется список изменений.
- Commit phase: React применяет изменения к DOM за один батч.
📌 Это позволяет React быть асинхронным и отзывчивым, даже при сложных рендерах.
🔁 Double Buffering (alternate)
React использует стратегию двойной буферизации: для каждого узла есть alternate.
current — текущее дерево, отображаемое в DOM.
workInProgress — новое дерево, создающееся в render phase.
После коммита:
workInProgress становится current, а старое дерево отправляется в alternate.
🚦Приоритеты (Lanes)
С React 18 ввели систему Lanes — механизм управления приоритетами работы.
click → высокая приоритетная полоса.
fetch data → низкая.
Fiber может приостановить выполнение низкоприоритетной задачи, чтобы обработать что-то более важное.
💬 Подытожим
Fiber — это архитектура реакта, которая:
✅ Представляет каждый элемент UI как FiberNode, связанный с другими.
✅ Позволяет прерывать работу, планировать и расставлять приоритеты.
✅ Делает React асинхронным и отзывчивым.
✅ Использует две фазы: render (можно прерывать) и commit (синхронная).
✅ Поддерживает time slicing, useTransition, useDeferredValue и другие оптимизации.
👍18🔥14🤝3❤2💊1
Рубрика: база. Часть 2. Микрофронты.
1. 🧩 Module Federation с Nx Monorepo
Что это: динамическая загрузка удалённых модулей на runtime, с шарингом зависимостей между ними.
Почему важно: при использовании Nx можно легко организовать хост и модули внутри одного репозитория c CLI, кешом и девсервером.
🔧 Пример на Nx:
Подключается примерно так: (очень упрощённо)
Плюсы:
- Независимый деплой – каждое приложение может деплоиться отдельно. Команды разработчиков не зависят друг от друга.
Минусы:
- Возможны ошибки при несовместимых версиях зависимостей.
- Для коммуникации между микрофронтами придётся изучить несколько интересных подходов 🙂
Когда использовать:
Если у вас монорепо + несколько команд, но хотите разделить деплой. Каждый микрофронт проще рассматривать как отдельную страницу.
2. 🧷 Iframe
Что это: каждый микрофронт — отдельное приложение в <iframe>.
Пример коммуникации:
Плюсы:
- Полная изоляция (JS, CSS).
- Прост в реализации.
Минусы:
- Медленнее UX: два документа, переходы.
- Коммуникация через postMessage — громоздкая.
- Ограниченное взаимодействие с окружением родителя.
Когда использовать:
Когда нужен строгий барьер безопасности, например для админки или внешних виджетов.
3. 🛠 Custom import()
Что это: вы создаёте оболочку, которая динамически подгружает модули через import(), без использования Module Federation.
🔧 Простой пример:
Коммуникация между модулями:
Плюсы:
- Полный контроль загрузки.
- Гибкая интеграция prefetch, loader-style, lifecycle API.
- Не привязан к сборщику.
Минусы:
- Нужно самому реализовать lifecycle и shared dependencies.
- SSR потребует ручного подхода.
- Больше boilerplate.
Когда использовать:
Если вам нужен максимальный контроль, легковесность и неважна поддержка SSR из коробки.
Есть много способов реализовать то, что называется общим словом - микрофронт. При исследовании темы я нашёл даже такие способы, которые в целом то никто и не использует. К счастью, их мы обсуждать не будем. Я подготовил только то, что встречается в проектах и что делал я сам. Поэтому пост должен получиться содержательным.
1. 🧩 Module Federation с Nx Monorepo
Что это: динамическая загрузка удалённых модулей на runtime, с шарингом зависимостей между ними.
Почему важно: при использовании Nx можно легко организовать хост и модули внутри одного репозитория c CLI, кешом и девсервером.
🔧 Пример на Nx:
nx-project/
├─ apps/
│ ├─ shell/ # Host-приложение
│ │ └─ module-federation.config.ts # содержит remotes
│ ├─ shop/ # Remote micro‑frontend
│ └─ cart/ # Remote micro‑frontend
└─ libs/ # общие библиотеки (UI, utils)
Подключается примерно так: (очень упрощённо)
export const config = {
name: 'shell',
remotes: ['shop', 'cart'],
};
Плюсы:
- Независимый деплой – каждое приложение может деплоиться отдельно. Команды разработчиков не зависят друг от друга.
Минусы:
- Возможны ошибки при несовместимых версиях зависимостей.
- Для коммуникации между микрофронтами придётся изучить несколько интересных подходов 🙂
Когда использовать:
Если у вас монорепо + несколько команд, но хотите разделить деплой. Каждый микрофронт проще рассматривать как отдельную страницу.
2. 🧷 Iframe
Что это: каждый микрофронт — отдельное приложение в <iframe>.
Пример коммуникации:
// Родитель
iframe.contentWindow.postMessage({ type: 'init', data }, origin)
window.addEventListener('message', e => {
if (e.origin !== origin) return;
console.log(e.data);
});
Плюсы:
- Полная изоляция (JS, CSS).
- Прост в реализации.
Минусы:
- Медленнее UX: два документа, переходы.
- Коммуникация через postMessage — громоздкая.
- Ограниченное взаимодействие с окружением родителя.
Когда использовать:
Когда нужен строгий барьер безопасности, например для админки или внешних виджетов.
3. 🛠 Custom import()
Что это: вы создаёте оболочку, которая динамически подгружает модули через import(), без использования Module Federation.
🔧 Простой пример:
async function loadRemote(name, url, container) {
const mod = await import(/* @vite-ignore */ url);
await mod.init(channel);
mod.render(container);
}
// Где-то в UI
loadRemote('chat', '/mfe/chat/remote.js', document.getElementById('chat'));
Коммуникация между модулями:
const channel = new Channel();
channel.subscribe('user', fn);
channel.set('user', { id: 1 });
Плюсы:
- Полный контроль загрузки.
- Гибкая интеграция prefetch, loader-style, lifecycle API.
- Не привязан к сборщику.
Минусы:
- Нужно самому реализовать lifecycle и shared dependencies.
- SSR потребует ручного подхода.
- Больше boilerplate.
Когда использовать:
Если вам нужен максимальный контроль, легковесность и неважна поддержка SSR из коробки.
👍10🔥5❤2
Попали на проверку😅
Июнь был для нас рекордным месяцем, и по кол-ву прибывших на менторство, и самое главное по кол-ву устроенных на работу. Всем работягам привет👋
В связи с чем к нам пришла проверка, но для меня это больше показатель, что мы двигаемся в правильном направлении и растём так быстро, что появляются вопросы💪
Спасибо моему юристу, что мы с самого начала вели всё официально, заключая договора с учениками и подрядчиками, работали по корректному ОКВЭД и платили все налоги.
Тем не менее немного волнительно и даже приятно, что нас решили проверить)
Моё главное правило - ты никогда не построишь большой и хороший продукт, если ты скрываешься от налогов, не оформляешь договора и не делаешь работу качественно. Любая мелочь в итоге вскроется, и потеряешь всегда больше чем сэкономил.
Надеюсь что всё пройдёт хорошо, а пока готовим пакеты документов и подтверждения🤝
Июнь был для нас рекордным месяцем, и по кол-ву прибывших на менторство, и самое главное по кол-ву устроенных на работу. Всем работягам привет👋
В связи с чем к нам пришла проверка, но для меня это больше показатель, что мы двигаемся в правильном направлении и растём так быстро, что появляются вопросы
Спасибо моему юристу, что мы с самого начала вели всё официально, заключая договора с учениками и подрядчиками, работали по корректному ОКВЭД и платили все налоги.
Тем не менее немного волнительно и даже приятно, что нас решили проверить)
Моё главное правило - ты никогда не построишь большой и хороший продукт, если ты скрываешься от налогов, не оформляешь договора и не делаешь работу качественно. Любая мелочь в итоге вскроется, и потеряешь всегда больше чем сэкономил.
Надеюсь что всё пройдёт хорошо, а пока готовим пакеты документов и подтверждения🤝
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🏆10👍7❤2🤝1