Итак, представим.
Вы делаете продукт, он приносит деньги в начале, затем, вы много занимаетесь работой, жизнью, потом поиском работы и в процессе устаете от ответственности, которую сами же на себя возложили.
Выгораете
Что дальше? Как продолжать?
Вы делаете продукт, он приносит деньги в начале, затем, вы много занимаетесь работой, жизнью, потом поиском работы и в процессе устаете от ответственности, которую сами же на себя возложили.
Выгораете
Что дальше? Как продолжать?
😢20 5❤1
Forwarded from Dev News от Максима Соснова
Expert Generalists
Статья в блоге Мартина Фаулера про T-shaped специалистов. Точнее, все текущие термины (T-shape, П-shape, и другие) плохо подходят, поэтому в статье вводится термин Expert-Generalist, который означает, что человек одновременно является и экспертом (в противовес generalist) и использует свою экспертизу во многих областях (в противовес эксперту в одной области).
В данном случае имеется в виду, что человек является экспертом в фундаментальных понятиях, которые позволяют ему быть успешным в областях, которые построены на этих понятиях. Классический пример из IT, это когда человек имеет опыт написания ПО на 3-4 языка программирования и ему после этого уже не так важно, на каком именно другом языке писать код, пока этот язык следует общим парадигмам (основан на том же фундаменте). Условно, человек, который писал на JS, PHP, JAVA, C++ с легкостью может войти в Go, Rust, Kotlin. Но, вероятно, столкнется с некоторыми проблемами при входе в Haskell. Но, скорее всего, сможет это сделать в короткие сроки.
В профессиональных кругах не любят генералистов, т.к. у них нет глубоких знаний ни в одной из зон.
В этом кроется ключевая разница между генералистами и экспертами-генералистами. Чистые генералисты знают все поверхностно. Эксперты-генералисты - знают фундаментальные принципы, знание которых позволяет им погружаться в смежные области
В чем сила таких специалистов:
Как правило, такие люди быстро обучаются - они изучат новый инструментарий, если он решает текущую задачу. Как следствие, они создадут более лучшее решение за счет подходящих инструментариев.
Эксперты-генералисты должны иметь хорошие навыки коммуникации и совместной работы. Т.к. они не являются экспертами в областях, они должны уметь запрашивать помощь у коллег. Понимание основных принципов помогает им быстро погружаться в контексты специалистов
Эксперты-генералисты игнорируют барьеру между отделами, командами, функциями. Это те люди, которые могут ускорить выполнение проекта т.к. для них не существует барьеров и, как следствие, они ускоряют коммуникацию, которая необходима для решения задачи
Ключевые качества экспертов-генералистов:
- Любознательность
- Умение сотрудничать
- Фокус на клиенте (бизнесовая направленность)
- Ставка на фундаментальные знания
- Широта знаний
- Способность понимать позицию смежных доменов (например, понимать проблемы SRE или DevOps)
Многие эксперты-генералисты вырастают в технических лидеров
Встает закономерны вопрос: "где брать таких специалистов?". Текущий найм устроен так, что мы скорее наймем ультра-эксперта в технологии, чем наймем человека, который любознателен и умеет погружаться в новые домены. В статье предлагается подход из двух решений:
- Перестать смотреть только на узкие хард-скилы. Вместо этого следует проверять человека на обучаемость, любознательность, создание условий для совместной работы
- Проводить внутренние тренинги и воркшопы, цель которых - погрузить специалистов в смежные области. В Thoughtworks есть 3 воркшопа, в которых специалисты делают решения из смежных областей. В рамках воркшопа они реализуют простые прототипы kafka, kubernetes, delta lake (штука для работы с данными). Создав прототип, люди начинают понимать базовые принципы, на которых основаны эти системы и начинают видеть рабочие ситуации с другой стороны
Это не означает, что больше не нужны специалисты, которые глубоко погружены в какую-то область знаний. Они, конечно же, нужны. В идеале в команде нужны и генералисты и специалисты. Специалисты в этом сетапе:
- Обучают генералистов, подсказывают им какие-то неочевидные нюансы, потеря которых сильно ухудшит решение
- Используют свои знания для создания лучших решений
Для каждой ключевой компетенции в команде нужен 1-2 специалиста.
---
Мое личное мнение: статья топ. По моему личному опыту, люди, которые умеют быстро погружаться в любые домены и находят общие паттерны - одни из самых драйвящих и ценных кадров. По крайней мере в моем опыте продуктовой разработки.
https://martinfowler.com/articles/expert-generalist.html
#managment #tshape #martinFowler
Статья в блоге Мартина Фаулера про T-shaped специалистов. Точнее, все текущие термины (T-shape, П-shape, и другие) плохо подходят, поэтому в статье вводится термин Expert-Generalist, который означает, что человек одновременно является и экспертом (в противовес generalist) и использует свою экспертизу во многих областях (в противовес эксперту в одной области).
В данном случае имеется в виду, что человек является экспертом в фундаментальных понятиях, которые позволяют ему быть успешным в областях, которые построены на этих понятиях. Классический пример из IT, это когда человек имеет опыт написания ПО на 3-4 языка программирования и ему после этого уже не так важно, на каком именно другом языке писать код, пока этот язык следует общим парадигмам (основан на том же фундаменте). Условно, человек, который писал на JS, PHP, JAVA, C++ с легкостью может войти в Go, Rust, Kotlin. Но, вероятно, столкнется с некоторыми проблемами при входе в Haskell. Но, скорее всего, сможет это сделать в короткие сроки.
В профессиональных кругах не любят генералистов, т.к. у них нет глубоких знаний ни в одной из зон.
В этом кроется ключевая разница между генералистами и экспертами-генералистами. Чистые генералисты знают все поверхностно. Эксперты-генералисты - знают фундаментальные принципы, знание которых позволяет им погружаться в смежные области
В чем сила таких специалистов:
Как правило, такие люди быстро обучаются - они изучат новый инструментарий, если он решает текущую задачу. Как следствие, они создадут более лучшее решение за счет подходящих инструментариев.
Эксперты-генералисты должны иметь хорошие навыки коммуникации и совместной работы. Т.к. они не являются экспертами в областях, они должны уметь запрашивать помощь у коллег. Понимание основных принципов помогает им быстро погружаться в контексты специалистов
Эксперты-генералисты игнорируют барьеру между отделами, командами, функциями. Это те люди, которые могут ускорить выполнение проекта т.к. для них не существует барьеров и, как следствие, они ускоряют коммуникацию, которая необходима для решения задачи
Ключевые качества экспертов-генералистов:
- Любознательность
- Умение сотрудничать
- Фокус на клиенте (бизнесовая направленность)
- Ставка на фундаментальные знания
- Широта знаний
- Способность понимать позицию смежных доменов (например, понимать проблемы SRE или DevOps)
Многие эксперты-генералисты вырастают в технических лидеров
Встает закономерны вопрос: "где брать таких специалистов?". Текущий найм устроен так, что мы скорее наймем ультра-эксперта в технологии, чем наймем человека, который любознателен и умеет погружаться в новые домены. В статье предлагается подход из двух решений:
- Перестать смотреть только на узкие хард-скилы. Вместо этого следует проверять человека на обучаемость, любознательность, создание условий для совместной работы
- Проводить внутренние тренинги и воркшопы, цель которых - погрузить специалистов в смежные области. В Thoughtworks есть 3 воркшопа, в которых специалисты делают решения из смежных областей. В рамках воркшопа они реализуют простые прототипы kafka, kubernetes, delta lake (штука для работы с данными). Создав прототип, люди начинают понимать базовые принципы, на которых основаны эти системы и начинают видеть рабочие ситуации с другой стороны
Это не означает, что больше не нужны специалисты, которые глубоко погружены в какую-то область знаний. Они, конечно же, нужны. В идеале в команде нужны и генералисты и специалисты. Специалисты в этом сетапе:
- Обучают генералистов, подсказывают им какие-то неочевидные нюансы, потеря которых сильно ухудшит решение
- Используют свои знания для создания лучших решений
Для каждой ключевой компетенции в команде нужен 1-2 специалиста.
---
Мое личное мнение: статья топ. По моему личному опыту, люди, которые умеют быстро погружаться в любые домены и находят общие паттерны - одни из самых драйвящих и ценных кадров. По крайней мере в моем опыте продуктовой разработки.
https://martinfowler.com/articles/expert-generalist.html
#managment #tshape #martinFowler
martinfowler.com
Expert Generalists
Being an Expert Generalist should be treated as a first-class skill, one that can be assessed and taught.
👍7❤3👎1🤔1 1
Forwarded from Effector news (Yan👀 Lobaty)
Всем привет!
@movpushmov осенью выступает на HolyJS с докладом «Почему вам (скорее всего) нужен эффектор». Поговорим о том, почему во фронтенде всё сложнее управлять состоянием и какие трудности это создаёт.
Покажет, чем Effector отличается от других инструментов и как он помогает проще решать даже запутанные задачи. Будем рады видеть вас на докладе!
@movpushmov осенью выступает на HolyJS с докладом «Почему вам (скорее всего) нужен эффектор». Поговорим о том, почему во фронтенде всё сложнее управлять состоянием и какие трудности это создаёт.
Покажет, чем Effector отличается от других инструментов и как он помогает проще решать даже запутанные задачи. Будем рады видеть вас на докладе!
HolyJS 2025 Autumn. JavaScript-конференция: от фронтенда до бэкенда
Почему вам (скорее всего) нужен Effector | Доклад на HolyJS 2025 Autumn
В докладе разберу, чем Effector отличается от других решений, и наглядно покажу, как легко с ним реализовать как простые, так и сложные кейсы.
🔥23😁17 9👎6❤3
👎14🔥6👍4🤯4🤩2
Forwarded from Effector news (Yan👀 Lobaty)
Кто искал работу? С мест сообщают:
Йоу, йоу!
Ищем фронтендера в команду Space307 (https://space307.team/).
Мы — международная финтех-компания полного цикла. В нашей команде 280+ сотрудников в области разработки и маркетинга.
За 10 лет мы прошли путь от стартапа до компании, которая запускает масштабные продукты на международный рынок.
Чем предстоит заниматься:
> Разрабатывать и поддерживать внутренние продукты компании
> Прорабатывать задачи совместно с UX-специалистами и бэкенд-разработчиками
> Разрабатывать функционал и обеспечивать высокое качество кода
> Участвовать в проектировании архитектуры приложений
> Проводить и проходить code review
Мы ждём, что ты:
> Умеешь абстрактно мыслить
> Имеешь от четырёх лет коммерческого опыта в продуктовой компании и от одного года коммерческого опыта работы с Effector
> Уверенно владеешь TypeScript и понимаешь SemVer
> Работаешь с React и знаешь как добиваться минимального количества рендеров
> Пишешь юнит-тесты и понимаешь зачем это делаешь
> Самостоятельный, но чувствуешь когда лучше спросить совет
> Можешь работать в продуктовой команде единственным фронтенд-разработчиком или с напарниками
Стек:
> TypeScript, React, Effector, Vitest, grlt-hub
Что тебя ждёт в Space307:
> Удалёнка без границ. Работай откуда угодно, начинай день, когда удобно — до 12:00 (GMT+3).
> Достойная зарплата. Следим за рынком и делаем всё, чтобы спейсовцы были оценены справедливо. Оплата: мы договариваемся об удобном формате для кандидата в зависимости от его локации.
> Много движа. Мастер-классы, тимбилдинги, тусовки, корпоративы — выбирай, что по душе.
> Поддержка твоего здоровья. Компенсация спорта, инвентаря и возможность оформить медицинскую страховку
> Рост и развитие. Обучение, конференции — за наш счёт.
> Иностранные языки и хобби для души. Прокачивай навыки и занимайся любимым делом.
> Настоящая команда. Честный фидбэк, поддержка и общий драйв.
📌 Откликайся на вакансию по ссылке (https://space307.team/frontend-developer)
Или пиши ректуреру @innafedotova9
Йоу, йоу!
Ищем фронтендера в команду Space307 (https://space307.team/).
Мы — международная финтех-компания полного цикла. В нашей команде 280+ сотрудников в области разработки и маркетинга.
За 10 лет мы прошли путь от стартапа до компании, которая запускает масштабные продукты на международный рынок.
Чем предстоит заниматься:
> Разрабатывать и поддерживать внутренние продукты компании
> Прорабатывать задачи совместно с UX-специалистами и бэкенд-разработчиками
> Разрабатывать функционал и обеспечивать высокое качество кода
> Участвовать в проектировании архитектуры приложений
> Проводить и проходить code review
Мы ждём, что ты:
> Умеешь абстрактно мыслить
> Имеешь от четырёх лет коммерческого опыта в продуктовой компании и от одного года коммерческого опыта работы с Effector
> Уверенно владеешь TypeScript и понимаешь SemVer
> Работаешь с React и знаешь как добиваться минимального количества рендеров
> Пишешь юнит-тесты и понимаешь зачем это делаешь
> Самостоятельный, но чувствуешь когда лучше спросить совет
> Можешь работать в продуктовой команде единственным фронтенд-разработчиком или с напарниками
Стек:
> TypeScript, React, Effector, Vitest, grlt-hub
Что тебя ждёт в Space307:
> Удалёнка без границ. Работай откуда угодно, начинай день, когда удобно — до 12:00 (GMT+3).
> Достойная зарплата. Следим за рынком и делаем всё, чтобы спейсовцы были оценены справедливо. Оплата: мы договариваемся об удобном формате для кандидата в зависимости от его локации.
> Много движа. Мастер-классы, тимбилдинги, тусовки, корпоративы — выбирай, что по душе.
> Поддержка твоего здоровья. Компенсация спорта, инвентаря и возможность оформить медицинскую страховку
> Рост и развитие. Обучение, конференции — за наш счёт.
> Иностранные языки и хобби для души. Прокачивай навыки и занимайся любимым делом.
> Настоящая команда. Честный фидбэк, поддержка и общий драйв.
📌 Откликайся на вакансию по ссылке (https://space307.team/frontend-developer)
Или пиши ректуреру @innafedotova9
🔥9🗿9😁6 5❤4
Forwarded from Александр Хороших
Top-level await оказывается фатально сломан в Сафари
https://x.com/jaffathecake/status/1982542211712712878
https://bugs.webkit.org/show_bug.cgi?id=242740
Сафари взрывает импорт с ReferenceError, если модуль с top-level await внутри импортируется одновременно больше чем одним модулем
Чтобы руками получить такой баг, нужно написать чуток странный код типа
Но проблема в том, что ровно такой код может оказаться в бандле, если сборщик опирается на нативную поддержку ESM => неожиданным образом отстреливает Bun, причем даже в своем рантайме, т.к. JS-движок там тоже из под Сафари
https://github.com/oven-sh/bun/issues/2927
Теоретически может отстрелить и Vite, но ишью на эту тему я у них не нашел + кажется, они top-level await всё таки как-то транспилируют в продакшен-сборке
https://x.com/jaffathecake/status/1982542211712712878
https://bugs.webkit.org/show_bug.cgi?id=242740
Сафари взрывает импорт с ReferenceError, если модуль с top-level await внутри импортируется одновременно больше чем одним модулем
Чтобы руками получить такой баг, нужно написать чуток странный код типа
// utils.js
await new Promise((resolve) => setTimeout(resolve, 100));
export const utils = "utils";
// common.js
const { utils } = await import("./utils.js");
export const common = utils;
console.log("common", { utils });
// entry.js
const [{ utils }, { common }] = await Promise.all([import("./utils.js"), import("./common.js")]);
console.log("a", { common, utils });
Но проблема в том, что ровно такой код может оказаться в бандле, если сборщик опирается на нативную поддержку ESM => неожиданным образом отстреливает Bun, причем даже в своем рантайме, т.к. JS-движок там тоже из под Сафари
https://github.com/oven-sh/bun/issues/2927
Теоретически может отстрелить и Vite, но ишью на эту тему я у них не нашел + кажется, они top-level await всё таки как-то транспилируют в продакшен-сборке
X (formerly Twitter)
Jake Archibald (@jaffathecake) on X
JavaScript top-level await is no longer considered 'baseline' due to a pretty big Safari bug https://t.co/YydXq4D8Sz
The module graph fails in cases where two modules import a third at the same time. Demo: https://t.co/ByzQqEseyu
It's best to avoid the…
The module graph fails in cases where two modules import a third at the same time. Demo: https://t.co/ByzQqEseyu
It's best to avoid the…
3🤯19❤5✍3😁2
Forwarded from Трудно быть Коротаевым
Media is too big
VIEW IN TELEGRAM
Черная дыра
Наткнулся на визуализацию черной дыры в вебе. Красиво сделаны эффекты как гравитация пожирает буквально все что рядом, включая свет.
https://singularity.misterprada.com/
Наткнулся на визуализацию черной дыры в вебе. Красиво сделаны эффекты как гравитация пожирает буквально все что рядом, включая свет.
https://singularity.misterprada.com/
1🔥35
Forwarded from mefody.dev
Ещё пара уязвимостей в React Server Components
Спустя неделю после просьбы обновить уязвимые библиотеки команда React просит сделать это снова. На этот раз исследователи нашли две уязвимости, которые могут быть крайне неприятны.
CVE-2025-55184 и CVE-2025-67779 — позволяет дёрнуть серверную функцию так, чтобы вызвать бесконечный цикл, что может грохнуть или избыточно нагрузить ваш серверный CPU.
CVE-2025-55183 — позволяет достать исходный код серверной функции. Опасно, только если вы прямо в коде храните пароли или супер-секретную бизнес-логику пишете прям в серверных функциях.
В общем, снова нужно обновить библиотеки из списка в статье. И фреймворки, у которых они в зависимостях (особенно Next.js).
Интересно, как много команд завело встречку в календаре обсудить «Переезд на <не-реакт, подставить нужное>».
https://react.dev/blog/2025/12/11/denial-of-service-and-source-code-exposure-in-react-server-components
Спустя неделю после просьбы обновить уязвимые библиотеки команда React просит сделать это снова. На этот раз исследователи нашли две уязвимости, которые могут быть крайне неприятны.
CVE-2025-55184 и CVE-2025-67779 — позволяет дёрнуть серверную функцию так, чтобы вызвать бесконечный цикл, что может грохнуть или избыточно нагрузить ваш серверный CPU.
CVE-2025-55183 — позволяет достать исходный код серверной функции. Опасно, только если вы прямо в коде храните пароли или супер-секретную бизнес-логику пишете прям в серверных функциях.
В общем, снова нужно обновить библиотеки из списка в статье. И фреймворки, у которых они в зависимостях (особенно Next.js).
Интересно, как много команд завело встречку в календаре обсудить «Переезд на <не-реакт, подставить нужное>».
https://react.dev/blog/2025/12/11/denial-of-service-and-source-code-exposure-in-react-server-components
react.dev
Denial of Service and Source Code Exposure in React Server Components – React
The library for web and native user interfaces
😁25👍1
Forwarded from Андруша пишет код
pickyouragent.dev
Can I use для агентов
Я понемногу продолжаю тестировать агенты на себе и нахожу новые фичи, которые хотелось бы иметь и которые приколько было бы иметь.
Из примеров:
- оркестратор мод из Kilo Code, который позволяет нехило так экономить контекст https://pickyouragent.dev/features/planmode/#orchestrator-mode
- связка LSP и opencode, который автоматом выкачивает нужный LSP и начинает его использовать в подсветке ошибок. https://pickyouragent.dev/features/tools/#linters. Причём благодаря выкачиваюнию, вам вообще ничего настраивать не надо: я недавно копался в коде рантайма дотнета. И opencode прекрасно выкачал соответвующий LSP неизвестно для меня откуда и начал его использовать.
- наличие cli интерфейса для агента оказалось приятной штукой: к примеру, курсор не умеет запрашивать текст веб страниц, а opencode умеет. В итоге я настроил скилл, который говорит курсору вызывать opencode для получения текстов страниц. Работает вполне удобно. Хотелось бы наличие нативной фичи, но живём как живём.
Кроме этого, я закончил с Kilo Code, наконец визуализировал насколько Junie дно по фичам и заполняю то, что мне понравилось и не понравилось в Kilo Code по работе.
Основное же изменение: это то, что ко мне начали приходить люди и говорить "прикольно, не знал о такой-то фиче, но здесь ты проставил неверный статус для другой фичи". Получается эдакая коллективная разработка.
И я хочу выкрутить её на максимум: у pickyouragent теперь есть свой канал @pickyouragent, куда я буду сгружать апдейты на каждый чих. Пока у меня получается примерно обновлять сайт где-то 2 раза в неделю. Так шо велком в канал и его комментарии, будет что обсудить на тему агентов.
Can I use для агентов
Я понемногу продолжаю тестировать агенты на себе и нахожу новые фичи, которые хотелось бы иметь и которые приколько было бы иметь.
Из примеров:
- оркестратор мод из Kilo Code, который позволяет нехило так экономить контекст https://pickyouragent.dev/features/planmode/#orchestrator-mode
- связка LSP и opencode, который автоматом выкачивает нужный LSP и начинает его использовать в подсветке ошибок. https://pickyouragent.dev/features/tools/#linters. Причём благодаря выкачиваюнию, вам вообще ничего настраивать не надо: я недавно копался в коде рантайма дотнета. И opencode прекрасно выкачал соответвующий LSP неизвестно для меня откуда и начал его использовать.
- наличие cli интерфейса для агента оказалось приятной штукой: к примеру, курсор не умеет запрашивать текст веб страниц, а opencode умеет. В итоге я настроил скилл, который говорит курсору вызывать opencode для получения текстов страниц. Работает вполне удобно. Хотелось бы наличие нативной фичи, но живём как живём.
Кроме этого, я закончил с Kilo Code, наконец визуализировал насколько Junie дно по фичам и заполняю то, что мне понравилось и не понравилось в Kilo Code по работе.
Основное же изменение: это то, что ко мне начали приходить люди и говорить "прикольно, не знал о такой-то фиче, но здесь ты проставил неверный статус для другой фичи". Получается эдакая коллективная разработка.
И я хочу выкрутить её на максимум: у pickyouragent теперь есть свой канал @pickyouragent, куда я буду сгружать апдейты на каждый чих. Пока у меня получается примерно обновлять сайт где-то 2 раза в неделю. Так шо велком в канал и его комментарии, будет что обсудить на тему агентов.
❤6👎5🔥2
Forwarded from Психология разработки | Сергей Андреев
Сегодня руки дошли до handy.
Это удобная обёртка для голосового ввода по нажатию кнопки. Использовал с моделью Parakeet, работает неплохо с русским языком.
Я так привык к голосовому вводу на мобильных устройствах, что подумал: надо бы что-то подобное попробовать и на компе.
Вообще есть подозрение, что речь и письмо используют какие-то разные отделы мозга, потому что, на удивление, оказывается, что некоторые задачи удобнее говорить, а некоторые удобнее писать.
Поэтому, если вы на удалёнке и одни, попробуйте. Очень сильно выручает, если нужно сформулировать мысль, которая витает в воздухе.
Ссылочка: https://handy.computer/
Это удобная обёртка для голосового ввода по нажатию кнопки. Использовал с моделью Parakeet, работает неплохо с русским языком.
Я так привык к голосовому вводу на мобильных устройствах, что подумал: надо бы что-то подобное попробовать и на компе.
Вообще есть подозрение, что речь и письмо используют какие-то разные отделы мозга, потому что, на удивление, оказывается, что некоторые задачи удобнее говорить, а некоторые удобнее писать.
Поэтому, если вы на удалёнке и одни, попробуйте. Очень сильно выручает, если нужно сформулировать мысль, которая витает в воздухе.
Ссылочка: https://handy.computer/
Handy
Handy is a cross platform, open-source, speech-to-text application for your computer
❤11👍5