惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

K
Kaspersky official blog
T
Threat Research - Cisco Blogs
N
News and Events Feed by Topic
Hacker News: Ask HN
Hacker News: Ask HN
Project Zero
Project Zero
Application and Cybersecurity Blog
Application and Cybersecurity Blog
博客园 - 叶小钗
Security Latest
Security Latest
Spread Privacy
Spread Privacy
aimingoo的专栏
aimingoo的专栏
N
News and Events Feed by Topic
Webroot Blog
Webroot Blog
U
Unit 42
Cyberwarzone
Cyberwarzone
小众软件
小众软件
Scott Helme
Scott Helme
Engineering at Meta
Engineering at Meta
Microsoft Security Blog
Microsoft Security Blog
T
The Blog of Author Tim Ferriss
A
About on SuperTechFans
爱范儿
爱范儿
S
Schneier on Security
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Schneier on Security
Schneier on Security
Latest news
Latest news
GbyAI
GbyAI
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Simon Willison's Weblog
Simon Willison's Weblog
The Register - Security
The Register - Security
WordPress大学
WordPress大学
博客园_首页
Blog — PlanetScale
Blog — PlanetScale
PCI Perspectives
PCI Perspectives
Jina AI
Jina AI
AI
AI
NISL@THU
NISL@THU
I
Intezer
G
GRAHAM CLULEY
B
Blog
S
Secure Thoughts
IT之家
IT之家
宝玉的分享
宝玉的分享
Recent Announcements
Recent Announcements
Y
Y Combinator Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
酷 壳 – CoolShell
酷 壳 – CoolShell
有赞技术团队
有赞技术团队
V2EX - 技术
V2EX - 技术
Recorded Future
Recorded Future
Hacker News - Newest:
Hacker News - Newest: "LLM"

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания Автономность как точка невозврата: кто будет субъектом в цифровом будущем Обучение ИИ в «диких» условиях: как рутинные действия превращаются в датасеты Как измерить LLM для задач кибербеза: обзор открытых бенчмарков Где хранить код? Сравнение GitHub, GitLab и Bitbucket Математика объясняет, почему нормальное распределение встречается повсюду Почему ваш FinOps не работает: 12 тезисов от практиков Как подписать проектную документацию УКЭП с использованием бесплатных лицензий Pilot Адаптивное администрирование Sigla Vision Я грузил уран в бочки, а потом 20 лет строил ИТ в атомной отрасли Чем позвонить с Эвереста? История и обзор спутниковой связи. Часть 2 Как языковая модель помогает контролировать качество инструктажей по охране труда в металлургии Как не передать на desktop свой IP в РКН Анатомия SAP Privileges: как устроено управление правами в macOS MoneyDev: Сказка про три главных слова Обновлённый токенизатор видео K-VAE 2.0 от Сбера Как сделать диспетчеризацию дома на 1284 квартиры почти бесплатно Как мы разогнали железную дорогу Мы дали агентам рутину. Теперь надо решить — что делать с освободившимся временем Токсичный контент, промпт-хакинг и защита ИИ — всё о Guardrails для LLM Умный город начинается с точного взгляда: как «Фалькон Тех» меняет пространство к лучшему Навайбкодил приложение для анализа графов Почему Дюну так интересно читать? Упрощаем работу с рутиной или как стать Гендальфом Белым Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1 Какие профессии исчезнут из-за ИИ, а какие появятся? И что с этим делать Как мы построили IT-отдел, где хочется расти: архитектурные встречи, прозрачные метрики и книжные подарки Rufler: Делаем из Claude Code автономный рой через один YAML-конфиг Sing-box и белый список приложений Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise OpenAI строит MLM-пирамиду, а McKinsey и Accenture помогают ей в этом Дом, который не построил Фишер (Часть 2) «Сверхзвуковой математик» против «Вдумчивого логиста»: битва алгоритмов 3D-упаковки Мультимодальные модели – грубый и дорогой инструмент Разговоры ничего не стоят. Код тоже Проверки физических лиц: с кого начнет ФНС Топ-10 бесплатных нейросетей для создания видео в 2026 году Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия Разработка нового статического анализатора: PVS-Studio JavaScript Поиск уязвимостей ПО: базовый минимум или роскошный максимум Почему оценка персонала не работает как инструмент управления Как мы разработали ИИ-ассистента и сократили рутину продуктовой команды на 50% Как я ушел из найма, нажарил косточек и продал на маркетплейсах на 168 млн в год Когда 1С:ERP уже внедрена, а нормального производственного плана всё ещё нет Как я сделал Claude мультимодальным, подключив к нему Qwen Omni Как приглашение на вакансию мечты превращается в атаку Infrastructure as Code: философия и лучшие практики IaC Тестируем Yandex Code Assistant на задаче, в которой нужно хранить секреты nxs-universal-chart v3.0: новое поколение универсального Helm-чарта Callback Injection: Техника, которая отправила Microsoft Defender в глухой нокаут «Все идеи на стол»: митап как способ вывести проект из тупика Сегодня я узнал нечто новое о GPU благодаря багу в своей игре Как заставить LLM ̶ ̶г̶а̶л̶л̶ю̶ ̶ эволюционировать Карта событий как фундамент аналитики: практический кейс для E-commerce Что выбрать для AI: x86, ARM или RISC-V? Дайджест железа за март Роль соматических мутаций в развитии аутоиммунных заболеваний: путь к избирательной терапии Mythos от Anthropic — тревожный сигнал для всех, а не только для банков Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Green-VLA: как мы собрали VLA-модель для реального антропоморфного робота и не потеряли обобщение Финансовая гонка вооружений: почему умные люди добровольно в ней участвуют Эра ИИ-агентов наступила: выбираем лучшего цифрового сотрудника # Практический опыт внедрения WinCC Redundancy на производственном предприятии Сделал MVP за 3 дня, а потом неделю прикручивал оплату. Оно того стоило? Физика против Маска: почему Starship V3 может оказаться ещё одной катастрофой Нефть Венесуэлы: крупнейшие запасы в мире, но не крупнейшая нефтяная держава JPA 4. Переосмысление Hibernate Почему зеркальная фотокамера Nikon D5 десятилетней давности идеально подошла для миссии «Артемида-2» Проект «Уровень-Спутник» или как мы сделали платформу для гидрологов «Замедлиться, чтобы ускориться»: почему ИИ повышает цену ошибок в требованиях и архитектуре Как с нуля поднять трафик IT-компании на 1657% при бюджете 55 тыс. и выжить Pixel-perfect Downsampling — идеальная отрисовка 50 миллионов точек без потерь
Kotlin — моя любовь, Java — моя судьба. История одного возвращения
MishaBucha · 2026-04-25 · via Все публикации подряд на Хабре

Уровень сложностиПростой

Время на прочтение4 мин

Охват и читатели1

Кейс

Всем привет! Меня зовут Михаил, я главный эксперт в ОТП банке.

Несколько лет я мечтал поработать на Kotlin. Мне это удалось - был большой проект РЖД, я вкатился, писал код, радовался. Kotlin мне правда понравился.

Но давление менеджеров, нереальные сроки и просто выгорание вынудило меня выходить на рынок, и я пошёл искать работу… и тут меня ждал сюрприз. Вакансий, где нужен чисто Kotlin, в России - единицы. А те, что есть, чаще ищут Java/Kotlin с упором на первую.

В этой статье - моя история: как я вкатывался в Kotlin без подготовки, как мне понравилось, и почему я всё равно сейчас пишу на Java. Читайте, если думаете о переходе, - возможно, это поможет скорректировать ожидания.

Поехали!

!!!ДИСКЛЕЙМЕР!!!

В этой статье я просто описываю свой личный опыт. Я не буду говорить, что плохо, а что хорошо. И Java, и Kotlin - отличные языки, каждый подходит для своих задач. Я никого никуда не призываю переходить и не отговариваю. Просто делюсь тем, через что прошёл сам. А выбор остаётся за вами.

Начало карьеры

Как-то давно я попал в IT совершенно случайно. Сидел, ел в Макдоналдсе (тогда ещё можно было), в период бигфеста выиграл курс по Kotlin-разработке на мобилках. Решил попробовать - хотя вообще не смыслил в коде. Начал учиться, пошёл на собеседование на стажёра… и получил отказ с формулировкой, которую запомнил на всю жизнь:

"Как можно не знать Java, когда пишешь на Kotlin?"

Тогда я, пошёл учить Java, попал на стажировку и с тех пор работаю Java-разработчиком. Но Kotlin меня всегда манил. Все вокруг говорили, что это "сахарная Java", а я смотрел на него и очень хотел попробовать на настоящем проекте.

Переезд с Java на Kotlin

Стадия 1 - выход на рынок и собес

В какой-то момент я решил сменить работу. Без разницы - Java или Kotlin, просто хотелось нового. Начал искать.

И тут мне пишет HR: "Проект в РЖД. Стек: Kotlin + Spring + jOOQ".

Я загорелся. Kotlin хотел попробовать давно. А вот jOOQ смущал - я его вообще не знал. (Спойлер: зря смущался. Теперь я его обожаю.) Сказал HR, что Kotlin вообще не знаю, сказали, что у них такое бывает, но вопросы будут и по Kotlin.

Назначили собеседование. И тут я запаниковал: Kotlin-то я почти не знаю. Теорию кое-как подтянул, но для серьёзного собеса - точно не хватает.

День Х. Захожу. И…

…ноль вопросов по Kotlin. Вообще.

Через час после собеседования мне приходит оффер.

"Такое вообще бывает?" - подумал я.

радуюсь аферу

радуюсь аферу

Стадия 2 - вижу проект и не понимаю, что происходит

Все говорили: "да по сути это то же самое, что и Java". Попадая на проект и читая код - шок. Из всех слов я будто знаю только class, private и final. Остальное выглядело как магия: ?:, ?.let {} и непонятные by lazy - я чувствовал, что я попал на космический корабль, а не на проект РЖД.

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

Первые задачи - через слёзы. Но знаете что? Было ООООЧЕНЬ интересно. Потому что кода писалось реально меньше. Да, непонятно. Да, тупил на ровном месте. Эту стадию очень хотелось бы пропустить, но увы, она неизбежна.

чисто я в тот момент

чисто я в тот момент

Стадия 3 - кайфую

Примерно через два месяца я забыл, что вообще когда-то писал на Java. Серьёзно. Рука перестала тянуться к ;, голова перестала ждать getter/setter.

На практике выучил бОльшую часть синтаксического сахарка:

  • data class — и нет Lombok'а(понимаю, что в java есть прекрасный аналог - Record)

  • ?.let {} — и нет if (obj != null)

  • when как expression — и нет многоэтажных switch/case

  • Extension functions — пишешь "Kotlin".toSuperSugar() и кайфуешь, что не надо тащить утилитный класс

Я кайфовал. Не громкое слово — реально кайфовал.

Параллельно общался с бывшими коллегамиНекоторых надоумил посмотреть в сторону Kotlin.

В общем, я получил шикарный опыт. Язык мне реально зашёл. И я уже тогда думал: "На Kotlin хочу работать и дальше".

я под синтаксическим сахаром

я под синтаксическим сахаром

Стадия 4 - выход на рынок Kotlin

Спустя полтора года я понял, что надо уходить.

Давка со стороны руководства. Нереальные сроки. Полный треш в целом.

Я вышел на рынок с чёткой позицией: хочу остаться на Kotlin.

Искал вакансии: либо чистый Kotlin, либо Java/Kotlin с уклоном именно в Kotlin. Мобилки честно скипал - я веб-разработчик, не моё.

Искал очень долго. Месяцы. Десятки созвонов и собеседований.

И на каждом задавал один и тот же вопрос:
"В каком соотношении у вас Java и Kotlin? Где пишут на Kotlin?"

Ответы были двух типов:

  1. "Наша команда думает переезжать на Kotlin… но пока планов нет."

  2. "У нас есть один сервис на Kotlin. Остальное на Java. Ну и новый код пишем в основном на Java."

Всё. Ни разу не услышал "У нас полноценная Kotlin-команда, пишем только на нём".

так и было

так и было

Я понял простую вещь: если хочу менять работу прямо сейчас - нужно рассматривать всевакансии. И Java, и Kotlin.

разница между вакансиями

разница между вакансиями

Kotlin - редкий зверь в российском enterprise.

Я начал искать на Java. Скрепя сердце. Параллельно всё ещё надеялся, что попадётся тот самый оффер мечты на чистом Kotlin.

Прошли недели. За это время ни одного собеседования на Kotlin. Ни одного.

Зато по Java были собесы. И в итоге — оффер.

Я принял его. И ушёл с Kotlin-проекта.

С надеждой, что ещё вернусь к нему когда-нибудь. Просто не сейчас.

Стадия 5 - возврат к истокам

Вернувшись на Java, я поначалу думал: "Всё, не смогу долго. Kotlin зашёл куда больше".

Начал писать нехотя. Раз задачка, два задачка, три задачка…

И вдруг заметил, что втянулся.

Чтобы вернуться с Kotlin на Java, мне потребовалось недели две. Всё. Никаких проблем.Более того, я даже почувствовал ностальгию.

да да я

да да я

Прошло уже больше полугода. Переход был полностью бесшовным.

При этом вспоминаю, как переходил с Java на Kotlin - было больно. А обратно - нет.

Итоги

Java и Kotlin - похожие, но всё-таки разные языки. Под разные задачи. Оба, как по мне, крутые. Выбор всегда за вами. Я получал удовольствие и от Java, и от Kotlin. Получаю до сих пор.

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

Мой совет тем, кто сейчас на распутье:

Если переживаете, что смысла переходить нет, но очень хочется попробовать - пробуйте. Не пожалеете. Даже если не останетесь на Kotlin, вы получите прекрасный опыт.

Если вы смотрите на Kotlin косо и считаете "очередной модный сахар" - ваше дело. Остаться на java тоже хорошее решение.


Всем спасибо за внимание, надеюсь, что мой опыт будет вам полезен!)