ru
Feedback

Не попадитесь на канал ботавода! Telemetrio находит и помечает такие каналы 👉 Хотите видеть метку — оформите подписку

Павел Сорокин | Java

Павел Сорокин | Java

Открыть в Telegram

О том как стать и быть Java разработчиком Обучение по Java до оффера: https://sorokin.school По рекламе и сотрудничеству: @pave1s или sorokincompany@rambler.ru

Больше
9 156
Подписчики
-424 часа
-57 дней
+12230 дней
Привлечение подписчиков
окт. '26
октябрь '26
+119
в 0 каналах
сентябрь '26
+403
в 0 каналах
Get PRO
август '26
+401
в 0 каналах
Get PRO
июль '26
+550
в 0 каналах
Get PRO
июнь '26
+532
в 0 каналах
Get PRO
май '26
+588
в 0 каналах
Get PRO
апрель '26
+527
в 1 каналах
Get PRO
март '26
+581
в 0 каналах
Get PRO
февраль '26
+365
в 0 каналах
Get PRO
январь '26
+404
в 0 каналах
Get PRO
декабрь '25
+392
в 1 каналах
Get PRO
ноябрь '25
+710
в 0 каналах
Get PRO
октябрь '25
+613
в 0 каналах
Get PRO
сентябрь '25
+521
в 0 каналах
Get PRO
август '25
+281
в 0 каналах
Get PRO
июль '25
+226
в 0 каналах
Get PRO
июнь '25
+277
в 0 каналах
Get PRO
май '25
+414
в 1 каналах
Get PRO
апрель '25
+275
в 0 каналах
Get PRO
март '25
+215
в 0 каналах
Get PRO
февраль '25
+207
в 1 каналах
Get PRO
январь '25
+240
в 0 каналах
Get PRO
декабрь '24
+356
в 17 каналах
Get PRO
ноябрь '24
+174
в 0 каналах
Get PRO
октябрь '24
+410
в 5 каналах
Get PRO
сентябрь '24
+555
в 7 каналах
Get PRO
август '24
+406
в 2 каналах
Get PRO
июль '24
+246
в 0 каналах
Get PRO
июнь '24
+107
в 0 каналах
Get PRO
май '24
+219
в 1 каналах
Get PRO
апрель '24
+91
в 0 каналах
Get PRO
март '24
+491
в 1 каналах
Дата
Привлечение подписчиков
Упоминания
Каналы
18 октября0
17 октября+6
16 октября+7
15 октября+5
14 октября+4
13 октября+10
12 октября+7
11 октября+5
10 октября+12
09 октября+9
08 октября+7
07 октября+12
06 октября+2
05 октября+12
04 октября+5
03 октября+5
02 октября+5
01 октября+6
Посты канала
Открываю предзапись на последний поток Java Backend 👀 И это, конечно, подстава для тех, у кого уже был прекрасный план:
«Сейчас на работе разгребусь, чуть-чуть Java подтяну, Меркурий развернётся — и на следующий залечу»
Очень удобный был план, согласитесь? Но в этот раз открываю предзапись на ПОСЛЕДНИЙ поток. Пум-пум. Да-да, ребят, понимаю: выглядит как прогрев в духе «залетайте быстрее, больше такого шанса не будет». Звучит как очередное закрытие магазинов Sunlight)) Но другого потока реально не будет. В следующих постах объясню, чё к чему и почему принял такое решение. Теперь к тому, ради чего вообще стоит залетать Вроде учишься, что-то смотришь, технологии узнаёшь, а как самому собрать backend и пойти с этими знаниями на рынок — непонятно. На Java Backend как раз разбираем, как собирается современная backend-система и как всё это работает на практике. От HTTP-запроса и бизнес-логики до базы, кеша и взаимодействия сервисов. За 18 недель будем: 🟣 Писать сервисы на Spring Boot: REST API, валидация, обработка ошибок, бизнес-правила и тесты. 🟣 Работать с данными: PostgreSQL, Hibernate, Spring Data JPA, транзакции и миграции Liquibase. 🟣 Защищать backend: Spring Security, JWT, роли и права доступа. 🟣 Связывать сервисы через Kafka, обрабатывать события и отправлять уведомления. Добавлять Redis-кеш и разбираться, когда его обновлять. 🟣 Собирать и запускать всё вместе: Docker Compose, окружения и CI/CD. Выпускной проект — EventManager. Сами напишете систему мероприятий: пользователи регистрируются, записываются на события и получают уведомления об изменениях. Два сервиса, Kafka между ними, PostgreSQL, Redis, JWT и Docker — всё собирается в один большой проект для портфолио. Потому что между просмотром теории и умением применять это на практике работы ещё дофига. Плюс личный ментор, с которым разбираете домашки и получаете код-ревью, и воркшопы с менторами. Будет у кого спросить, когда упёрлись, и от кого получить адекватную обратную связь. Но это ещё не всё Каждый поток я улучшаю на основе вашей обратки. Этот тоже решил докрутить: 🟣 Добавлю мои лекции про AI и кодинг-агентов: как использовать нейронки для учёбы и разработки, ставить им задачи и проверять результат, а не просто забирать сгенерированный код. 🟣 Будут новые лекции и воркшопы от меня по system design и построению микросервисов: как соединять технологии, сервисы и кеширование в работающую систему. Ещё внедрю несколько новых механик и штучек — о них расскажу в следующих постах. Так что читайте 👀 Сразу скажу: за вас домашки никто не напишет и на собес вместо вас не сходит. Но будет понятнее, ЧТО делать, в какой последовательности и у кого спросить. 🎁 Те, кто заполнит анкету предзаписи, получат самые лучшие условия и самый жирный бонус. Какие именно — пока раскрывать не буду. Это секрет для тех, кто больше всего хочет попасть на поток)) Так что, если уже созрели перестать готовиться к подготовке — вот анкета предзаписи 👈

2
Кто ты без нейронки? Гений, миллиардер, плейбой, филантроп С нейросетями сейчас можно всё, ну или практически, собрать учебный проект? Легко 😁 Контроллер готов, база подключена, запросы ходят, запускаешь и работает, никаких ошибок. Ну, круто, вроде хорошо продвинулся А когда возвращаешься к этому коду через неделю - и уже не очень понимаешь, что там происходит 👍 На самом деле сейчас многие начинающие разработчики почти весь код делают с ИИ. Но потом не могут объяснить, что делает метод и откуда берутся данные Уметь читать код и понимать, как работает система, пока всё ещё нужно. На собеседовании надо объяснить своё решение, а на работе - разобраться, почему что-то сломалось. Через несколько лет многое изменится, но сейчас без понимания кода далеко не уедешь Поэтому, когда берёшь новую тему, попробуй сначала немного написать руками. Ну спринг писать не надо с нуля, конечно)) Напиши небольшой контроллер, сходи в базу, обработай ошибку. Поменяй условие, посмотри, что произошло. Ошибся - отлично, теперь есть что разбирать. Пару раз сам набрал код, и уже лучше понимаешь, что именно делает нейронка 😎 Я и сам так делаю, когда изучаю что-то новое,а еще помогают конспекты от руки, пользоваться в будущем может и не будешь, но информацию запомнишь гораздо лучше. И еще небольшой лайфхак: некоторые студенты, кстати, рассказывали, что, когда берутся за новую тему, на время отключают автодополнение в IDE Потом юзай нейронку как учителя: попроси объяснить непонятную часть, сравнить решения или подсказать, где искать ошибку. ИИ правда помогает учиться, но он не заменит опыт специалиста, который уже работал с такими задачами.... Так что такого человечка искать всё равно придется, если хочешь кратно ускорить процесс (тут в тему бы поставить рекламу моего курса, но не сегодня) 🤷‍♂️🤷‍♂️🤷‍♂️ Не обязательно каждый раз героически писать всё самому, но если сразу просить агента собрать проект целиком и просто забирать результат, в репозитории будут Spring, Kafka и какая-нибудь архитектура, а понимание, что происходит может и не появиться Получается какой-то мнимый прогрЭсс
1 994
3
Слушайте, а как вы вообще используете ИИ?
2 330
4
Так, а Java вообще учить ещё надо? 🙃 На днях читал отчет Anthropic, как меняется работа разработчика и ближайшие прогнозы по этому поводу, много того, что уже было известно и понятно, но меня привлекла одна интересная деталь: в их внутреннем исследовании инженеры сообщали, что используют ИИ примерно в 60% своей работы, но полностью делегировать могут только 0–20% задач ⌨️ То есть «использую ИИ» ещё не означает «отдал задачу и пошёл заниматься своими делами» Допустим, просим агента сделать создание заказа: сохранить в PostgreSQL и отправить событие в Kafka. Он написал метод, добавил @Transactional, обработал исключения, окей, выглядит очень даже прилично А что произойдёт, если событие уже отправилось, а транзакция в БД откатилась? Если понимаешь, как работают транзакции и взаимодействие сервисов, ты хотя бы знаешь, что здесь проверять. Если нет - перед тобой просто аккуратный код с комментариями, и проблема легко доедет до прода вместе с этими же комментами Поэтому техническая база нужна уже в тот момент, когда ты принимаешь решение: этому коду можно доверять или надо переделывать Причём «пусть нейронка сама проверит» - довольно полезный шаг, но окончательного ответа он не гарантирует. Агент может написать тесты, которые повторяют его же неверное понимание задачи. Всё зелёное, проверили ровно то, что сами придумали А что тогда стоит качать разработчику? 💀 🟣 Умение разбираться в требованиях «Сделай оплату» - огромное количество недосказанностей. Можно ли повторять запрос? Что показываем при таймауте? Как узнаём, списались ли деньги? Кто имеет право вызвать этот метод? Как восстанавливаемся при сбое? Сколько данных у нас будет? Под какую нагрузку проектируем? На эти вопросы придётся ответить, независимо от того, кто будет писать реализацию. Если требования нигде не зафиксированы, агент начнёт заполнять пробелы предположениями. Иногда очень даже убедительными 🟣 Умение разбивать задачу Когда отдаёшь агенту «переделай авторизацию», легко получить и ненужные изменения сразу в двадцати файлах Можно сначала разобрать текущую схему и ограничения, согласовать поведение, потом менять отдельные части и проверять каждую. Так проще заметить, что решение поехало не туда, пока оно ещё не успело поехать во весь проект 🟣 Умение проверять результат Читать diff, понимать запросы к БД, замечать лишний сетевой вызов внутри транзакции, проверять права и поведение при сбоях. А также думать, какие тесты действительно способны сломать решение Например, два одинаковых запроса пришли одновременно, или на тестовых данных всё быстро, а в таблице на проде у нас десять миллионов строк И вот здесь харды снова внезапно очень пригождаются: БД, многопоточка, сетевое взаимодействие. Ну, кто бы мог подумать))) 🤔 Поэтому учиться работать с агентами стоит вместе с разработкой. Давать им контекст, ограничивать задачу, проверять изменения - это тоже навык, который появляется на практике Но если пока не можешь объяснить, как работает получившееся решение, на этом месте полезно остановиться и разобраться: попросить пояснение, пройти сценарий руками, изменить условия, попробовать даже что-то сломать Потому что на вопрос техлида «почему мы здесь сделали именно так?» ответ «Claude предложил» всё ещё такое себе техническое обоснование 🤷‍♂️🤷‍♂️🤷‍♂️
2 380
5
После какой попытки ты решил сдаться? Сегодня хочу навалить мотивации, ну и поделиться личным мнением (которое, может с твоим не совпадать) Я много сейчас общаюсь с ребятами, которые ищут работу и заметил, как у всех формируется один и тот же вывод: «Иногда кажется, что я слабый спец, и зря в принципе сюда полез» Меня напрягает, как незаметно одно превращается в другое: сначала «мне не ответили» → потом «меня никуда не возьмут» → а дальше уже «зачем я здесь» Причём ты можешь даже до технички не дойти, твои знания никто ещё не проверял, а ты уже пересмотрел все жизненные решения 🤷‍♂️🤷‍♂️🤷‍♂️ Снаружи всё у всех одно: «не берут», но начинаешь разбираться - причины разные. Где-то резюме, где-то подготовка или компания вообще передумала нанимать. По одной отписки с отказом ты этого не поймёшь Раньше я и сам ловил себя на том, что воспринимаю собесы как неприятную череду отказов и подготовки перед приятным оффером. «Я же специалист, зачем мне уметь себя продавать, учиться делать резюмешки» и т.д. И когда я видел, что другие люди устраиваются, мои отказы ощущались еще больнее. Поэтому совет «просто фигачь» не то, чтобы помогает, он раздражает и бесит, потому что ты и так херачишь 🔫 Но сколько ещё надо? Никто не говорит А вот с чем я в корне не согласен: что из этого следует, что можно пока ничего не делать Я раньше сам советовал больше ходить на собесы: где-то завалишься, разберёшь вопросы, на следующем ответишь лучше. Сейчас попасть туда сложнее, и рассчитывать, что первые двадцать будут тренировочными - удовольствие дорогое Поэтому, если пока до техничек вообще не доходишь, то начни с резюме и откликов. Покажи их человеку, который сам нанимает разработчиков, а если нет - найди, расскажи: Вот что я умею, вот как об этом написал, вот куда отправляю. Где я мимо попадаю? Это гораздо полезнее, чем от тревоги пойти учить ещё одну технологию А если собес уже назначен - заранее проговори рассказ о своём проекте, попроси кого-то погонять по вопросам. Чтобы не выяснять уже на встрече, что в голове всё было понятно, а вслух получается «ну там этот сервис вызывает тот, можно повторить еще раз вопрос» Как бы количество вакансий от этого не увеличится, но ты хотя бы перестанешь повторять одну и ту же попытку, надеясь на другой результат Тебе может казаться, что «вот там у них» проще и легче. Но тебе кажется. Тяжело везде, просто вероятно ты не видишь недостатков. Чужая полянка всегда кажется зеленее, пока не узнаешь, что на ней тоже насрано. Просто со своей полянки ты этого не видишь Я не знаю, когда конкретно ты получишь оффер, но мне кажется странным заранее списывать себя, пока есть вещи, которые ты ещё даже не попробовал поправить 🤨 Пока у тебя нет того результата, который ты хочешь - это еще не значит, что ты делаешь все неправльно. Большие достижения требуют больших усилий. И чем они больше - тем больше неопределенность и риск, которые ты должен на себя взять Гарантий никаких нет, и это очень сложно. Поэтому многие и останавливаются, именно эта тяжесть и является фильтром, почему многие не доходят Представь, что тебе сказали пробежать марафон (42км), скорее всего ты подготовишься и как-нибудь то пробежишь, да хоть пройдешь пешком, но пройдешь дистанцию. А если тебе скажут просто «беги» и не скажут сколько бежать или когда остановиться? Будет в разы тяжелее, именно эта неопределенность пугает и заставляет нас останавливаться перед тем, чего мы хотим Не сдавайся. Продолжай бороться 🧱
2 453
6
На собесе тебя могут спросить вообще что угодно На скриншоте - комментарий интервьюера под собесом, который я проходил два го
На собесе тебя могут спросить вообще что угодно На скриншоте - комментарий интервьюера под собесом, который я проходил два года назад Если ходите по собесам и не смотрели эту имбу - идите смотрите На тот момент я уже был сеньором, но ради эксперимента сделал пустое резюме без опыта работы, оставил только пет-проект и пошёл собеседоваться в Сбер на джуна. Подробнее про этот эксперимент я писал здесь На собесе меня спрашивали про индексы, транзакции, N+1, pessimistic и optimistic locking, гоняли по SQL и лайвкодингу В комментариях люди писали: «Капец, какие сложные вопросы для джуна» Но есть важный нюанс: вопросы на собесе зависят не только от грейда вакансии Они зависят от конкретной компании, конкретного интервьюера и от того, как ТЫ отвечаешь 🫵 Если интервьюер уже по первым трем-пяти вопросам понимает, что кандидат сильный, какой смысл продолжать спрашивать его по чек-листу для джуна? Конечно, он начинает копать глубже Задает вопросы уровня мидла. Потом сеньора. Потом еще сложнее - просто чтобы найти границу, после которой человек уже начнет сыпаться И ЭТО НОРМАЛЬНО Я сам слышал и наблюдал как человек выходит с собеса и думает «Все, я жидко обосрался. Под конец вообще ни на что не смог ответить» А потом получает оффер Потому что он хорошо ответил на вопросы своего уровня, интервьюер это увидел и просто решил проверить, насколько глубоко можно копнуть. В какой-то момент кандидат перестал справляться, но нужный уровень он уже показал Интервьюеру необязательно услышать идеальные ответы на все вопросы Его задача найти потолок кандидата и сделать у себя в голове засечку: «Вот до этого уровня он понимает». И этого уровня вполне может быть достаточно для оффера Иногда бывает наоборот: интервьюер копает все глубже, а ты продолжаешь отвечать. И в какой-то момент уже он сидит и думает: «Ниуя себе, чел жесткий. Надо брать» Так что не существует железного списка «вопросов на джуна», «вопросов на мидла» и «вопросов на сеньора» 🖕 На джуна тебя могут погонять как мидла. На мидла - как сеньора. На сеньора - как джуна архитектора А могут на позиции с зарплатой 450 тысяч спросить, как внутри работает HashMap. И что теперь говорить: «Это не вопрос на сеньора»? Но вот тут, пожалуйста, не надо делать вывод: «А, ну всё, значит, надо выучить вообще всё. Увидимся на собесах через восемь лет» НЕ НАДО 🤷‍♂️🤷‍♂️🤷‍♂️ Нет магического списка из 100 вопросов, который ты выучишь и гарантированно пройдёшь любой собес. Но область знаний, на которую ты опираешься в ответах, ОГРАНИЧЕНА. Ведь один и тот же механизм можно спросить десятью способами И надо добиваться такой глубины, чтобы ты мог объяснить, как штука работает, привести пример и ответить на следующее «а почему?» 👍 Кароче, задача подготовки вполне конкретная: определить основные темы, разобраться в них до нужной глубины и проверить себя на практике За пределами этой базы всегда найдётся что-то, чего ты не знаешь. Но откладывать собесы до момента, когда спрашивать тебя будет уже не о чем - неэффективное решение, такого момента никогда не настанет
2 364
7
Всю жизнь работаю за компьютером и только месяцев 9 назад научился пользоваться клавиатурой: освоил нормальную десятипальцеву+3
Всю жизнь работаю за компьютером и только месяцев 9 назад научился пользоваться клавиатурой: освоил нормальную десятипальцевую печать вслепую Скорость меня и раньше устраивала: примерно 250 - 300 символов в минуту (но честно хз, я не замерял тогда). Бесило, что постоянно надо смотреть с монитора на клавиатуру и обратно. Голову приходится мотать постоянно, и шея устаёт. Хотелось просто писать, не проверяя каждый раз, где нужная кнопка и туда ли я нажал Печатание настолько базово нужная штука сейчас, что хотелось научиться постоянно делать на автомате Решил позаниматься десятипальцевой печатью, кстати, кому интересно, учился здесь. Очень удобный тренажер, который дает тренироваться по буквам и постепенно открывать больше букв. Сначала тренируешь базвые 6 букв самые частые, а потом постепенно расширяешь и доходишь до самого сложного «ъ» 😵‍💫 Очень непривычно пальцам, особенно бызымянным и мезинцам, потому что ими очень мало работал. В первую неделю скорость упала до 50 символов в минуту 💀 Сидишь, учишься пользоваться компьютером заново))) Но примерно за 3 недели вернулся к прежней скорости, первые месяц-полтора она быстро росла, потом вышла на плато. Сейчас в среднем печатаю около 350, и мне этого хватает На графике видно частоту занятий, я около двух месяцев занимался почти каждый день, а потом перестал потому что дальше особо не было смысла. Щас иногда захожу скорость проверить) Вообще, думаю, что это один из самых полезных повседневных навыков, которые освоил за год. Перестал смотреть на клавиатуру, мотать головой и запинаться в поисках кнопок Думаю, что написать, а пальцы сами разбираются, как. Ну кайф же 😎 Приятнее всего именно ощущение, что печатать стало проще и надо меньше думать о буквах Отдельно радует, что навык поддерживается сам: я каждый день печатаю и заодно его закрепляю. С залом, например, можно забить и растерять результат. А тут, сегодня тяжёлый день, нет ресурса на мизинцы, попечатаю указательными? Нуууу, так не работает Такой compound-эффект мне очень нравится: вложил время в обучение, а дальше каждое сообщение, пост и рабочая задача даются чуть легче Если до сих пор смотрите на клавиатуру, (одним глазком тоже считается) - очень советую освоить слепую печать Первую неделю будет хотеться вернуть всё как было, но у меня уже через три недели скорость восстановилась, а удобство осталось со мной Глобально мне нравится идея таких высоко-рычаговых скиллов. То есть таких, которые на единицу усилия дают тебе непропорционально больше выхлопа 📈 Один из очевидно еще таких высоко-рычаговых навыков - это ложиться спать постоянно вовремя и не поздно. Если ты ложишься спать вовремя, то точно не залипаешь ночью в рилсы, эффективнее решаешь днем рабочие задачи, лучше настроение и состояние, выше уровень самоконтроля, лучше состояние здоровья долгосрочно, меньше риск депрессии Если и вкладывать силы в скиллы, то стараться чтобы они окупались и приносили дивиденды почти всю жизнь. Еще примеры таких скиллов: умение учиться, готовиться к переговорам (собесам и не только) заранее, изучить и подмечать ошибки мышления, уметь регулировать свое состояние и т.д. Усилия потратишь сейчас, а пользоваться результатом будешь ещё много лет
2 890
8
Еще пару часов рабочей недели и можно выдохнуть, а пока, уже по традиции: кидай в комменты, какой мем рассмешил тебя на этой+6
Еще пару часов рабочей недели и можно выдохнуть, а пока, уже по традиции: кидай в комменты, какой мем рассмешил тебя на этой неделе больше всего 👇 А может есть и ситуация интересная из жизни 😉
4 042
9
Мы уже разбирали паттерны, которые появляются, когда в микросервисах кто-то успел потерять события или случайно списать деньг+4
Мы уже разбирали паттерны, которые появляются, когда в микросервисах кто-то успел потерять события или случайно списать деньги дважды 🙃 Но есть ещё 5 ребят, без которых распределённая система тоже довольно быстро превращается в квест «почему вчера работало, а сегодня 502?» 🟣 API Gateway Пока у тебя один сервис, всё просто: фронт знает один адрес и ходит туда Но когда появляются order-service, payment-service и ещё несколько ребят, фронту внезапно нужно знать их адреса, правила авторизации и что делать, если один сервис переехал, тут и нужен API Gateway Клиент ходит в одну точку, а Gateway сам роутит запрос дальше, туда же удобно вынести авторизацию, логирование и т.п 🆗 Плюсы: единая точка для общих инфраструктурных политик и скрытие топологии 🙅‍♂️ Цена: отдельный критичный сервис, если напихать бизнес-логику - получится монолит на входе 🟣 Service Discovery В микросервисах сервисы постоянно появляются, масштабируются, переезжают на другие инстансы. Сегодня у payment-service 2 экземпляра, через час - 5, один из них упал, другой задеплоился с новым IP. А order-service всё ещё должен понимать, куда отправлять запрос Поэтому нужен Service Discovery - телефонная книга сервисов. В варианте с отдельным registry сервисы регистрируют свои адреса, а остальные получают их оттуда Но если приложение работает в k8s, эту задачу обычно берёт на себя сам кубер: сервису даётся постоянное DNS-имя, а CoreDNS помогает найти его адрес. Экземпляры могут появляться, падать и менять IP - другим сервисам не нужно вручную отслеживать эти изменения 🆗 Плюсы: не прописываем IP руками, проще балансировать нагрузку и переживать деплои 🙅‍♂️ Цена: ещё один инфраструктурный слой, адреса могут устаревать, registry тоже надо мониторить 🟣 Retry Если запрос не проходит - попробуем ещё раз, ну логично же. Сеть моргнула, сервис кратко завис и повторный вызов действительно может спасти ситуацию, но если сервис уже лежит, а 1000 клиентов делает по 3 повтора, retry превращается в «давайте добьём его окончательно» Поэтому этот паттерн надо использовать для коротких сбоев, а не как способ бесконечно верить в лучшее. Нормальный retry - это ограниченное число попыток, timeout, exponential backoff и jitter, я кстати подробно о нем рассказывал в этом посте ❗️И ретраить желательно идемпотентные операции, иначе можно повторно списать деньги 🆗 Плюсы: система переживает случайные флапы без ошибки для клиента ❌ Цена: лишняя нагрузка и более долгий ответ пользователю 🟣 Rate Limiting Есть сервис, который может обработать 1 000 запросов в секунду. И тут приходит один очень мотивированный клиент, бот или просто фронт с багом и начинает присылать 20 000 запросов На публичном API и тяжёлых операциях вроде логина или построения отчётов это вопрос не «если», а «когда это случится». И тогда rate limiting говорит: Больше N запросов за период не принимаем Ограничивать эти запросы можно по IP, пользователю, API key или конкретному endpoint’у. Кстати, в моём курсе по Redis на YouTube мы пишем свой rate limiter ✅ Плюсы: один клиент не съест все ресурсы, нагрузка становится предсказуемее ❌ Цена: нужно решить, кого ограничивать, можно случайно задеть нормального пользователя 🟣 Bulkhead Название пришло из кораблей, где его делят на герметичные отсеки: если один затопило, то весь корабль не обязан идти ко дну В сервисе то же самое, например,order-service ходит в платёжку, доставку и рекомендации→ рекомендации начали отвечать по 20 секунд и забили общий пул потоков→ в итоге перестали создаваться заказы Когда один сервис зависит сразу от нескольких внешних систем, а падение одной не должно валить остальные, нужен Bulkhead. Он выделяет каждой зависимости отдельный пул потоков, очередь или лимит запросов 🆗 Плюсы: частичная авария не превращается в полную 🙅‍♂️ Цена: больше ресурсов и сложнее настройка, если неправильно нарезать пулы - можно сделать новые бутылочные горлышки Все эти паттерны появляются, когда система уже успела сделать что-то ну очень неприятное. Кстати, я готовлю большой материал по микросервисам, напиши, какие вопросы по ним возникают #хардовая_польза
3 790
10
Нужна ваша помощь 😐 В общем, я сейчас планирую 2 эфира сделать в сентябре - навалить полезностей, пообщаться с вами на них и презентовать курс по Java Backend А то последний раз я это делал в декабре, а сейчас у меня несколько раз в неделю спрашивают "Паш, а у тебя есть курс какой-то для начинающих/для ребят на старом стеке?" И по планам сегодня я хотел сделать пост про то как должна выглядеть система изучения бэкенда целиком, что в итоге шаг за шагом изучать надо и так далее Я сел писать пост, понял что не влезает по символам Потом начал писать статью, но быстро понял что она будет скучная, большая и при прочтении по-любому вопросы будут, а задать-то их и некому 👍 Решил в итоге как раз один из эфиров сделать сделать на тему степ-бай-степ плана действий Сел уже с ИИшкой накидывать варианты тем и наполнения, но она по пути подкинула хорошую мысль - спросить у вас что вы сами хотите от меня узнать Напишите в комментах про что хотелось бы от меня послушать в контексте "У меня ещё нет комм. опыта" и "У меня есть комм. опыт, но он не сильно релевантен рынку" Самые залайканные темы/вопросы постараюсь включить в презу к эфиру 🤝🤝
4 893
11
Я очень много работаю с нейронками. Но есть вещи, которые я им не доверяю Код написать, ошибку найти, инфу поресерчить, объяснить какой-то фреймворк, варианты реализации предложить - да, да, да и ещё раз ДА. Кому интересно - чаще юзаю Codex, он по моим ощущениям для кода и других задач и токенов меньше ест Ещё, разумеется, для обучения ИИ я тоже использую. Но есть ООООЧЕНЬ важная граница 🙅‍♂️ Если мне нужна конкретная информация по какой-то теме, то нейронки топ НО. ОЧЕНЬ ВАЖНОЕ НО 🔽 Если мне нужен реальный опыт рынка, то я не буду доверять нейронке, ибо с ней возникает парадокс: Ты не знаешь, что и как тебе нужно учить → спрашиваешь нейронку → она выдаёт красивый роадмап → а ты даже не можешь проверить, что там реально нужно, что лишнее, а чего вообще не хватает То же самое с задачами: Нейронка выдаёт тебе 3 убедительных варианта решения. А как собсна говоря из них выбрать-то? • Если ты уже шаришь, то да, ты отсеешь лишнее и выберешь нормальный вариант • Если не шаришь, тогда все три выглядят одинаково "правильными" Причём нейронка ещё и любит соглашаться 👁👁 Предлагаешь решение А, она пишет «да, отличный подход, хотите я помогу...» Через минуту предлагаешь противоположное решение Б - «о, это решение, даже лучше, с ним не возникает проблемы...» А как собсна говоря из них выбрать-то? 🤔 Чтобы понять, какой вариант лучше (а тем более для реального проекта), тебе уже нужен тот самый опыт, которого у тебя пока нет - тот самый парадокс 🤷‍♂️🤷‍♂️🤷‍♂️ Отдельно смешно пытаться через ИИ получить себе «продакшн-опыт» Нейронка может придумать тебе систему, кейс и задачи. Но реальный продакшн, реальные собесы и то, как всё устроено в конкретных компаниях, она тебе НЕ расскажет Плюс есть ещё одна ловушка из недавнего поста: прочитал объяснение → вроде понял → руками не сделал → на самом деле не научился Кароче, гоняйте лимиты для обучения осознанно, пацаны и дамы, вы на собесах ещё нужны 🐺☝️
4 206
12
Иллюзия понимания. Мне нередко в комментах на ютубе пишут что-то в духе "Паша, ну ты ваще слоняра, я вот посмотрел видос и всё понял" И хоть такое и приятно читать как "блоггеру", читать это как учителю-ментору-наставнику мне не очень нравится, и настало время пояснить почему 👇 Очень часто, пока мы потребляем какой-то контент, он кажется нам ну ооочень понятным: • Смотришь видос, киваешь головой, мысленно думаешь "Во-во я бы так же написал" • Читаешь статью, тупишь на абзаце, 3 раза его перечитываешь и ловишь то самое "Ааааа, дошло" • Кидаешь в нейронку запрос и получаешь решение с мыслью "Ну да-да я бы там +- так же начал а там уже решил бы потом че делать" Так вот - всё это ни что иное как иллюзия "я понял" и лёгкий дофамин на уровне просмотра рилсов По определению "обучение" - это смена поведения Но после того как ты просто посмотрел видос, не закрепив ничего, то что ты узнал на самом деле? Изменится ли после этого хоть как-то твое поведение? Начнешь ли ты лучше проходить собесы или решать лучше технические задачи? 🤔 Если нет, то ты просто посмотрел приятный видосик и все Потому что оооочень часто после того как ты "всё понял" и решил сам руками написать код внезапно оказывается, что ты уже и забыл что да как там делается 😧 И дело не в том, что у тебя проблемы с памятью, а в том, что ты сам не дошёл до решения и сам не посидел над сложной задачкой Ну а из-за таких ситуаций у тебя в будущем падает что? Правильно, прод уверенность в своих навыках 🙁 Потому что настоящая уверенность появляется не от просмотренных часов, а когда ты сам принимаешь технические решения и сам пишешь код Ещё сильнее уверенность растёт когда ты на свои решения получаешь НОРМАЛЬНУЮ обратную связь, (а не тот нейрослоп, которым вы заменяете ментора (а то я про вас всё знаю и всё вижу!!!) А вывод у поста простой: первый шаг на пути к вашей уверенности в своих знаниях - это писать код, а не смотреть на него Второй шаг - найти откуда брать нормальную обратку. Неважно курс это, разовые консультации или ещё какой формат Перестаньте относиться к ИИшкам как к идеальному решению всех задач. Они могут выдать вам кучу решений, но так и не выбрать за вас правильное...
4 833
13
Памятка по подготовке к собесу
Памятка по подготовке к собесу
4 430
14
Раскрываю секреты тем, у кого ещё нет коммерческого опыта 🤫 В общем, у вас же главных переживаний по сути две штуки: 1. Что и до какой глубины учить, чтобы наконец-то перестать бесконечно обучаться 2. Как в итоге опыт свой показывать и конкурировать с ребятами с опытом? Ответ на первый вопрос будет чуть позже, давайте пока ко второму. Если коротко, то поймите, что Стаж != рост рыночной ценности и знаю хардов Можно три года получать коммерческий опыт, но всё это время делать клепать круды, сидеть на Java EE, Jmix, Cuba, legacy и за всё это время вообще не пощупать современного backend-стека 👍 Тогда внутри своей компании ты будешь называться миддлом, а потом выходить на рынок труда, смотреть вакансии и внезапно осознавать, что ты даже на джуна далеко не везде проходишь Поэтому, повторюсь, понятие "middle-разработчик" достаточно размытое, и говоря "Я хочу стать миддлом" вы сначала сами определитесь что это для вас значит: • работать на актуальном стеке? • получать нормальную middle зарплату 200к+? • просто "лычку миддла" иметь? Ну а ребята, у которых уже есть реальный опыт, дайте в комментах советов тем, кто только начинает - за что реально можно не париться, какие лично вы знаете подводные камни ну и так далее, давайте интерактивчик устроим 👌
3 955
15
Хотите совет от T-Fest'a? Посмотрите видос, а потом почитайте скрытый текст: – Паш, как новичку начать усерднее учиться, где
Хотите совет от T-Fest'a? Посмотрите видос, а потом почитайте скрытый текст: – Паш, как новичку начать усерднее учиться, где найти мотивацию? – Никак, удали нахуй IntelliJ
3 810
16
Когда я впервые почувствовал себя НАСТОЯЩИМ разработчиком? После вчерашнего поста захотелось самому порефлексировать какие я
Когда я впервые почувствовал себя НАСТОЯЩИМ разработчиком? После вчерашнего поста захотелось самому порефлексировать какие я для себя выделял критерии "готовности" иии.... не вспомнил 🙄 Менторство в те времена не было так развито, не было столько возможностей у работающих ребят, умеющих обучать, запросить какую-то обратную связь Так что я просто почитал что хотят в вакансиях джуна, загриндил все темы до уровня "ну вроде знаю" и пошел проверять эту мысль об рынок, потому что тогда только реальность давала понимание готов ли я Вот кстати, пост 2хгодовалой давности про мой путь - t.me/S0R0KlN/143 Да, ясное дело рынок тогда был проще и можно было быстрее получить собесы и понять где твои пробелы, но я ещё раз повторю своё мнение по этому поводу: КАКАЯ-НАХЕР-РАЗНИЦА-КАКОЙ-СЕЙЧАС-РЫНОК???? Вот те, кто сидит в позиции "Станет рынок получше, тогда и начну фигачить, а то щас сложно" - поймите, что таких 90% рынка Когда рынку станет легче у вас мало того что конкуренция вырастет в разы, вы ещё и будете конкурировать с теми кто всё это время фигачил (и это я молчу про тех кто не ждёт, фигачит и получает работу СЕЙЧАС - смотрите скрин к посту) Да, сложно. Но работа и вакансии ЕСТЬ. Вам какая разница сколько их? Идите и эти старайтесь забрать Вы бы знали СКОЛЬКО мне приходит рекламных предложений о конференциях/стажка/oneday офферов и прочего... Кароче, выше нос, господа и дамы, всё у вас будет и ничего вам за это не будет😇
3 876
17
У меня аудитория воров каких-то собралась, ей-богу Такой была моя первая мысль, когда я прочитал все анкеты, которые вы назаполняли неделю назад Потому что так ФИЛИГРАННО воровать у себя время, деньги и реализацию - это реально ещё уметь надо Начнём с главного: «я готов к собесам» и «я уже middle-разработчик» - эти вот критерии сейчас здесь, с нами, в одной комнате? Вы бы знали, НАСКОЛЬКО разнятся ваши представления о готовности к собеседованиям и уровне middle. Причём и те, и другие довольно далеки от реальности 🙄 Ребята без опыта в основном упираются в «я пока не готов выходить на рынок». Но за этим обычно скрывается «я вообще не понимаю, до какой глубины учить технологии» А ещё глубже там сидит: «Я боюсь, что вложил кучу сил, выйду на рынок - и окажется, что этого всё ещё мало, а я вообще никому не нужен» У ребят с опытом чуть веселее: они уже прошли первые два этапа и сразу понимают, что никому не нужны:)))) Но по сути и у тех, и у других главная проблема скорее ПСИХОЛОГИЧЕСКАЯ, а не хардовая Потому что роадмапов о том, что и до какой глубины учить, на YouTube уже гора. Саботаж и откладывание включаются не из-за отсутствия информации, а ровно на уровне: «Я боюсь выйти и оказаться лохом» Так вот, дорогие мои подписчики, запомните простую мысль: лохом вы будете, если продолжите откладывать РЕАЛЬНО НУЖНЫЕ действия Выйти на рынок, получить несколько отказов, понять, чего именно вам не хватает для оффера или роста ЗП, и пойти закрывать конкретные дыры в знаниях - это НОР-МАЛЬ-НО 🤷‍♂️🤷‍♂️🤷‍♂️👍 Отказ хотя бы даёт список тем, которые надо повторить, бесконечная дро подготовка без выхода на рынок не даёт вообще ничего
4 093
18
👩🏻‍💼: «Остались какие-нибудь вопросы к нам?» 😁: «Да не, вроде всё понятно» - стандартный конец очередных собесов На собеседовании все переживают, о чем спросят их, а меня бы больше волновало, куда я вообще устраиваюсь 😎 Допустим, техничку прошли, по хардам всё ок, зарплата устраивает А через месяц оказывается, что «гибкие процессы» - это когда требования меняются три раза за спринт, «быстрые релизы» - пятничный деплой с мыслями «полетит ли всё к чертям или нет» , а «микросервисная архитектура» - 48 сервисов, которые все боятся трогать лишний раз Тут я напомню, что собес - это интервью в обе стороны 🙃 И последние 10 минут я бы потратил не на вопрос про печеньки в офисе, а попробовал понять, что происходит в команде на самом деле, например: 🟣 Как проходит деплой и как часто релизитесь? Так ты поймешь, есть ли нормальный CI/CD или релиз до сих пор выглядит как танцы с бубном 🟣 Что происходит, если ночью падает прод? Кто дежурит, есть ли нормальные алерты и процессы или разработчика просто будят звонком со словами «ВСЁ ЛЕЖИТ»? 🟣 Как проходит code review? Здесь больше интересно не его наличие, а сколько обычно ждут его и что происходит, если два разработчика не согласны по решению 🟣 Сколько в проекте легаси и что с ним делают? Легаси есть почти везде, это нормально, а вот ответ «мы его не трогаем, оно работает» уже дает пищу для размышлений, ахвах 🟣 Как принимаются архитектурные решения? Один техлид спускает всё сверху или разработчики реально могут предлагать и обсуждать решения 🟣 Наверное, мой любимый: Почему открылась эта вакансия? Потому что ответы «команда растет» и «предыдущий разработчик сбежал через два месяца» - это всё-таки две немного разные вакансии 🤷‍♂️🤷‍♂️🤷‍♂️ А после него добивающий вопрос, который я бы советовал задавать почти всегда: «А что тебе самому НЕ нравится в этой команде или компании?» Он немного провокационный, потому что весь собес тебе обычно рассказывают, какая классная команда, интересные задачи, современный стек и какие все молодцы. А тут человека напрямую просят назвать минусы 😁 Но самое интересное, люди на такое обычно отвечают довольно честно: где-то ревью может висеть вечность, постоянно меняются требования или не нравятся некоторые процессы внутри. 🤨 Само наличие минусов - это нормально. Важнее понять, готов ли конкретно ты с ними жить Я бы вообще не относился к этим вопросам как к необязательным пяти минутам в конце собеса. Если реально выбираешь место, где собираешься провести следующие несколько лет, то ты буквально заинтересован узнать о нем не меньше, чем компания заинтересована узнать о тебе Если не все вопросы заданы, попроси еще одну встречу с командой, даже если оффер уже лежит на руках. Вполне можно сказать: «Хочу еще раз созвониться с командой и подробнее поговорить про проект и процессы» Адекватная команда вряд ли удивится тому, что кандидат хочет понять, куда идет. Тем более хорошие вопросы работают еще и в обратную сторону, когда кандидат спрашивает не только про ДМС и график, а начинает копать в то, как устроена инфраструктура или почему приняли конкретные архитектурные решения, это тоже кое-что говорит о его уровне и заинтересованности Короче, не превращай собеседование в экзамен, где единственная задача - понравиться человеку напротив. Если всё пройдет хорошо, тебе потом с этими людьми 40 часов в неделю работать, поэтому покопаться в них стоит не меньше, чем копались они Задавал ли ты подобные вопросы на собесах? Напиши в комментариях 👀
4 539
19
ОТДАМ КУРС ЗА 3.000 РУБЛЕЙ ЗА ТО, ЧТО ВЫ ПОЖАЛУЕТЕСЬ НА СВОЮ ЖИЗНЬ 🙄 Итак, я снова хочу немного покопаться в головах Java-разработчиков Мне хочется понять не абстрактное «что сейчас нужно рынку», а что у вас реально в жизни и работе происходит: ❓ какие рабочие задачи дают и чего вам не хватает по хардам ❓ чего боитесь на собесах или новой работе ❓ почему не получается расти так быстро, как хотелось бы Сразу уточню - мне нужны ребята ВСЕХ уровней: от тех, кто пока только учится и пытается получить первый оффер, до работающих Middle+ Формат простой: созваниваемся на 40–60 минут и просто разговариваем о вашем опыте ⚡ С частью ребят созвонюсь лично я, с остальными - моя команда 🎁 Каждому, кто пройдёт созвон со мной/командой, я бесплатно отдам курс по лайвкодингу, который обычно стоит 3.000₽ Как попасть на звонок? Нууууу, в прошлый раз я просто написал «пишите кодовое слово Кастдев в личку» и получил 30 желающих примерно за час В итоге я потом несколько часов разбирал всех желающих и мягко говоря заколебался 😡 Поэтому сейчас сделали этот процесс нормально - перед тем как мы созвонимся, заполните, пожалуйста короткую анкету (буквально 2–3 минуты): 👉 forms.gle/kGPq9uS7JXVpgaYG9 Там несколько вопросов про опыт, грейд, цели и текущие затыки Потом я и команда выберем людей под разные ситуации и напишем вам в Telegram, чтобы договориться о звонке Заполнить анкету → forms.gle/kGPq9uS7JXVpgaYG9 P.S. А если вы мидл/сеньор и вам не актуален лайфходинг, после звонка заберете просто охеренный гайд по паттернам, которого еще нет в открытом доступе 🤫
4 501
20
Предлагаем работу Java-разработчиком, разовая выплата от 2.000.000 рублей Не штурм!!!
Предлагаем работу Java-разработчиком, разовая выплата от 2.000.000 рублей Не штурм!!!
3 937