Руслан Куянец | Reactify
6.48K subscribers
764 photos
57 videos
39 files
329 links
Я IT-специалист, ментор и основатель проекта YeaHub и сообщества Reactify. Здесь рассказываю про Frontend и IT.

Менторство:
https://reactify.ru

YouTube канал:
https://youtube.com/@reactify-it

YeaHub:
https://yeahub.ru/

Связь:
@ruslan_kuyanets
Download Telegram
Скоро возвращение на YouTube 💪🏼

1. Разбор самого душного собеса: V8, Hidden classes, JIT, TS, Garbage Collector и другие необычные темы на собесе 🤯

2. Архитектура Frontend: Monorepo, Multirepo, Microfrontends, Monoliths
Схема эволюция на примере больших компаний

Видео в монтаже 💪

Так же много сценариев написал, буду контент машину запускать

🚀 База собесов — 💪 Frontend Элита — 📚 Менторство — 📹 YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥29❤11👍5😢1
This media is not supported in your browser
VIEW IN TELEGRAM
🔥29👍8😁6❤1
👩‍💻 Эволюция Frontend Архитектуры: от Монолита до Microfrontends (Monorepo, Multirepo)

В этом видео разберём эволюцию больших frontend-систем:
Monolith → Modular Monolith → Monorepo → Multirepo → Microfrontends.

На примере роста большой платформы посмотрим:
— почему один frontend начинает не справляться с ростом команды;
— зачем переходят от монолитного приложения к модульной архитектуре;
— чем отличаются Monorepo и Multirepo;
— когда появляются отдельные приложения и бизнес-контуры;
зачем нужны Microfrontends;
— как независимые команды получают свои релизы, CI/CD и жизненный цикл.

Разберём:
— Frontend Architecture
— Microfrontend Architecture
— Monorepo vs Multirepo
— Modular Monolith
— Frontend Scaling
— Large Scale Frontend Applications

Видео будет полезно frontend-разработчикам, архитекторам и техническим лидерам, которые строят масштабируемые веб-приложения.

Видео уже на канале Reactify!
Я не оставляю ссылку, так как видео лучше продвигается, если заходить на него напрямую с YouTube. Это помогает улучшить его рейтинг и увеличить шансы на органическое продвижение.

🚀 База собесов — 💪 Frontend Элита — 📚 Менторство — 📹 YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16❤5👍3🤝1
This media is not supported in your browser
VIEW IN TELEGRAM
🔥21❤8👍6🫡1
This media is not supported in your browser
VIEW IN TELEGRAM
❤18👍15🔥9😢1
🖥 20 вопросов с жесткого Frontend собеседования: V8 / JS engine / React Fiber

Почему один JavaScript-код работает быстро, а другой тормозит? Что происходит внутри V8, когда мы запускаем наш код?

В этом видео разбираем оптимизации JavaScript под капотом:
— как работает JIT-компилятор
— что такое Hidden Classes в V8
— почему структура объектов влияет на производительность
— что такое мономорфизм и deoptimization
— как работает Garbage Collector и поколенческий сборщик мусора
— почему создание лишних объектов может замедлять приложение
— когда использовать Object, а когда Map

Это вопросы, которые часто встречаются на собеседованиях Frontend Senior уровня, но самое важное — понять не термины, а логику работы JavaScript-движка.

После этого видео станет понятнее:
- почему V8 любит предсказуемый код
- почему один и тот же JS может работать в 100 раз быстрее в разных условиях
- какие привычки в коде помогают движку оптимизировать приложение

JavaScript — это не просто язык, который выполняется в браузере. Внутри работает сложный движок, который постоянно анализирует наш код и пытается сделать его быстрее.

Видео уже на канале Reactify!
Я не оставляю ссылку, так как видео лучше продвигается, если заходить на него напрямую с YouTube. Это помогает улучшить его рейтинг и увеличить шансы на органическое продвижение.

🚀 База собесов — 💪 Frontend Элита — 📚 Менторство — 📹 YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤7🔥6😁1
Задания с собеса

Задание 1 (код с Promise):
let counter = 0;
const increment = new Promise(resolve => {
counter++;
resolve(0);
});
await increment;
await increment;
console.log(counter);


Вопрос: Чему будет равен counter?

Задание 2 (React-компонент с Counter A и Counter B):

import React, { useState } from "react";
import "./styles.css";

console.log = (...args) => {
const node = document.createElement("div");
node.innerHTML = args.join(" ");
document.getElementById("log").appendChild(node);
};

const Counter = (props) => {
console.log(`Counter ${props.name} rendered`);
return (
<div>
Counter {props.name} : {props.count}
</div>
);
};

export default function App() {
const [countB] = useState(0);
const [countA, setCountA] = useState(0);
const handleCountA = () => {
setCountA(countA + 1);
};

return (
<div className="App">
<Counter name="A" count={countA} />
<Counter name="B" count={countB} />
<button onClick={handleCountA}>Count A</button>
</div>
);
}


Задача: Counter A и Counter B рендерятся вместе, нужно чтобы Counter B не ре-рендерился при клике на Counter A. Оптимизировать компонент.

Задание 3 (сравнение функций):

const test = 0 => test()
const test1 = async 0 => await test1()
const test2 = async 0 => await Promise.resolve(0).then(test2)
const test3 = 0 => setTimeout(test3, 1)


Вопрос (по контексту собеса): С чем можно столкнуться (например, переполнение стека, бесконечный цикл, таймаут и т.д.)? Вопрос про переполнение стека вызовов и разницу между синхронной/асинхронной рекурсией.

🚀 База собесов — 💪 Frontend Элита — 📚 Менторство — 📹 YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤4🔥4
💪 Как я довожу Frontend-разработчиков до оффера (показываю всю систему)

https://www.youtube.com/watch?v=ZIl3kHEL0XQ

Разошелся я с контентом, но мои гайды по менторству устаревают очень быстро за счет добавления новых ритуалов 😁

Плюс решил окончательно на схеме отбить все вопросы по процессу обучения. Один раз провести презентацию и отправлять это видео в приветственном сообщении, чтобы экономить 15–20 минут на каждой консультации на вопросы вроде: «А с чего начнем?», «Как всё проходит?», «А что такое стажировка?» и т. д.

В общем, видос уже на YouTube. Держим качество. Улучшаем всё.

Скоро видео по инфраструктуре, CI/CD и деплою.

🚀 База собесов — 💪 Frontend Элита — 📚 Менторство — 📹 YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍6❤5😁1😢1
This media is not supported in your browser
VIEW IN TELEGRAM
🔥14👍11❤6🫡1
Все готово
Завтра сниму видео про CI/CD, в понедельник опубликую

Потом сниму видео по инфраструктуре

Все это я буду показывать на примере YeaHub
https://github.com/YeaHubTeam/yeahub-platform
👍12🔥7❤4
ИИ эпидемия
Уже не первый раз слышу такой фидбек
👍15💯7🔥5
Видео по CI/CD готово
Такого вы не видели еще
На следующей неделе... скоро..
🔥29👍6❤5😁2
This media is not supported in your browser
VIEW IN TELEGRAM
Вчера побывал на «Профсоюзная Конференция».

Хочу сказать следующее: «Если интернешенал - это праздник доты, то профсоюзная - это праздник айти»

Ни на одной другой конфе/митапе я так много не общался.

Зарядился энергией от самых разных людей. Хардворк ✊🏼

В комментарии пришлю немного видео/фото с конфы
❤20🔥10🤝3😢1
Так, ребята

Если я захочу перейти во фуллстек, то как называть канал? Fullstackify?

Есть идеи?
😁17👍7❤4🔥2
👩‍💻 Как работает CI/CD в Production: GitHub Actions, Docker, ArgoCD и GitOps

Как выглядит CI/CD в настоящем проекте? В этом видео разберем полный pipeline от Git Push до Production: GitHub Actions, Docker, ArgoCD и GitOps.

Покажу весь путь от изменения кода до деплоя в production:
— как устроен CI/CD процесс;
— как работает GitHub Actions;
— сборка и запуск Docker контейнеров;
— автоматизация проверок и деплоя;
— как используется ArgoCD;
— что такое GitOps и как он применяется на практике.

Мы не будем просто рисовать схемы — я покажу еще весь процесс на живом проекте:
✅ трекер задач;
✅ GitHub Actions;
✅ Docker;
✅ структура проекта;
✅ pipeline;
✅ deployment flow.

Это видео подойдет frontend, backend и fullstack разработчикам, которые хотят понять, как реально работает DevOps-процесс в команде.

Видео уже на канале Reactify!
Я не оставляю ссылку, так как видео лучше продвигается, если заходить на него напрямую с YouTube. Это помогает улучшить его рейтинг и увеличить шансы на органическое продвижение.

🚀 База собесов — 💪 Frontend Элита — 📚 Менторство — 📹 YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥24👍5❤2
Посетил Frontend miniConf в Краснодаре.

Было круто 😁

Послушал доклады про тестирование приложений, про ИИ и тд

Поболтали про работу и айти

https://t.me/krdfrontend
❤12👍6🔥5
💼 Что решает в IT в 2026?

И если раньше можно было спорить, что важнее — знать конкретный стек или иметь опыт в определенной технологии, то сейчас, в эпоху ИИ, всё сильнее ценится другое: насколько быстро ты можешь адаптироваться и насколько крепкий у тебя фундамент.

Человек с хорошей базой способен за короткое время освоить новый стек и продолжать делать качественные продукты.

Ты понимаешь паттерны, принципы чистого кода, архитектуру — и тебе уже не так важно, на чем писать. Меняется язык, меняется фреймворк, меняется инструментарий, но хорошие инженерные решения остаются хорошими.

То же самое с производительностью. Если ты понимаешь, как работают системы, где узкие места, какие есть подходы к оптимизации — ты не просто «пишешь код», ты понимаешь, что происходит под капотом.

ИИ очень сильно ускоряет разработку. Но важно не попасть в ловушку: когда ты делегируешь всё нейронке, есть риск самому перестать думать.

Сейчас ценятся люди, которые умеют эффективно работать с ИИ. Но дальше, когда этим навыком будут владеть все, преимущество будет у тех, кто умеет делать это качественно.

Нейронка может написать код. Но она не заменяет понимание, зачем этот код нужен, какие у него проблемы и как сделать лучше.

Второй важный навык — адаптивность.

IT всегда менялся. Меняются профессии, инструменты, требования.

Сегодня ты фронтендер на JavaScript, а завтра компании нужен человек с Python. Это не значит, что ты автоматически «не подходишь».

Если у тебя есть опыт разработки, понимание принципов, логика и инженерная база — ты можешь достаточно быстро войти в новый стек.

Нужен Golang? Подготовься к собеседованию, изучи особенности языка, разберись в экосистеме. Дальше ты уже не начинаешь с нуля: ты переносишь свой опыт разработки и используешь ИИ как ускоритель.

Главное — не бояться новых требований.

Третий момент, который, как мне кажется, многие недооценивают — личный бренд.

В мире, где появляется всё больше нейрослопа, где инструменты становятся доступнее, ценность человека только растет.

Потому что вы — это не просто набор навыков в резюме.

Ваше мышление, ваш опыт, ваше имя в профессиональном сообществе — это то, что остается.

Нужно уметь себя ценить и правильно себя продавать.

Личный бренд — это не про «строить из себя эксперта». Это про то, чтобы люди знали, кто вы и чем можете быть полезны.

Я сейчас активно изучаю международный рынок, готовлю направление по валютным удаленным вакансиям, делаю гайды и разбираюсь, как люди находят работу за рубежом.

И меня очень удивляет, насколько сильно работает LinkedIn.

Хочешь больше возможностей — пиши посты, делись опытом, участвуй в обсуждениях.

Когда я был активнее в LinkedIn в 24–25 годах, мне регулярно писали рекрутеры. Без откликов, без активного поиска. Просто находили профиль и спрашивали, рассматриваю ли я предложения.

Так я проходил собеседования и получал офферы.

Плюс есть обычное человеческое общение: митапы, конференции, сообщества.

Я лично видел ситуацию, когда человек просто активно участвовал в мероприятии, задавал вопросы, общался — и ребята из Т-Банка сами предложили ему помочь с рефералом.

Иногда возможности приходят не потому, что ты идеально подошел под вакансию, а потому что тебя запомнили.

И тут мы приходим к нетворкингу.

Чем шире ваше профессиональное окружение, тем больше у вас возможностей.

Многие после сокращений находят работу не через сотни откликов, а через знакомых: кто-то дал рефку, кто-то подсказал вакансию, кто-то познакомил с нужным человеком.

У меня много учеников, которые после прокачки навыков пошли именно этим путем: активировали знакомых, собрали рефералы, получили контакты HR — и в итоге у них появился поток собеседований.

Не сидите в одиночку.

Общайтесь.
Задавайте вопросы.
Знакомьтесь с людьми из индустрии.
Вступайте в профильные чаты.

Это не гарантирует работу, но точно увеличивает количество возможностей.

🚀 База собесов — 💪 Frontend Элита — 📚 Менторство — 📹 YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
❤19👍7🔥6
Media is too big
VIEW IN TELEGRAM
Румтур офиса
❤17👍8🔥7😢3