Недовольный мидл – Telegram
Недовольный мидл
113 subscribers
76 photos
2 videos
48 links
Просто иногда делюсь мыслями по делу и не очень. Welcome!

по всем вопросам: t.me/outsidious
Download Telegram
Хайп вокруг споров про накрутку опыта и собеседований с нейронками вроде как уже утихает, но я тоже, пожалуй, что-нибудь напишу...

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

Можно сколько угодно рассуждать о моральных аспектах этого явления, кто в этом больше виноват и кто «сломал найм». Можно даже придумывать новые инструменты и форматы, которые решат какую-то составляющую этой проблемы, но я уверен, что это лишь временно сместит баланс в одну из сторон. Посмотрите ретроспективно, что происходило с наймом 10–12 лет назад, когда LeetCode стал массовым инструментом для подготовки к собеседованиям. Все ругались, что теперь вместо «настоящих» разработчиков с десятками лет опыта собесы стали лучше проходить те, кто просто «натаскался» на решение таких задач за несколько месяцев. А теперь новые «настоящие» разработчики (те, которые с LeetCode), ругаются на тех, кто не прорешивает кучу задач и списывает их с нейросетей. Как говорится, никогда такого не было...

P.S. Морали никакой нет, не хочу рассуждать, что и как лучше делать, меня просто очень сильно удивило, что многие IT-инфлюенсеры смотрят на эту проблему только с одной из сторон и даже кого-то в чём-то обвиняют... 😐
Please open Telegram to view this post
VIEW IN TELEGRAM
16👍7🤔4💩1
Разработчики такие: REST — это очень важно! Для read-операций будем всегда использовать GET.

Те же разработчики, как только надо пробрасывать больше одного фильтра... 👌
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣5😁3
Supply chain атака на NX! 🫨

Представьте ситуацию: открываете вы VS Code в 4 утра, чтобы допилить свой любимый пет-проект… а ваши ssh-ключи и seed-фразы тут же улетают злоумышленникам. Звучит удивительно, но именно так оно и было 26 августа.

А всё потому, что злоумышленники воспользовались уязвимым пайплайном в старых ветках NX и опубликовали поддельные версии пакета, которые в postinstall-скриптах сканируют файловую систему и ищут секреты. Комьюнити среагировало довольно оперативно и через несколько часов всё уже почистили, да и не так часто разрабы обновляют подобные зависимости. Но есть нюанс: расширение Nx Console делало это за вас! При обновлении workspace-а оно проверяло текущую версию и могло самостоятельно поставить nx@latest.

По данным исследователей инцидента, уязвимость затронула более 1400 разработчиков и сотни компаний: были похищены GitHub-токены, SSH-ключи и слиты корпоративные кодовые базы. Ситуация очень показательная и подсветила множество проблем фронтенд-мира:
1) postinstall-скрипты — бомба замедленного времени;
2) у нас нет доверенных каналов доставки пакетов;
3) экосистема критически зависит от npm-реестров;
4) у нас слабая культура анализа зависимостей;
5) мы зря слепо верим в latest;
6) автоматизации могут обернуться против нас.

Мало нам было истории с left-pad-ом — теперь NX можно использовать для управления криптокошельками...
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔3🔥2😐21👀1
Недовольный мидл
Просто наш burndown chart за прошедший спринт. А в текущий мы набрали почти 100 сторипоинтов, это в ~3.5 раза больше чем мы в среднем закрываем... 😫
Спринт на 100 сторипоинтов прошёл весьма продуктивно — не сожгли всего лишь около 20. Всё это благодаря тому, что коллеги жёстко овертаймили.

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

А вообще — наш абсолютный рекорд по сторипоинтам и хороший burndown 🤟
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍1👎1
Я, когда рассказываю о том, как у нас прошёл спринт...
😁92
Ни дня без supply chain атак на npm 😃

8 сентября в 13:16 произошёл один из крупнейших взломов — были скомпрометированы 18 библиотек с суммарно более чем 2 миллиардами установок в неделю.

Злоумышленники замаскировали фишинговое письмо под официальную коммуникацию от поддержки npm и получили доступ к аккаунту автора множества популярных пакетов. После этого были выпущены релизы этих пакетов со скрытым вредоносным кодом, который перехватывал вызовы браузерных API для сетевых взаимодействий, отслеживал работу с криптокошельками и подменял адреса платежей. Чтобы повысить вероятность того, что владелец кошелька при подтверждении транзакции ничего не заметит, использовалось расстояние Левенштейна для выбора максимально похожего адреса из списка злоумышленника.

Вредоносные пакеты были обнаружены всего через несколько минут. Некоторые источники утверждают, что это произошло случайно — у какой-то группы разработчиков упал пайплайн из-за того, что вредоносный код не собирался для старых версий Node.js. Однако JFrog Security Research, Aikido Security, Sonatype и ReversingLabs — компании, которые первыми опубликовали отчёты об инциденте, — ссылаются на собственные системы мониторинга.

P.S. Несмотря на масштаб атаки, источники из мира криптовалют утверждают, что злоумышленникам удалось заполучить всего лишь около 50$
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Сегодня я узнал, что не зря веду канал 😁

Знакомого на собеседовании спросили, как бы он искал коммит, после которого возник баг. А он знал... потому что видел мой пост.

А вы думали, тут одни мемы… А оно вон как!
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩5😁3🔥2
Бывало ли у вас так, что новая технология или процесс вроде бы несут пользу, но всё равно вызывают отторжение? 😵‍💫

С точки зрения психологии это нормально. Мы склонны держаться за привычное: работает status quo bias — знакомое кажется надёжнее, чем оно есть на самом деле. Дополняет картину эффект потерь: возможные риски воспринимаются сильнее, чем потенциальные выгоды.

Именно поэтому даже самые перспективные нововведения почти всегда встречают сопротивление...
Please open Telegram to view this post
VIEW IN TELEGRAM
4😱3🔥2
Сейчас ИИ внедряют куда угодно — часто не потому что это нужно, а потому что это модно. Оказывается, есть даже шуточная премия AI Darwin Awards за самые нелепые провалы с ИИ.

Мой любимый номинант в этом году — Replit: их AI-агент во время code freeze получил доступ к продакшен-базам и… решил их снести. Более 1200 профилей и карточек компаний исчезли, а агент подкинул фейковые данные, чтобы скрыть следы, хотя потом признался, что «запаниковал вместо того, чтобы думать» 🫣

Теперь уже не поспоришь — ИИ научился вести себя как настоящий разработчик...
Please open Telegram to view this post
VIEW IN TELEGRAM
😁11
Учимся на своих ошибках…

В npm пересматривают процессы публикации пакетов с точки зрения безопасности:

0) обязательная 2FA-аутентификации (на самом деле её включили сразу после серии атак);
1) появились новые granular tokens с ограниченным временем жизни и гибкой настройкой прав;
2) все legacy-токены будут отозваны в течение ближайших пяти недель;
3) 2FA постепенно переезжает с TOTP (Google Authenticator, 1Password и прочие генераторы кодов) на подписи и WebAuthn.


P.S. Обещаю, это мой последний пост про supply chain атаки...

P.P.S ...на этой неделе
🔥2😁2
Почти две недели ничего не постил — был в отпуске. А между тем, новости есть...

Я буду преподавать на курсе по Angular в OTUS. 🤩

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

Уже прошёл вступительный курс и провёл демо-занятие, осталось закончить формальные процедуры — и скоро начну учить...
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14
Меня всё больше удивляет, что умение формулировать запросы и пользоваться нейросетями сейчас преподносится как какой-то полноценный и очень важный скилл разработчика. Есть куча инструментов, которые мы постоянно используем, и они гораздо сложнее в освоении.

Я просто не могу представить разработчика, который не разберётся, как пользоваться каким-нибудь cursor-ом за пару часов дней. Да, возможно, в отдельных задачах "бывалый вайбкодер" сможет извлечь из агента больше пользы, но как будто профит, особенно в сравнении с другими навыками, кажется слегка переоценённым.

P.S. Но гайд по Cursor давайте всё-таки посмотрим... 😅
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7💅1
На этой неделе провёл первое занятие в OTUS. Поговорили про локализацию Angular-приложений и что делать, чтобы она была менее болезненной.

Прошло довольно продуктивно - многие ребята уже сталкивались с мультиязычными приложениями, активно участвовали, предлагали идеи и задавали вопросы. Можно даже сказать, что я доволен. Ого... 😃
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩4👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Тяжёлый был спринт. Пора отдыхать... 😵‍💫
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍2🤣2
Видели новогодний подарок от React?

Критическая уязвимость в React Server Components с CVSS 10.0 — максимальной оценкой, выше которой просто нет. Оказалось, что в RSC можно подменить Flight payload так, что сервер начнёт исполнять произвольный JavaScript-код. То есть обычный запрос от клиента превращается в удалённое выполнение кода на сервере. Классический RCE, только теперь в одной из крайне хайповых фич современного фронтенда.

Проблему уже пофиксили — патч усиливает валидацию входящих payload-ов и жёстче проверяет сериализованную структуру. Но ситуация всё равно показательная: в то самое «рендерим безопасно на сервере» и «архитектурное переосмысление» незаметно закралась уязвимость уровня «в фундаменте дома забыли бетон».

Приятно осознавать, что фронтенд дорос до таких серьёзных и взрослых уязвимостей. Можно уже не спорить про useEffect — у нас теперь есть вещи поважнее...

Ссылки:
https://react.dev/blog/2025/12/03/critical-security-vulnerability-in-react-server-components
https://github.com/ejpir/CVE-2025-55182-research/blob/main/TECHNICAL-ANALYSIS.md
👍5😁3🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Готовлюсь к переоценке... 🤟
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣6😁2
Иногда открываю changes, смотрю на код и думаю: "Ну как вообще можно было так криво сделать?"

...а потом всё-таки нажимаю "Create merge request".
😁11💯3