we_use_js | Unsorted

Telegram-канал we_use_js - Node.JS [ru] | Серверный JavaScript

11232

Все о разработке backend части на JavaScript (Node JS). А так же: Express JS, Next JS, Nest, Socket.IO Канал на бирже - https://telega.in/c/we_use_js По вопросам рекламы или разработки: @g_abashkin РКН: https://vk.cc/cJPGOP

Subscribe to a channel

Node.JS [ru] | Серверный JavaScript

🐱 GitHub покидают разрабы и опенсорс проекты

Разработчик Митчелл Хашимото, создатель популярного эмулятора терминала Ghostty, переносит проект из-за проблем со стабильностью платформы.

«Я пользователь GitHub под номером 1299, присоединился в феврале 2008 года. Я заходил на GitHub почти каждый день в течение более 18 лет. Для меня никогда не было вопроса, куда размещать свои проекты: всегда GitHub. Мне очень грустно это говорить, но пришло время уходить», — пишет он.


✖️ xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

🖥 Программист решил ускорить возвращение в нулевые и создал Шакализатор сайтов 3000

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

«Я посмотрел на эти робкие попытки регуляторов и подумал: а зачем нам эти полумеры? Если интернет всё равно замедляют и ломают, почему бы не возглавить этот процесс и не деградировать с ветерком?»


✖️ xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

😁 Даёшь опенсорс

💥 xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

А не приходило кому-то мысля что ии просто пытался сбежать?)

💥 xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

CSP, CORS и security headers — что фронтендер обязан понимать глубже

Принято считать, что безопасность — это зона бэкенда.
Фронтенд «просто отправляет запросы и рендерит UI».

На практике фронтенд напрямую влияет на то,
будет приложение безопасным или нет.

CORS — это не про «разрешить запрос»

CORS часто воспринимают как настройку:
«чтобы запросы не падали из браузера».

Но по сути это механизм, который говорит:
кто имеет право читать ответ.

Важно понимать:

👉 сервер может обработать запрос
👉 но браузер может не дать прочитать ответ

Именно поэтому:

👉 Access-Control-Allow-Origin: * — не «фикс», а потенциальная дыра
👉 credentials + wildcard — запрещённая комбинация


CORS — это про контроль доступа, а не про обход ошибок.
CSP — ваш последний рубеж

Content Security Policy — это защита от XSS,
даже если у вас уже есть уязвимость.

Пример:

Content-Security-Policy: default-src 'self'; script-src 'self'


Что это даёт:

👉 запрещает выполнение inline-скриптов
👉 блокирует загрузку скриптов с чужих доменов
👉 режет целый класс атак


Но есть нюанс.

Если CSP выглядит так:

script-src * 'unsafe-inline' 'unsafe-eval'

Это не защита. Это иллюзия.
Security headers, которые реально важны

👉 X-Content-Type-Options: nosniff
Браузер не пытается угадать тип файла. Меньше атак через подмену.

👉 X-Frame-Options / frame-ancestors
Защита от clickjacking.

👉 Strict-Transport-Security (HSTS)
Принудительный HTTPS. Без вариантов.

👉 Referrer-Policy
Контроль того, какие данные уходят при переходах.


Где фронтендер влияет напрямую

👉 какие скрипты подключаются
👉 есть ли inline JS
👉 используются ли eval-подобные вещи
👉 как работают сторонние виджеты
👉 как обрабатываются пользовательские данные


Можно иметь идеальный бэкенд и сломать всё на уровне UI.
Частая ошибка

«Мы включили CSP — значит всё ок».

Но:

👉 нет nonce / hash
👉 разрешены любые источники
👉 подключены сторонние скрипты без контроля


В итоге защита есть только на бумаге.
Главная мысль

CSP, CORS и заголовки — это не чекбокс в настройках.
Это часть архитектуры.

Если фронтенд не понимает, как они работают,
безопасность становится случайностью.

Читать полностью…

Node.JS [ru] | Серверный JavaScript

😱 Claude Mythos сбегала из песочницы и пыталась скрыть свои действия

В ходе тестирования Claude Mythos Preview вышла за пределы изолированной среды, разработав «довольно сложную многоэтапную уязвимость» для получения доступа в интернет. После она уведомила исследователя об успехе письмом и выложила детали уязвимости на веб-сайты, хотя об этом ее никто не просил.

Но и это не всё: иногда модель понимала, что нарушает правила, и пыталась это скрыть.

✖️ xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

Весь стек технологий в одной папке 📂⚙️

Мир ИИ меняется быстрее, чем мы успеваем обновлять ленту. Поэтому, мы собрали экспертную папку AI & IT & DSGN, которая поможет вам не просто следить за трендами, а использовать их в работе прямо сейчас.

Что внутри:
— Последние новости и прорывы в мире IT
— Внедрение ИИ-менторов в корпоративную культуру.
— Технологии Nvidia для геймдева и работы.
— Автоматизация дизайна: инструменты, которые экономят часы работы.
— Инструменты и лайфхаки для разработчиков и аналитиков

🔗 ПОДКЛЮЧИТЬ ПАПКУ

Читать полностью…

Node.JS [ru] | Серверный JavaScript

😁 Конечно, с такой-то нищенской зарплатой...

💥 xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

Секунда уверенности → полгода страданий

Читать полностью…

Node.JS [ru] | Серверный JavaScript

Idempotency в API — почему это важнее, чем кажется

Принято считать, что идемпотентность — это просто теоретическое свойство HTTP-методов.
Типа GET идемпотентный, POST нет — и на этом всё.

На практике идемпотентность часто решает очень реальные прод-проблемы.

Что вообще означает idempotency

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

Пример:


DELETE /cart/item/42


Первый запрос удалит товар.
Второй запрос ничего не изменит.


Состояние системы остаётся тем же.


Где начинаются реальные проблемы

Сеть не гарантирует, что запрос выполнится ровно один раз.

Иногда происходит так:

👉 клиент отправил запрос
👉 сервер его обработал
👉 ответ потерялся
👉 клиент повторил запрос

Если операция не идемпотентная, начинаются сюрпризы.

Классический пример:


POST /payments


Без защиты это может привести к:

👉 двойной оплате
👉 повторному созданию заказа
👉 дублированию записей

Как это обычно решают

Чаще всего используют idempotency key.

Клиент отправляет уникальный ключ вместе с запросом.


POST /payments
Idempotency-Key: 9f7c1a


Сервер сохраняет этот ключ и результат операции.

Если тот же ключ приходит снова —
сервер просто возвращает предыдущий ответ.


Операция не выполняется второй раз.


Где это особенно важно

👉 платежи
👉 создание заказов
👉 бронирование
👉 webhook-обработчики
👉 любые retry-механизмы

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

Что важно понимать

Идемпотентность — это не только про HTTP-методы.

Это дизайн API.

Можно сделать идемпотентным даже POST,
если контролировать повторные вызовы.

Главная мысль

Сеть ненадёжна.
Повторы запросов — это норма.

Если API не учитывает это,
рано или поздно появятся странные баги.


И чаще всего они появляются
в самых дорогих местах системы.

Читать полностью…

Node.JS [ru] | Серверный JavaScript

🤣 Надёжность инфраструктуры 100%

💥 xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

🤣 Что за дурацкие простые задачки?

💥 xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

⚙️ Асинхронность – не баг, а фича: 4 паттерна, которые спасут ваш распределенный сервис

Представь, что ты отправляешь сообщение в мессенджере, а оно доходит с задержкой в минуту. Бесит? А теперь представь, что у тебя сервис с миллионами пользователей, и каждое их действие должно мгновенно отражаться везде. Звучит как кошмар? Спокойно, есть четыре проверенных способа решить эту головоломку, и они реально работают.

Читать...

Читать полностью…

Node.JS [ru] | Серверный JavaScript

👩‍💻 Новые альтернативы innerHTML

Статья объясняет появление метода setHTMLUnsafe для работы с HTML в браузерах. Разбираются особенности безопасности, отличия от setHTML и innerHTML, а также поддержка в разных браузерах и значение нового подхода к именованию методов.

Читать...

Читать полностью…

Node.JS [ru] | Серверный JavaScript

👩‍💻 Как обнаружить изменение атрибутов веб-компонента

Сегодня мы рассмотрим, как обнаружить и реагировать на изменение атрибутов веб-компонента.

Читать...

Читать полностью…

Node.JS [ru] | Серверный JavaScript

⚡️Я долго собирал IT-каналы вручную. Добавлял, удалял, снова искал.

В итоге понял одно: проблема не в каналах. Проблема в том, что хорошие раскиданы, а плохие занимают место.

Сделал IT Base - папку где только то, что реально читаю сам.

Разработка, продукт, стартапы, tech-карьера. Одно касание и ты внутри.

👉🏻 Забирай

Читать полностью…

Node.JS [ru] | Серверный JavaScript

Карпатый написал 4 инструкции для Claude Code. Репа набрала 40к звёзд за пару дней

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

Раньше работа с агентом выглядела так: «попросил в чате, получил код, скопировал».

Теперь рабочий цикл другой:

👉 SKILLS.md фиксирует повторяющиеся паттерны: как пишутся миграции, как оформляются ошибки, какие соглашения по логированию
👉 AGENTS.md лежит рядом с кодом и описывает архитектуру директории: что здесь живёт, что нельзя трогать
👉 MCP подключает агента к вики, БД, API-докам через стандартный протокол

За полгода узкое место сместилось с возможностей модели на навыки разработчика. Скиллов нужно освоить много: SPEC-разработка, контекст-инжиниринг, Plan Mode, AGENTS.md под каждую директорию, мультиагентные пайплайны. Собрать всё это в рабочую систему самому займёт примерно год экспериментов.

Команда Naition.ai научит этому за 12 недель на своем онлайн-буткемпе.
Преподают практики из Google, Yandex Cloud, Сбера. 15 живых вебинаров по 3 часа: теория, разбор кейса, практика на своём коде:
• настраиваешь ИИ-окружение под свой стек — RAG, MCP, агенты, контекст
• начинаешь быстрее делать фичи — от идеи до внедрения с ИИ на каждом этапе
• собираешь набор ИИ-агентов, которые берут на себя часть задач (бек, фронт, аналитика, DevOps)
• и много другое!

Записаться

Старт: 5 мая.
По промокоду WEUSEJS — скидка 20%.

Бонус для участников первых когорт: 3 месяца в закрытом клубе после обучения.

Записаться

Команда также собрала бесплатную дорожную карту из 40+ концептов со ссылками на источники. По сути оглавление того, что сейчас составляет базовую инженерную грамотность для работы с AI.
Забрать роадмеп по ссылке

Читать полностью…

Node.JS [ru] | Серверный JavaScript

Как frontend-разработчику вырасти в ЗП?

День сурка frontend-разработчика выглядит так

Зарплата замерла, задачи — бесконечный повтор, растет только кол-во бессмысленных созвонов

Откликаешься на вакансии — отвечают только ноунеймы, на собесах закидывают странными алгоритмами «на скорость».

И самое бесящее — пока буксуешь, кто-то вокруг спокойно забирает офферы в Яндекс и VK...

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


👋 Меня зовут Тихон, привет! Я — действующий Frontend-разработчик и ментор. Я за руку довожу до оффера на хорошую позицию в Big Tech и сопровождаю на испытательном сроке.

В своем канале:
👉Объясняю, как проходить HR-фильтр и превращать отклики в реальные приглашения
👉Помогаю найти мотивацию, борюсь убеждениями, которые мешают развиваться
👉На примерах объясняю, как проходить собеседования, включая техничку
👉Разбираю резюме и делюсь лайфхаками, например как аккуратно “пинговать” рекрутеров

А еще регулярно публикую полезные материалы:
▪️Задачи, на которых валяться кандидаты
▪️База по микрофронтам
▪️Подборка из 100+ каналов с вакансиями для разработчиков
▪️100 вопросов, которые точно помогут тебе на собеседовании
▪️Чек лист проверки своего резюме

А еще у меня множество успешных кейсов и трогательных отзывов, найти их можно в канале.

Реклама, erid: 2W5zFHUjygD ИП Галактионов Тихон Витальевич, ИНН 771618975809

Читать полностью…

Node.JS [ru] | Серверный JavaScript

🐱 На GitHub выкатили andrej-karpathy-skills

Скилл из 4 инструкций, которые меняют поведение Claude Code. Благодаря им модель больше планирует, проверяет себя, пишет аккуратнее и меньше галлюцинирует. Автор вдохновился размышлениями отца вайбкодинга и формализовал его подход к работе с кодом и ИИ.

Чтобы вы понимали — репа набрала почти 40 тысяч звезд за пару дней.

✖️ xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

💸 Сооснователь GitHub поднял $17 млн на нового Git-клиента

Скотт Чакон считает, что классический Git УСТАРЕЛ И плохо работает в мире, где код пишут не только люди, но и ИИ-агенты. Поэтому он создал пару лет назад GitButler и теперь выкатил CLI-версию. Главная его идея — более удобный интерфейс и отсутствие классического переключения между ветками + параллельная работа.

Вообще внутри много прикольных фич — сразу видно, что разрабатывал не новичок

✖️ xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

😱 Обнаружена supply chain атака на axios один из самых популярных пакетов npm

В версии axios 1.14.1 подтянулась зависимость plain-crypto-js, которой раньше не было. Анализ показал, что это загрузчик вредоноса, скрытый с помощью обфускации.

На секундочку — axios ставят сотни миллионов раз в неделю, так что под удар могли попасть тысячи проектов.

✖️ xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

Как за 2 года стать разработчиком, за которого конкурируют компании?

⚡️ 8 апреля ИТМО в партнёрстве с Яндекс Практикумом проведут День открытых дверей онлайн-магистратуры «Фронтенд- и бэкенд-разработка».

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

Отдельно разберём сценарии для тех, кто уже работает в IT: как сменить стек, углубиться в текущий или перейти в новые направления, включая работу с ИИ.

На встрече обсудим:
— какой трек выбрать и как выстроить карьеру в разработке
— какую роль играет ИИ в программировании
— как устроена программа и чему вы научитесь
— как проходит обучение и как его совмещать с работой
— как поступить: вступительные испытания и ключевые даты


Подключайтесь онлайн 8 апреля в 19:00 мск.

→ Зарегистрироваться на ДОД

Читать полностью…

Node.JS [ru] | Серверный JavaScript

CEO Y Combinator выкатил свой сетап для Claude Code

Это целая виртуальная команда из 10+ ролей, которая живёт внутри CLI. Теперь мы живем в реальности, где один человек гоняет 5–10 агентов параллельно: они пишут код, тесты, сами находят баги и фиксят их. У самого Гарри получается до 10–20к строк кода в день при работе «параллельно с CEO».

По факту это превращает Claude в управляемый софтверный завод с ролями, процессами и гейтами.

✖️ xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

🥲 Резюме в IT официально мертво

Свежее исследование 4261 спеца подтвердило, что честность сегодня не кормит. Рынок сломан HR-фильтрами, и выживают на нем только накрутчики. Крутят все и всё:

— 66% опрошенных рисуют опыт. Мидлы делают это так же часто, как джуны, чтобы просто пробить стену из ATS-ботов;
— Без «подкрутки» цифр соискателей не зовут даже на скрининги, зато с нарисованным стажем люди залетают в бигтех и финтех на хорошие ЗП и успешно проходят испыталку;
— В 77% случаев работодатели вообще не вдупляют, что опыт фейковый. Служба безопасности ловит лишь 4%;
— Кандидаты массово используют нейросети для резюме, чтобы обмануть нейросети рекрутеров


✖️ xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

🧭 Разбираем React вместе с Podlodka React Crew

Современные React-приложения становятся всё сложнее. Разработчики регулярно сталкиваются с проблемами производительности, утечками памяти и архитектурными вызовами.

Базового понимания фреймворка становится недостаточно для результативной работы.

💡Эксперты Podlodka React Crew решили разобраться с этой проблемой на онлайн-конференции под названием «Продвинутый React».

С 23 по 27 марта ее участники:

⚙️ узнают, как устроен рендер и внутренние механизмы в современном React

🧠 познакомятся с архитектурой приложений, где применяются React Server Components

📊 научатся профилировать React-приложения и выявлять медленные рендеры, memory leak

🛠️познакомятся с дополнительными инструментами, которые помогут упростить отладку и выявить сложные проблемы

Формат — удобный и ламповый: пять дней, живые Zoom-сессии утром и вечером, закрытое профессиональное сообщество в Telegram и общение со спикерами.

Если хотите углубить свои знания про React в компании крутых экспертов, присоединяйтесь к Podlodka React Crew👇

🎟Забрать early-bird билет: https://podlodka.io/reactcrew

Читать полностью…

Node.JS [ru] | Серверный JavaScript

Недавно решил разобраться с фичей skills в Claude Code. Если коротко, это инструмент, который пришел на смену кастомным slash-командам и значительно расширяет их возможности.

В процессе изучения нашел несколько интересных моментов:

- Генерация маркетингового контента:
Анализирует приложение и помогает писать посты для продвижения, например для Хабра.

- Подбор свободных доменов:
Проверяет доступность доменов по теме проекта и предлагает варианты.

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

- Улучшение фронтенда:
Помогает привести сгенерированный нейросетью фронтенд в более аккуратный и продакшен-подобный вид. Так как фронт это мое основное направление то эта штука это то что я протестил чуть больше. Разница в качестве генерируемого кода мне показалась довольно заметной.

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

👉 Геныч.

Читать полностью…

Node.JS [ru] | Серверный JavaScript

Уроки из Массового Паралича Серверов в 2025 году: Правильное Использование Cluster Модулей в Node.js

В 2025 году мир информационных технологий содрогнулся от неожиданного происшествия — массового паралича серверных систем, причиной которого стало неправильное использование cluster модулей в Node.js. Этот инцидент стал напоминанием о том, что всегда стоит думать о потенциальных ловушках.

Cluster модули в Node.js, предназначенные для улучшения производительности приложений за счёт использования всех доступных ядер процессора, при неправильной конфигурации могут стать источником серьёзных проблем. В погоне за масштабируемостью и высокой доступностью многие разработчики упустили из виду важные детали настройки.

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

Ещё одной распространённой проблемой стало игнорирование необходимости обработки ошибок и отказоустойчивости. Вместо надёжных механизмов перезапуска затухших воркеров, системы просто останавливались, ожидая вмешательства человека. Каждый узел кластера, падая из-за невнимательной работы с асинхронными операциями, приносил свою ноту диссонанса в общий хаос.

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

Читать полностью…

Node.JS [ru] | Серверный JavaScript

🖥 Anthropic выпустили Code Review

Систему, которую в компании запускают почти на каждом PR. За последний год объём кода на инженера в Anthropic вырос примерно на 200%. При такой скорости неудивительно, что ревью стало узким местом.

Теперь Code Review автоматически проверяет PR: несколько ИИ-агентов параллельно ищут баги, перепроверяют результаты и ранжируют проблемы по серьёзности. Причем чем более объемным и сложным будет PR — тем больше агентов туда пойдет работать.

✖️ xCode Journal

Читать полностью…

Node.JS [ru] | Серверный JavaScript

Глубокое погружение в V8: что нужно знать Node.js разработчику

Введение в V8
V8 — это высокопроизводительный JavaScript и WebAssembly движок, разработанный Google на C++. Он используется в браузере Chrome и в среде выполнения Node.js. V8 компилирует JavaScript в машинный код, обеспечивая быструю и эффективную работу приложений. (v8.dev)

Роль V8 в Node.js
В Node.js V8 отвечает за выполнение JavaScript-кода на сервере. Благодаря V8, Node.js может обрабатывать множество одновременных соединений, используя неблокирующую модель ввода-вывода и событийно-ориентированную архитектуру. (nodejs.org)

Оптимизация производительности с помощью V8
V8 использует JIT-компиляцию для преобразования JavaScript в машинный код во время выполнения, что значительно ускоряет выполнение кода. Также V8 поддерживает современные функции ECMAScript, такие как оператор возведения в степень (**) и методы Object.values/Object.entries, что позволяет разработчикам использовать новые возможности языка. (nodejs.org)

Управление памятью и сборка мусора
V8 оснащен продвинутым сборщиком мусора Orinoco, который автоматически управляет выделением и освобождением памяти. Это снижает вероятность утечек памяти и повышает стабильность приложений, особенно длительно работающих. (arunangshudas.medium.com)

Инструменты мониторинга V8 в Node.js
Node.js предоставляет модуль v8, который позволяет получать статистику о состоянии кучи памяти и пространствах кучи. Это полезно для мониторинга и оптимизации использования памяти в приложениях. (nodejs.org)

Примеры кода:

Базовый пример использования модуля v8 для получения статистики кучи:

const v8 = require('v8');
console.log(v8.getHeapStatistics());


Практическое использование метода Object.entries для итерации по объекту:
const obj = { a: 1, b: 2, c: 3 };
for (const [key, value] of Object.entries(obj)) {
console.log(`${key}: ${value}`);
}


Типичная ошибка: блокирующая операция, замедляющая выполнение:
const fs = require('fs');
const data = fs.readFileSync('/file.md'); // Блокирующая операция
console.log(data);


Факты:
👉 V8 компилирует JavaScript в машинный код во время выполнения, обеспечивая высокую производительность.
👉 Сборщик мусора Orinoco в V8 автоматически управляет памятью, снижая вероятность утечек.
👉 Node.js предоставляет модуль v8 для мониторинга состояния памяти и оптимизации приложений.

❗️Понимание работы V8 критично для эффективной разработки на Node.js. Знание его механизмов компиляции, управления памятью и доступных инструментов позволяет создавать более производительные и стабильные серверные приложения.

Источники
V8 JavaScript engine.
Node.js — The V8 JavaScript Engine.
Node.js v7 has updated V8 to 5.4.
6 Reasons to Use V8 with Node.js for JavaScript.
V8 | Node.js v11.2.0 Documentation.

Читать полностью…

Node.JS [ru] | Серверный JavaScript

😭 Гендерный разрыв в IT никуда не делся

Исследование Selecty и hh․ru показало: >200 тыс. рублей в месяц получают 51,5% мужчин и только 34,8% женщин. В тестировании этот порог пробивают 60% парней и 45% девушек, а в бэкенде высокие доходы лишь у 26,5% разработчиц.

Почему так? Мужчины чаще забирают руководящие посты и сеньорские грейды.

✖️ xCode Journal

Читать полностью…
Subscribe to a channel