Ты не станешь программистом, если после 150 задач не понял ЭТО…
ฝัง
- เผยแพร่เมื่อ 1 ส.ค. 2024
- 👉 Присоединяйся к сообществу "Клевер": vk.cc/cxlFLU
❗️ Для регистрации в сообществе надо войти на boosty и нажать "подписаться". Не забудьте привязать свой аккаунт телеграмм к boosty в настройках boosty ❗️
➡️ Приходи в мою школу программирования. Оплата после трудоустройства! kata.academy
✅ Подписывайся на личный телеграмм канал: t.me/+-SOkOGemHEE1NTdi
Почти каждый начинающий (и не только) программист, который сталкивался с вопросом: "А как устроиться на работу в Х компанию?", получал ответ, что ему всего лишь нужно разобраться с алгоритмами, структурами данных и порешать 100-500 задачек на LEETCODE. Найдутся и те, кто ответит, что это - бесполезная трата времени. В этом видео я расскажу, насколько LEETCODE действительно полезен и что поможет вам в прохождении собесов и развитии карьеры.
⌚ ТАЙМ-КОДЫ
0:00 - Вступление
0:28 - Что такое LEETCODE и другие тренеровки по алгоритмическим задачам?
03:31 - Откуда пошла мода на алгоритмы?
10:13 - Что нужно работодателю?
12:21 - Как же тогда использовать тренеровки по алгоритмическим задачам?
14:40 - Как решение задач на Leetcode влияет на прохождение собеседования?
15:22 - А что тогда может помочь в прохождении технического собеса?
16:42 - Заключительные мысли
Для тех кому интересно, моя школа программирования с оплатой после трудоустройства - kata.academy
А реально сделать ии в домашних условиях чтобы он сам регестрировался на фриланс биржах, общался с клиентами, выполнял заказы? Или это наивность?
@@user-nc1uj5jr7s пока что, маловероятно
Главный посыл - во всем нужно знать меру. :) Но всякие там литкоды это тренировка для ума, полезно когда начинаешь изучать ЯП - набить руку, поизучать методы решения типовых задача, бест практики, интересные способы решения, подходы и тд, но это все хорошо когда есть свободное время, а не когда жопа подгорает и нужно куда то устраиваться.
Я хз чем ты слушал.
Он прямо сказал что литкод для устройства не нужен, если ты только постоянно не получаешь на собесе
3:31 - ложить болт на производитеность, оправдываясь "ну у ползователей и так мощные устройства. Зачем нам париться?" - крайне порочная практика. Из-за неё обыкновенные сайты жиреют и работают всё медленнее. Что даёт очень гадкий опыт для пользователей. Тут я частично согласен с адептами производительности. Быстрыми сайтам просто приятно пользоваться. А медленные и неповоротливые хочется закрыть и больше никогда не открывать.
В идеале лучше придерживаться баланса между производтеностью железа и продуктивностью программиста. Перекос в продуктивность программистов (с ущербом для производительности) так же плох, как и перекос в производитеность железа (с ущербом для продуктивности).
Но спасибо за освещение вопроса с точки зрения бизнеса. Это тоже важно.
Спасибо за Ваш труд! Коммент в поддержку канала.
Герман, ты как всегда в кон. Мотивируешь по полной.Так держать.
Клевер ТОП) Не думал, что возможно такое общение в сообществе, помогают, подсказывают и поддерживают) Круто!
очень рад, что нравится)
Спасибо, очень полезно. Согласен с автором.
По поводу литкода согласен,но кого первее на работу возьмут: нулевого чела с пустым гитхабом, или нулевого чела с несколькими пет проектами,которыми уже пользуются клиенты?)
Вопрос на засыпку)
Герман, спасибо за дельные советы. Это реально работает.
Почему большая часть современных игр на выходе тормозит на мощном железе:
Герман, ты молодец. Спасибо тебе за все. Привет из Кореи.
Эффективные алгоритмы актуальны и сейчас, и не только в однокристалках/автоэлектронике/космосе/слаботочке/IoT и т.д. На многопоточных системах тоже актуальна оптимизация. Только вот оптимизация это не вопрос недель, а вопрос одной очередной задачи - полдня-день.
И это не должно мешать быстрой выкатке релизов
Герман, добрый день. Большое спасибо за видео. Такой вопрос:
У некоторых других школ, преподающих фронтенд, есть мидл-фронтенд курсы. Там в целом добавляют тс, ртк, ртк квери ну и +- по-разному.
Почему в ката академии нет курса мидл?
Нет смысла никакого и эффективнее после курса джуна идти на работу?
Либо другие причины типа дорогой будет курс, спроса не будет?
У нас выпускники устраиваются, как правило на мидл позиции. У нас никогда не было курсов для джунов в принципе, поэтому на сайте и нет этого разделения :)
Понял, спасибо
Я решал задачки на кодварс чтобы задрочить методы работы с массивами, объектами и тд. Но большей частью было просто интересно. И ещё смотрел как другие решают ту же задачку, перенимая лучшие практики. Поначалу очень даже полезно.
Какая сейчас интересная мода на кликбейтные видосы с названием - Ты не станешь программистом, потому, что, если и т.д. )
Потому что типичный инфоцыган с якобы "уникальным полезным контентом".
любишь много просмотров на видео люби кликбейты фигачить, механика ютуба )
И отдельный вопрос, почему в Кате нет курса по сишарп бекенд разработке?
Не будет спроса на него? Тяжелее выпускникам будет найти работу?
Пока что, нам кажется, что это направление менее дефицитно с точки зрения рынко труда, чем те, что есть в школе. Это не значит, что не получится устроиться, это значит, что мы не хотим на него "ставить свои деньги"
ХЗ, у меня на 90% собсесов спрашивали задачки с литкода на лайвкодинге
В целом согласен, но если вы не будете думать об оптимизации даже при написании фронтенда на популярном React, то вы (и ваши клиенты) это сразу заметят, потому что ваше приложение будет подтормаживать на любых телефонах, а страница совершать ненужные перерисовки. Но обычно эта проблема решается с опытом использования самого React, а не решением задачек, они тут не особо помогают.
в итоге кругом одни говнокодеры - а приложения жрут память как не в себя
Мне мой опенсорс (тестовый фреймворк в те времена, когда бесплатных было всего ничего) очень помог - и прокачаться в кодинге, и в юнит-тестах (для ускорения выкатки версий перешёл на низкоуровневые тесты, для чего навнедрял и IoC, и dynamic proxy с AOP), и какую-то известность со звёздами на гитхабе. Лет на несколько получил буст, может лет на пять.
Вендорские экзамы тоже хороши (можно учить абсолютно бесплатно по книжкам и курсам из пиратского интернета), тоже буст дают на несколько лет.
И то, и другое помогает на собесах и в практике, и в понимании, как что писать и собирать
Лично я решал задачи на leetcode, чтобы отработать базовые структуры и алгоритмы. Хотя до этого у меня уже было полгода опыта работы.
17:25 - Собеседрования
И ведь реально, что даже если учишься сам, то походу обучения придумывать реальные задачки и их решать.
Дошёл до свитч, например, ну и придумай что-нибудь по этому поводу. И материал лучше усвоится и будем более понятно, как этот можно использовать и скорее всего и используется.
Я так делаю.
Мне кодварс и типа того, не зашёл.
Не нравится решать непонятные абстрактные задачи.
Еще и тупым себя ощущаешь)
Ладно, конкретно эта реклама клевера, на 11:20 была крутой, вступаю
In Software Engineering, besides programming paradigms and methodologies, I would also highlight Worlds...
In the context of software engineering, I discuss an interesting question with my students - what is primary, the Hole or the Bagel body (the algorithm or the code)? Does the Hole generate the Bagel, or does the Bagel body create the Hole, or did the Hole exist before the Bagel body?
After that, we move on to discussing two Worlds of software engineering: Algorithm-centric and Code-centric, similar to our understanding of whether the Sun revolves around the Earth or vice versa, the Earth revolves around the Sun.
It's very interesting to listen to their reasoning on this topic. In v-agent oriented programming (VAOP), Finite State Machine Programming, and model-driven engineering, we support the Algorithm-centric world with our methodologies, while for many, the Sun continues to revolve around the Earth, and there are no other options. For example, read what representatives of the Code-centric software world write: "The code is the algorithm. The code implements the algorithm. Therefore, the code documents the algorithm automatically."
Полностью согласен) всегда всем говорил, что алгоритмы были актуальны в те времена, когда дум 2 скидывали на 26 дискет. Сейчас гораздо важнее тратить время на реальное написание кода, даже пет-проекта, чем на решение этих, оторванных от реальности, задач с литкода.
Leetcode doesn't have anything in common with real IT job 😊
Developers solve different business logics and problems and algorythmical tasks is so rare as the snow in Sahara.
Yes, of course if you know how to solve certain algorythms is a plus but in real world unfortunately you'll need it in very, very rare cases and if you do not know how to solve it, everything is in public access and for byte sake, you can ask AI for it.
Nice video mate!
But for salary beginning from 8k-10k$ monthly it's necessary.
Если вы хотите получать действительно хорошие деньги, то вам придется изучать алгоритмы и решать хренову тучу задачек )))
прикольная конопля сзади, красивая )
Единственое место, гдя я сталкивался с жесткими ограничениями по памяти в моей практике это програмирование микроконтролеров
👉 Присоединяйся к сообществу "Клевер": vk.cc/cxlFLU
❗ Для регистрации в сообществе надо войти на boosty и нажать "подписаться". Не забудьте привязать свой аккаунт телеграмм к boosty в настройках boosty ❗
👉 Подписывайся на личный телеграмм канал: t.me/+-SOkOGemHEE1NTdi
Ну да сейчас половина работодателей требуют подтверждение опыта
Очень ценная информация. Но поймут ее "не только лишь все".
Герман топи!
Если Герман выпускает 1500 в год и еще всякие курсы выпустили программистов, то это что произойдет с рынком через год ? Мне кажется работы просто не будет😱😱😱что еще заметил это что зарплаты упали. Ну и еще. И последнего так то что начали требовать выписки из трудовой и но ним смотреть твой опыт.
> Мне кажется работы просто не будет
И есть, и будет. Но никогда больше не будет той халявы, что была в нулевые, когда школоло с минимальным навыком "собрать формочку из конструктора" проходил отбор на работу, "остальному научим". Сейчас уровень джуниора -- это нехилый такой миддл из нулевых, и даже в них ещё копаются, перебирая. И работать он будет именно как джун, а то и как трейни, с той самой зарплатой. А хочешь "доллары" -- придётся прокачаться на новую качественную ступень.
У наших выпускников в Ката полёт нормальный, как у остальных - хз. Под новые реалии рынка гибко адаптируемся)
Герман, как всегда Красавчик в подаче информации. Судя по возникшему кольцу на пальце за последний месяц, смею предположить и поздравить с знаменательным событием!
Да, спасибо) Писал в тг об этом, даже фотку выкладывал)
Ненулевая вероятность, что через пару лет ты ему будешь сочувствовать
Да какой год-два на кубер и мелкосервисы? Берёшь, идёшь на какие-нибудь вебинары, отуса там, скиллбокса, просто ютьюб, выбираешь мелкосервис на, скажем, питоне, или на го, пишешь его с экрана за полтора часа - готово. Идёшь на другой вебинар, пишешь оттуда мелкосервис на другом, третьем стеке. Они гарантированно работают, если в коде не накосячил, но обычно можно пересмотреть, если набором не владеешь, или пацзы делать, или сдаться и посмотреть в прилагаемый к видосу исходный код.
Потом всё это в докер и кубер, да, тут подольше, пара дней может, тоже по видосам или по статьям - но типовые простенькие мелкосервисы из вебинаров должны взлететь на ура.
А после этого уже можно популировать контент мелкосервисов своим пет-хозяйством, выкидывать вебинарный код, наговнякивать свой код.
Год-два, наверное, это про химика или технолого из какого-то другого видоса, с 8 калссами образования, так первый год уйдёт на понимание работы переменных и простейшие конструкции языка
Абсолютно мои мысли
А я дополню,что на лидкод, в 99% решаются методом тыка, да да,просто это связано что мы так устроены,что с начало мы пишем конструкцию ,а потом если она не работает,начинаем методом тыка ее дорабатывать )))
Я из-за этого метода заваливаю себесы, потому что они хотят чтобы я решил задачу за 15 минут, а мне нужно 30-40 минут, чтобы дотыкать до правильного решения.
@@UserSo4reUsu75ry А что поделать,мало того,на работе будет похожая ситуация))
лучшее название было б 150 дней если ты не понял,что ты не станешь программистом
14:15 в моем городе всего две вананчии лол, а на удаленку джунов брать не хотят. 14:37 я заваливаю собеседования как раз из-за алгоритмов, которые я решаю медленно, но нарешивание задач мне никак не помогает решать их быстрее, я всё равно решаю их медленно
тогда тебе в Кату, сделаем так, чтобы брали на работу)
если вы хотите в MAANG, то обязательно придется гайс)
на собесах спрашивают чтоб узнать человек обладает алго. мышлением или нет, человек у которого есть правильное мышление ему разницы не будет на чем писать
очень важное "если" :)
Стоит ли влетать в IT если ты не любишь математику со школьной скамьи тебе не нравится решать задачи. Теорию я понимаю, но когда дело доходит до каких-то практических задач то возникают сложности. Если задача лёгкая то это ещё нормально я могу её решить легко и как бы душа поет и радуется, но если задача будет посложнее то начинается несколько часовое копание и просто опускаются руки. Поэтому возникает иногда вопрос о том стоит ли мне вообще идти дальше.
Изучаю джаву, остановился на теме массивов. И просто застрял и то ли от сложности задач то ли от того что мне все это просто не нравится, в голову лезут всякие такие мысли
точно стоит, но суть работы программиста как раз в том, чтобы биться головой об стену и стена в итоге "рухнула"
Герман это просто идол в мире программирования
Ну и в чем он не прав?
- "Сервер присылает только данные которые клиент отрисовывает"
Тем временем реакт форсит SSR, RSC, выходят всякие HTMX, Astro, Next и прочее.
Речь про подавляющее большинство задач же)
Так подавляющее количество проектов и берут сейчас стек с бэковой частью. Мода такая. Ну кому-то без seo никак.
Поинт в том, что кажется вы не совсем в курсе как дела обстоят
попал на работку без лайвкода, но мне повезло за три собеса получить офер
Сколько опыта и сколько платить будут?
@@unanimous8510 3.2 года опыта 255 платят
12:00 "если ты, конкретно ты, ходишь по собеседованиям, на которых у тебя конкретно сейчас постоянно встречается лайвкодинг, то самое время зайти..." ЫГЫГЫГЫ, сэр))) И прибежать потом обратно на проваленное собеседование, "а я вот нагуглил/выучил решение, давайте ещё раз"? Это в каком мультике так? Знания нужно иметь ДО того как они понадобятся. Но это должно быть не энциклопедическое "я назубрил 100 вариантов красивых решений вот этого и 50 вариантнов красивых решений вот того... ой... а вот такого там нам не давали...", это проигрышный метод, а ПОНИМАНИЕ СУТИ, "КАК ЭТО РАБОТАЕТ". Для чего нужна практика по реальным потребностям, а не "задачки про шахматы", высосанные из, допустим, пальца.
я посчитал: если они выпустили 1500 учеников за 2023 год, то это примерно 25-30 лимонов за год для компании
И зачем ты это считал? Что заработала кампания это дело самой кампании. В первую очередь это бизнес! Тут нужно смотреть со стороны человека, который работал на заводе за 60 тыс. , а после курсов и приложенных усилий сменил работу с зарплатой от 100 к
И за 100к никто не работает сейчас, все кратно выше устраиваются
@@user-du8fh8fi1l а может надо смотреть статистику кол-ва трудоустроенных учеников из прошлых выходцев курсов, процентное соотношение, стоит ли этот курс этих денег.
ты плохо посчитал, на 1500 выпускников сумма в разы больше) Не забывай, что у нас команда 150+ человек и все хотят кушать.
фраза "на реальной работе не так важно..." -- бляяя, ну вы достали, вы же понимаете, что разные бывают реальные работы? Задачи для того и нужны, чтобы абстрактно мыслить, и любые задачи раскладывать на модели и алгоритмы.
в процессе просмотра - что-то думаю инфоцыганщиной попахивать стало, а потом прочитал описание канала )))
так нахер проект, пошёл устраиваться)))))))))
всему своё время) Если ты в ката, то следуй инструкциям)
Как-то не убедительно…
Ну да, еще бы до собеса дойти, а то только один игнор пока.. 😐
тогда тебе в Кату, сделаем так, чтобы брали на работу)
Бред
Ох уж я из их за таких как ты намучился с говнокодо. Люди не понимают что сдвиг битов вместо деления на 2 это не тоже самое что засрать всю кодовую базу выполняя все на главном потоке. Джуны тебя дословно понимают
обращайся)
Могу сдвинуть влево, могу сдвинуть вправо)
превью кринжовое конечно
Очень не согласен насчет кодварса. А как новичок должен научиться программировать? Он же вообще не будет уметь программировать. И за год не научится. Скорее загубит карьеру или будет развиваться 5-7 лет до мидла. Автор или имел школьный/универский бекграунд или где-то ещё набил руку на таких задач. Автор, просто пойми, я подтягиваю друзей программистов и они решают школьный учебник, т.к. кодварс для них сложен. И у них мозг взрывается от цикла в цикле, от массива в массиве. На кодварс надо прорешать задач, штук 500 хотя бы. Или если вы кату 5-6 решаете в среднем за 20-40 минут, то нормально, для джуна достаточно. Иначе, вы будете пару массивов из базы данных в циклах совмещать пол дня.
Что же касается уже не джуновского уровня и не простых задач, типа поиска, сортировки, фильтрации, цикла в цикле в цикле, а уже всякие обходы деревьев, стеки и более сложные, как раз то, что в литкоде есть. Это скорее для экспертности полезно. То, что это на практике не часто встречается. Автор, тогда зачем физикам и инженерам учить физику в универе и матан? Они же будут по профессии только 5-10% знаний применять, например, рассчитывать какие-то ядерные/атомные вычисления на атомной станции, зачем им матан нужен и куча других разделов математики и физики, с которыми они никогда не будут работать? Выучили бы те, с которыми будут работать и хватит. Зачем врачам кучу всего изучать, если они пойдут в педиатры и будут примитивные простуду и т.п. лечить, или в хирурги и будут небольшие операции проводить. Им явно, большая часть знаний не пригодится. Вот подумай на досуге.
Конечно, не надо рвать и решать все 5000 задач на кодварсе до первой работы и весь литкод перерешать. Но хотя бы штук 500 надо решить. Сам критерий, я для себя вывел такой, если кату 6 за 40 минут - 1 час решаешь в среднем, то для джуна и первой работы хватит.
Для изучения основ базового синтаксиса достаточно 50 задач по возрастающей сложности, после этого надо делать что-то более реальное (пет-проект), а не дрочить задачи про сферических единорогов в вакууме 500 штук! Автор основывается не на личном опыте изучения программирования, а на опыте нескольких тысяч устроенных людей в школе, которых, в том числе, и сам лично менторил. За последние 8 лет в менторинге.
щас бы 5-7 лет до мидла учиться, когда можно через год с нуля залететь)
@@german-sevostyanov то, что 1000 устроенных, это не показатель. Т.к. новичок без опыта может хоть сеньером идти устраиваться, если софт скилы мощные и ещё врёт, умеет пыль в глаза пускать и т.п. Ну а если жестко не врать, а немного обмануть и прикрутить 1-2 года опыта, то можно на мидл- зайти.
А что касается написания алгоритмов, видимо к вам приходят уже с каким-то опытом, а не полные нули. Допустим, я ещё в школе на уроке информатике решал эти задачки. А потом в универе тоже решал задачки и другим помогал с задачами, в итоге, я там руку набил. А есть такие, кто полностью забивал на информатику в школе, т.е. полный 0 в информатике. Тут уже по-разному будет. Есть те, кто пятерочниками были по информатике и решали школьные задачи, а есть те кто забивали. И конечно бекграунд разный у них будет. Мой друг решил уже больше 100 задач на тему циклов и всё равно ему тяжело даются такие как цикл в цикле. А если там ещё надо условие добавить какое-то или даже не сколько, то тут уже мозг взрывается. И как по-твоему на работе, если он увидит цикл в цикле и даже не сможет прочитать код, понять, что этот код делает, как он будет с ним что-то делать, модифицировать, исправлять? Мне кажется, что ему и 500 задач может не хватить.
Я не говорю про какие-то сложные вещи, а про банальные циклы массивы строки справочники, с этим надо шустро уметь работать.
У автора скорей всего профдеформация, поэтому такие вещи упускаются из поля зрения.
В общем, если человек хочет более менее комфортно работать с первого года, то лучше прорешать 500+- задач.
@@german-sevostyanov почему 5-7 лет. Столько же, сколько и в других случаях, плюс минус. Ну может на 10-20% дольше будет, не более.