Metarhia/NodeUA - Node.js Ukraine Community
3.71K subscribers
245 photos
6 videos
3 files
675 links
Канал по Node.js сообщеста Метархия. Ссылки на митапы, группы и каналы сообщества https://github.com/HowProgrammingWorks/Index/blob/master/Links.md
Download Telegram
💥 Увольте своих HR если они говорят вам, что нужно усилить фильтры формальными требованиями и ужесточить скрининг.
— А кто же будет проводить скрининг?
— Сами кандидаты. Попробуйте:
Опубликуйте больше подробностей о проекте и вакансии, о компании и коллективе. Сделайте опросник для самостоятельного оценивания уровня кандидатов. Набросайте типовых issue, которые будут встречаться в работе. Опишите того, кто вам нужен. Кандидаты сами в состоянии оценить себя, потянут ли они. HR, в большинстве случаев, просто искажает коммуникацию между специалистами, не давая действительно важной информации проникнуть к кандидатам, а действительно стоящим кандидатам проникнуть к команде. Ни какие формальные критерии не могут быть адекватными. Не бойтесь, в конечном счете, обмануть невозможно, какой смысл кандидату врать, если все выяснится очень быстро. Да, будут сбои в такой системе, будут появляться неадекваты, но разве они не проходят формальные фильтры? А в подавляющем большинстве случаев люди способны себя оценить адекватно.
🎉 Опа, чуть не забыл, что сегодня черная пятница, в общем так, курс по ноде продлен на следующий год, количество материалов увеличивается вдвое, оглавление опубликую на днях, а через неделю цена тоже увеличится c $200 до $300 https://github.com/HowProgrammingWorks/Index/blob/master/Courses/NodeJS-2022-2023.md
⚡️ А сегодня кто возьмет за $100 на патреоне план Professional на год, то получает видеозаписи за 2023 https://www.patreon.com/tshemsedinov
Только видеозаписи, это не курс, без ревью, без проверки и обсуждения заданий, но в записях есть чужие ревью.
🖼 Ночь у многих была бессонная, но эфир будет по расписанию, через час
👉 https://www.youtube.com/live/MrenxehBK1g
Вопросы будут приниматься в чате под видео. Готовьте вопросы. Жду на стриме
Please open Telegram to view this post
VIEW IN TELEGRAM
Все ссылки, которые я обещал на стриме (если что забыл, скажите, добавлю):
⭐️ Гитхаб: https://github.com/tshemsedinov
⚡️ Патреон: https://patreon.com/tshemsedinov
Вопросы на интервью по ноде: https://github.com/tshemsedinov/NodeJS-Interview-Questions
👉 Новый курс по ноде: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/NodeJS-2022-2023.md
🛠 Старый курс по Node.js в открытом виде: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/NodeJS.md
🏛 Оглавление всех лекций: https://github.com/HowProgrammingWorks/Index
👶 Для начинающих: https://www.youtube.com/watch?v=2DM5I2CI4gY&list=PLpmhTzMVLuROAIey9vW3pyRSpHfknLssu
☘️ Канал Олега Хомяка: https://www.youtube.com/@khomiakoleg4034
🗨 Телеграм: https://t.me/metarhia и https://t.me/nodeua
🚀 Конференция Метархии: https://www.youtube.com/@Metarhia
Кто есть из Казахстана? Завтра даю интервью Арману Сулейманову, nFactorial Podcast с возможностью задавать вопросы и принимать участие в дискуссии, конференция будет проходить в Алматы в оффлайне, я буду по видеосвязи.

Подробности: https://sxodim.com/almaty/event/no-code-summit

Промокод на 50% скидки «FLOW50» как оффлайн так и онлайн
Нарисовал себе на стене плакат
Metarhia/NodeUA - Node.js Ukraine Community
Нарисовал себе на стене плакат
Буду публиковать расшифровку частями:
👉 Изоляция (isolation)
🔸 Что изолируем: слои (например, прикладной и системный слой, но может быть много слоев), модули, подсистемы (группы модулей), абстракции (функции, классы структуры, функциональные абстракции), компоненты
🔸 Как изолируем: при помощи архитектурных границ, инверсии управления и внедрения зависимостей, фасадов, интерфейсов, контрактов, изолированных контекстов V8, приватных полей, символов, локальных данных модуля, замыканий и т.д.
🔸 Зачем изолируем: для предотвращения сильного сцепления между частями кода, что дает большую гибкость в компоновке абстракций, возможность переноса абстракций в другие среды исполнения, процессы и потоки, для кластеризации кода, вынесения сервисов и балансировки между ними, для упрощения интеграции, переиспользования кода.
🔸 Эффект изоляции: повышение безопасности и взломоустойчивости, повышение надежности и избежания состояния гонки, развязывает руки архитекторам для компоновки и изменения архитектуры на этапе внедрения и поддержки.
🖼️ В структуре курса добавлены новые темы и 7 блоков заданий. Материалы еще будут расширяться, жду ваших предложений.

🧑‍💻 Блок заданий №1
- Создание структуры проекта, системы модульности, фреймворк-агностик
- Организация служебных вещей: логирование, конфигурирование, запуск,
- Проектирование API, организация роутинга и транспорт-агностик подхода
🧑‍💻 Блок заданий №2
- Проектирование предметной области, использование схем, ERD, IDEf1x
- Организация слоя доступа к базе данных, query builder, паттерн репозиторий
- Защита от SQL-injection, параметрические запросы
🧑‍💻 Блок заданий №3
- Сетевые протоколы, сериализация, организация сессий
- Принципы взаимодействия: REST, RPC, трансляция событий
- Безопасность, CORS, потоковое вещание, partial-content, upload/download файлов
🧑‍💻 Блок заданий №4
- Применение GRASP и SOLID для Node.js приложений
- Использование паттернов и рефакторинг с применением паттернов
🧑‍💻 Блок заданий №5
- Использование потоков Readable, Writable, Transform, работа с файлами
- Корректная обработка ошибок и исключений
- Рефакторинг асинхронного кода и стыковка контрактов
🧑‍💻 Блок заданий №6
- Организация клиентского кода, прозрачность вызовов серверного API через async/await
- Межсерверное взаимодействие, прозрачность вызовов через async/await (как и для клиентского кода)
- Интеграция подсистем по принципу единого адресного пространства
🧑‍💻 Блок заданий №7
- Реализация системы прав (аккаунты, пароли, роли, пермишены, применение ACL, ABAC, RBAC)
- Система сессий: хранимое состояние, состояние соединений, состояние прикрепленное к вызову
- Безопасность (DoS, XSS, Path traversal, CSRF, и т.д.)

https://github.com/HowProgrammingWorks/Index/blob/master/Courses/NodeJS-2024.md
Please open Telegram to view this post
VIEW IN TELEGRAM
🖼 Самая необычная штука из курса по асинхронному программированию и из библиотеки metautil (из Метархии), это асинхронная коллекция Collector, имеющая интерфейс EventEmitter, ее можно так же ждать как Thenable (Promise-like) через await и она умеет собирать данные из асинхронных функций с разными контрактами, делать таймауты и обрабатывать ошибки. В общем, это универсальная штука, позволяющая делать код более простым и надежным. Посмотрите ее код, он очень маленький и понятный: https://github.com/metarhia/metautil
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️ Открыта предварительная запись на курс по асинхронному программированию https://github.com/HowProgrammingWorks/Index/blob/master/Courses/Async-2024.md
Forwarded from Asynchronous Programming
🎟 Внимание! Добавил новый таер: Node + Async
Вместе должно быть дешевле ) Можно до него апгрейднуться
https://www.patreon.com/tshemsedinov
Вот новый пример. Тут таймаут через Promise.race, а сбор данных через Promise.allSettled. Это страшно запутывает код, если качественно делать, то вообще и таймеры нужно снимать. А асинхронная коллекция похожа на Map, но с контрактом Thenable, позволяющим использовать ее с await. Collector скрывает сложность асинхронного программирования за абстракцией высокого уровня и приводит к ясному и надежному коду предметной области. https://github.com/metarhia/metautil