Кто хочет со мной? Пишите в личку - и я скину первую домашку. Кто первый успеет сделать домашку к 18 ноября, с теми будем проходить подготовку.
🍰 #it #архитектура_it
Please open Telegram to view this post
VIEW IN TELEGRAM
Спойлер:
На производство одного часа видео нужно более 40 часов работы. А чтобы записать ±10 часов учебного видео-материала мне потребовался целый год!
В итоге получается, что одно 20-минутное видео может занять суммарно более 40 человека-часов работы. Учитывая, что я работал с командой профессионалов, которые занимаются записью курсов уже много лет, мне нужно было не так много времени. Получилось примерно 8 часов работы на каждые 20 минут готовых видео.
Я бы не стал записывать курсы ради получения дополнительных денег, принимая во внимание, что оплачивают только целиком готовый курс, а не постепенно по урокам. Отдельно можно отметить, что курс имеет «срок годности», и через 2 года технологии изменятся настолько, что он будет уже неактуален.
Запись курсов это не про деньги (как минимум для спикера) и цена за них для меня стала более оправдана. Если вы проходили платные курсы, то поделитесь в комментарии своим мнением как ученика.
А я планирую записать мини-курс про алгоритмы. Сделать его платным или бесплатным?
🍰 #it #it_мнение #it_курсы
Please open Telegram to view this post
VIEW IN TELEGRAM
Проектируя сервисы, мы сталкиваемся с тремя понятиями:
Пример: Мы арендуем облако, поставщик гарантирует 99,9% доступности сервиса в месяц. При нарушении мы получаем депозит за каждый 0,1% недоступности.
У нас в примере целевой уровень для SLI равен 99,9% в месяц, значит что 0.1% времени сервис может быть недоступен. Т.к. в месяце у нас около 43 тысяч минут, недоступен сервис может быть 43 минуты. Этот уровень и есть SLO — то есть цель команды по конкретной метрике.
В итоге, SLA - это соглашение, в котором зафиксированы SLI, целевой уровень которых определён SLO.
Сла, сли, сло... Нам и без этого нормально работается...
🍰 #it #просто_о_сложном
Please open Telegram to view this post
VIEW IN TELEGRAM
Всем привет!
В это воскресенье приглашаю всех на Живой подкаст 3.0! 🎙
Это шоу, которое нельзя перемотать, поставить на паузу или ускорить. Зато можно задать вопросы экспертам IT индустрии, которые учились или продолжают обучаться в школе 21!
🤓 Сразу 4 эксперта поделятся своим уникальным опытом обучения, подготовке и прохождения собеседований, первых успехах и неудачах в IT.
В этот раз у нас в гостях не только разработчики, но и дажеадминистратор баз данных . Начнём в 17:00 и закончим, когда ведущие ответят на все вопросы гостей.
📌 Приходите 24.11 в 17:00 в Московский кампус школы 21, будем вас ждать!
Задать вопросы экспертам -> t.iss.one/PySage_bot
🍰 #it #анонсы
В это воскресенье приглашаю всех на Живой подкаст 3.0! 🎙
Это шоу, которое нельзя перемотать, поставить на паузу или ускорить. Зато можно задать вопросы экспертам IT индустрии, которые учились или продолжают обучаться в школе 21!
🤓 Сразу 4 эксперта поделятся своим уникальным опытом обучения, подготовке и прохождения собеседований, первых успехах и неудачах в IT.
В этот раз у нас в гостях не только разработчики, но и даже
📌 Приходите 24.11 в 17:00 в Московский кампус школы 21, будем вас ждать!
Задать вопросы экспертам -> t.iss.one/PySage_bot
🍰 #it #анонсы
👉 Пока мы готовим полезные материалы с трёх выступлений напомню:
🧑💻 Ко мне в команду требуется два стажёра. Если вы, или кто-то из ваших знакомых хочет заниматься тестированием или разработкой веба на Python, то кидайте резюме мне в личку -> @PySage
✍️ Даже если кажется, что не готовы выйти на работу, всё равно кидайте!
P.S: Если уже кидали, скиньте ещё раз и напишите куда хотите, в разработку или в тестирование.
🍰 #it #вакансии #It_материалы
P.S: Если уже кидали, скиньте ещё раз и напишите куда хотите, в разработку или в тестирование.
🍰 #it #вакансии #It_материалы
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
За октябрь и ноябрь я написал полезные посты на разные темы:
⭐️ HR
Про что написать ещё?
🍰 #it #коджест
Please open Telegram to view this post
VIEW IN TELEGRAM
При разработке и проектировании систем мы должны понимать, как работает память компьютера. Как и у человека, у компьютера есть краткосрочная и долгосрочная память. Мы можем запомнить очень много информации, но держать "в уме" можем очень мало.
Это "краткосрочная" память компьютера. Она требует высоких энергозатрат и её сложно расширять. Зато эта память работает очень быстро. Мы знаем точный адрес, где мы храним данные, и мы можем быстро к ним обратиться. Причём за одну секунду можно прочитать всю ОЗУ на 20-50 гигабайт (в зависимости от системы) !
Такая память храниться на жёстких дисках. Это могут быть HDD или более современные SDD. HDD работают как виниловый проигрыватель.
Представьте, что нам нужно найти второй припев песни на пластинке. Нам нужно знать, где именно на пластинке находится запись песни. Затем мы можем выставить головку считывателя на это место (если сможем определить) и начать прослушивание нашего трека. Скорее всего нам придётся прослушать весь трек, даже если нам нужна только его часть.
Ещё быстрее работает память на самом процессоре, но она сильно ограничена. На одном ядре размещается до 64 Мб. Эта память используется для текущих расчётов самим процессором. Это уровень регистров и кэша процессора.
Заметка для удобства:
| Тип памяти | Cкорость | Объем |
| ------------ | -------- | ------------- |
| Регистры | <1 нс | До 1 КБ |
| L1-кэш | ~1 нс | 16–128 КБ |
| L2-кэш | ~5 нс | 256 КБ – 2 МБ |
| L3-кэш | ~20 нс | 4–64 МБ |
| ОЗУ | ~100 нс | ГБ |
| SSD (NVMe) | ~100 мкс | ТБ |
| HDD(7K RPM) | ~5–10 мс | ТБ |
🍰 #it #просто_о_сложном
Please open Telegram to view this post
VIEW IN TELEGRAM
Что не так со Школой 2️⃣ 1️⃣ ?
Как вы знаете, я выпускник Школы 21, и уже много раз выступал там с разными темами (наверняка вы периодически видите анонсы в канале).
В целом мне нравится подход Школы, особенно то, что она полностью бесплатная😁. Однако есть и негативные моменты. Но только на днях я смог сформулировать, что же мне не нравится в обучении Школы (далее s21). Возможно, эту проблему вы тоже замечали, так что делитесь в комментариях своим мнением, буду рад обсудить!
➡️ Для начала, как вообще построено обучение в s21:
Вам дают задачу связанную с разработкой. Например, "(или нет) . Найдёте ответы на все вопросы, изучите технологию и напишите этот скрипт.
⚡️ Проходя обучение в s21, вы будете постоянно сталкиваться с неудачами. Многие часы тратить на безуспешные попытки починить то, что уже целое. Десятки раз выбирать неверные пути решения. На сотни и тысячи неудачных попыток вы будете получать только одну удачную. Это тоже полезно. Формируется критически важный для разработчика навык - не сдаваться и знать, что однажды твой код заработает.
🙂 Что же не так?
Вы не попадёте в команду лучших разработчиков. Это нужно понять сразу. Шансов, что с вами будут работать лучшие - очень низкий. Разработчики тоже люди, причём часто с не очень хорошими софт-скиллами.
Действительно крутых специалистов мало, а вы вряд ли будете лучшим кандидатом для команды, в которой работают лучшие. В итоге, вы попадаете в команду среднего уровня. В работе вы не будете использовать таск-трекеры, не будет код-ревью, тестов и аналитики задач. Вам будет комфортно, потому что это похоже на учёбу в s21.
🔘 А что в итоге?
Индустрия получает большое количество специалистов, но они не знают о лучших практиках. Если вы обучились в s21, вам нужно самостоятельно изучить их и внедрять их в работу. Это соответствует подходу школы, но не помогает развивать сообщество разработчиков. Вы вряд ли узнаете лучшие практики без опыта работы в командах высокого уровня, а шанс попасть в такую - очень маленький.
Не обязательно даже создавать новые стандарты, можно использовать чужие. У Google есть много полезных, например практики код ревью. Кажется, что стоило бы внедрять в обучение такие практики и помогать развивать индустрию.
А как считаете вы? Встречали команды высокого уровня, где процессы помогают работать эффективно, коллеги имеют имеют экспертное мнение, а продукт — инновация в сфере?🔽
🍰 #it #мысли
Как вы знаете, я выпускник Школы 21, и уже много раз выступал там с разными темами (наверняка вы периодически видите анонсы в канале).
В целом мне нравится подход Школы, особенно то, что она полностью бесплатная😁. Однако есть и негативные моменты. Но только на днях я смог сформулировать, что же мне не нравится в обучении Школы (далее s21). Возможно, эту проблему вы тоже замечали, так что делитесь в комментариях своим мнением, буду рад обсудить!
Вам дают задачу связанную с разработкой. Например, "
напишите скрипт на Bash...", а вы не знаете, что такое Bash или даже что такое "скрипт". В школе нет преподавателей, нет базы знаний, вы должны сами найти информацию и решить задачу. В итоге, вы ёе сделаете Этот подход развивает один из самых важных, если не самый важный навык: самостоятельно находить решение любой проблемы. Это очень полезно на работе, особенно в IT.
Вы не попадёте в команду лучших разработчиков. Это нужно понять сразу. Шансов, что с вами будут работать лучшие - очень низкий. Разработчики тоже люди, причём часто с не очень хорошими софт-скиллами.
Действительно крутых специалистов мало, а вы вряд ли будете лучшим кандидатом для команды, в которой работают лучшие. В итоге, вы попадаете в команду среднего уровня. В работе вы не будете использовать таск-трекеры, не будет код-ревью, тестов и аналитики задач. Вам будет комфортно, потому что это похоже на учёбу в s21.
Индустрия получает большое количество специалистов, но они не знают о лучших практиках. Если вы обучились в s21, вам нужно самостоятельно изучить их и внедрять их в работу. Это соответствует подходу школы, но не помогает развивать сообщество разработчиков. Вы вряд ли узнаете лучшие практики без опыта работы в командах высокого уровня, а шанс попасть в такую - очень маленький.
Не обязательно даже создавать новые стандарты, можно использовать чужие. У Google есть много полезных, например практики код ревью. Кажется, что стоило бы внедрять в обучение такие практики и помогать развивать индустрию.
А как считаете вы? Встречали команды высокого уровня, где процессы помогают работать эффективно, коллеги имеют имеют экспертное мнение, а продукт — инновация в сфере?
🍰 #it #мысли
Please open Telegram to view this post
VIEW IN TELEGRAM
Придумать название переменной и описание коммита — проблема каждого разработчика. Составить правильно эндпоинт в REST приложении — проблема не менее редкая. Прежде, чем читать дальше подумайте, что не так с этим эндпоинтом:
/api/GetLastUserPost/?id=123
Параметры запроса не нужно отделять дополнительным разделителем:
/api/GetLastUserPost?id=123
Выделите сущности и определите их связи. У нас есть пользователь у которого есть посты. Оставьте 1-2 вложенные сущности. Например, если пользователь входит в дополнительную группу, но его
id уникален, можно начать сразу с пользователя:/api/user/123/GetLastPost
Для разделения слов в ссылке используйте "-" и начинайте все слова с прописной буквы(kebab-case):
/api/user/123/get-last-post
Не нужно прописывать действия с объектом. Метод должен соответствовать действию, с которым мы делаем запрос:
GET: /api/user/123/last-post
Указание конкретного
id пользователя показывает, что мы работаем с группой users. Если вы делаете запрос с параметром объекта из группы, то группа указывается во множественном числе:GET: /api/users/123/last-post
🍰 #it #просто_о_сложном
Please open Telegram to view this post
VIEW IN TELEGRAM
Недавно я делал ревью кода коллеги и обратил внимание, что моё отношение к программированию сильно изменилось с тех пор, как я начал писать на rust. Этот язык позволяет обнаружить проблемы с кодом до выхода в продакшн. (Про это я писал пост).
Теперь, когда я пишу код или делаю ревью, я думаю о безопасности. Если я вижу обращение по индексу, то проверяю, что до этого была проверка на существование этого индекса. Это снижает скорость разработки и добавляет код. В каких-то случаях этот подход выглядит даже не типичным для Python. Но зато теперь я уверен, что в продакшен эта часть кода будет работать именно так, как мы задумывали.
Например, мы можем обеспечить то, что функция
'last_item' попробует получить последний элемент полученного списка. Если список будет пуст, она вернёт ошибку 'ValueError'. То есть, вместо того, что бы вызывать ошибку в функции, мы её возвращаем. При таком подходе клиент (вызывающий функцию кода) должен убедиться что он получил результат, а не ошибку. А на каком языке пишите вы?
🍰 #it #мысли #инсайт
Please open Telegram to view this post
VIEW IN TELEGRAM
Хотите телеграм премиум? ⭐️
Давайте устроим интерактив🪐
Напишите в комментарий самый полезный для вас пост в канале, первый который приходит на ум. Ну или просто отправьте любимый стикер. А я устрою розыгрыш премиум подписок в канале. Комментарии от 20 разных людей до НГ == розыгрыш 3 премиумов.
Если у вас уже есть премиум сделайте буст канал, что бы вернуть красивое оформление
▶️ https://t.iss.one/boost/a_cup_of_code
Написать комментарий про самый полезный пост или скинуть любимый стикер⬇️
🍰 #it #розыгрыш
Давайте устроим интерактив
Напишите в комментарий самый полезный для вас пост в канале, первый который приходит на ум. Ну или просто отправьте любимый стикер. А я устрою розыгрыш премиум подписок в канале. Комментарии от 20 разных людей до НГ == розыгрыш 3 премиумов.
Если у вас уже есть премиум сделайте буст канал, что бы вернуть красивое оформление
Написать комментарий про самый полезный пост или скинуть любимый стикер
🍰 #it #розыгрыш
Please open Telegram to view this post
VIEW IN TELEGRAM
Недавно ходил в ресторан Sempre, расположенный в Москве. Открыв дверь ресторана, вы будто попадаете в джунгли. Вокруг много зелени в горшках, цветы на столах, подоконниках, и даже с потолка свисает множество лиан
🍃 В интерьере используются натуральные материалы: тяжёлые столы из массива, корзины из каната и глиняные горшки. Посуда, подставки для приборов и бокалы повторяют стиль всего интерьера. Они тоже массивные, сделаны из глины и дерева или фактурой и формой сливаются с окружающей "природой".
При этом видно, что сами материалы не особо дорогие. Толстые стеклянные бокалы и кувшины явно не ручной работы. Глиняная посуда и чугунный чайник тоже тяжёлые и толстостенные. Всё вместе выглядит уместно и отлично дополняет друг друга. Учитывая, что ресторан рассчитан на "потоковое" обслуживание, цены в нём не высокие, а находится он в самом центре, использование не самой дорогой посуды оправдано.
Как это связано с IT и зачем я вообще решил об этом написать?
Сосредоточьтесь на том, что вы знаете и умеете. Если вас спрашивают про
gRPC, а вы работали только с REST - расскажите об этом! Опишите свой опыт и приведите аргументы, почему ваш подход более подходящий. Гордитесь своим опытом и рассказывайте о нём.
Если у вас вообще нет никакого опыта, то начните с этого поста.
Проектируя и разрабатывая программы или целые системы помните, что всегда есть ограничения. Осознано подходите к задачам. Всегда приходиться искать компромиссы и действовать, исходя из доступных ресурсов.
Помните: идеальных решений не существует. Существуют решения которые подходят в данной ситуации.
Возможно разработанное вами решение будет плохо масштабируемым, но если у компании нет денег на это, то такое решение будет верным.
Как часто вам приходится мириться с неидеальным, но подходящим в этот момент решением?
🍰 #it #мысли #инсайт
Please open Telegram to view this post
VIEW IN TELEGRAM
Как вы знаете, я пишу на Python и Rust. Оба языка совершенно разные. Отчего вообще появляются новые языки программирования?
Как и в других технологиях, если текущее решение не подходит или предоставляет недостаточно настроек, то приходится придумывать собственное. Например, вам нужно хранить данные на диске, но вы хотите их быстро анализировать. Вы прочитали мой пост про хранение данных и поняли, что текущее SQL решение вам не подходит. Решением станет колоночная БД. Данные хранятся так же на диске, но считывание их для аналитики будет кратно быстрее.
Представьте, что вам нужно построить домик из кубиков. Есть квадратные кубики для основания и треугольные для крыши. Если вам всего 2 года, то уже не так очевидно, какой кубик для чего нужен. Вы можете попробовать использовать треугольный кубик для основания и вряд ли это будет эффективно. Если вы строите настоящий дом, то использование "неподходящего кубика" может обернуться трагедией. К сожалению, в программировании легко совершить подобные ошибки.
Python, словно "мягкий" родитель, позволяет вам строить домик из кубиков как угодно и получать не всегда положительный опыт:
Ты можешь использовать любые кубики для фундамента, хочешь бери квадратные, хочешь треугольные.
Но если вы хотите сделать что-то серьёзное, то вам нужен заботливый родитель, который скажет:
Для фундамента подходят только квадратные кубики. На треугольном ничего не будет держаться.
Более того, он проверит, что вы всё правильно собрали. Именно такого подхода придерживаются создатели языка Rust.
А какой "родитель" ваш язык программирования?
🍰 #it #rust #языки_программирования
Please open Telegram to view this post
VIEW IN TELEGRAM
📚 Рубрика: «Книжная полка разработчика»
Разработчику нужно прокачивать не только хард-скиллы, но и "софты"! Про мягкие навыки написано уже много материалов, а я даже провёл несколько выступлений. Отдельно выделяют софт-навыки для разработчиков(выступления Андрея Смирнова про софт-скиллы для разработчиков) . Исследований, статей и книг так много, что уже сложно разобраться. Удивительным совпадением я нашёл самую полезную книгу!
🔜 Прочитал «Как оставаться человеком на работе» от издательства HBR. Эта книга самая лучшая из всех, что я читал, и лучшая работа HBR. Издание HBR на основании лучших (141) материалов написали эту книгу про эмоциональный интеллект и я рекомендую её прочитать! Рассказываю почему💋
🫥 Книга разделена на 6 частей, по навыкам, необходимых лидеру. В статьях и на выступлениях для разработчиков мы обычно слышим про "обучаемость", "самостоятельность" и т.д. Мнения, что разработчику нужны "осознанность" и "эмпатия" - я не встречал.
Если вы работаете на начальных позициях, навыки из этой книги могут показаться не нужными. Можно подумать, что эта книга полезна только управленцам или владельцам бизнеса - тем, у кого много подчинённых. По моему мнению, эта книга полезна для всех.💎
⭐ Раскрытие этих тем мне понравилось больше всего:
- Как определить что такое счастье и достичь его?
- Как правильно отдыхать и почему это важно?
- Что делать, если подчинённые не слышат тебя и делают всё не правильно?
💘 Каждая глава книги основана на исследованиях, статьях и книгах от издателя. В любой момент можно обратиться к источнику, а в самой книге нам показывают выводы и мнение автора. Над книгой работало 64 автора и указан 141 источник. Кроме того, в ней часто приводятся интервью. Каждая глава заставляет задуматься и порефлексировать, из-за этого я читал эту книгу почти 5 лет!
👍 Рекомендую почитать, если вы достигли момента, когда у вас уже есть подчинённые или вы не понимаете, как достичь счастья. Эта книга - лучший инструмент погружения в тему эмоционального интеллекта, даже если вы никогда не интересовались им.
📚 Обновлённый список обязательных к прочтению книг разработчику:
🟢 До выхода на работу:
• Грокаем алгоритмы
• Карьера программиста
🟢 После выхода на работу:
• Паттерны проектирования
• Подготовка к сложному интервью
🟢 Чтобы поднять грейд:
• Дизайн привычных вещей
• Книга с кабанчиком
• Погружение в рефакторинг
🟢 Лидерство и личностный рост:
• Как оставаться человеком на работе
Делитесь в комментариях, сколько из этих книг вы уже прочитали, и чем они вам помогли в работе👇
🍰 #книжная_полка #it #python_полезности
Разработчику нужно прокачивать не только хард-скиллы, но и "софты"! Про мягкие навыки написано уже много материалов, а я даже провёл несколько выступлений. Отдельно выделяют софт-навыки для разработчиков
Если вы работаете на начальных позициях, навыки из этой книги могут показаться не нужными. Можно подумать, что эта книга полезна только управленцам или владельцам бизнеса - тем, у кого много подчинённых. По моему мнению, эта книга полезна для всех.
- Как определить что такое счастье и достичь его?
- Как правильно отдыхать и почему это важно?
- Что делать, если подчинённые не слышат тебя и делают всё не правильно?
📚 Обновлённый список обязательных к прочтению книг разработчику:
• Грокаем алгоритмы
• Карьера программиста
• Паттерны проектирования
• Подготовка к сложному интервью
• Дизайн привычных вещей
• Книга с кабанчиком
• Погружение в рефакторинг
• Как оставаться человеком на работе
Делитесь в комментариях, сколько из этих книг вы уже прочитали, и чем они вам помогли в работе
🍰 #книжная_полка #it #python_полезности
Please open Telegram to view this post
VIEW IN TELEGRAM
HH.ru поделился интересной статистикой по рынку соискателей и вакансий в сфере IT. В отчёте сравниваются показатели изменения рынка поиска работы. Разберём статистику в рамках IT сектора👇
Однако, вопреки всем этим цифрам, многие компании заявляют о "кадровом голоде". По разным оценкам, дефицит ИТ-специалистов оценивается от 500 тыс. до 1 миллиона человек.
Компании заявляют о нехватке только опытных специалистов (от уровня middle), а таких специалистов мало. А вот среди джунов и стажёров ситуация иная: с ростом популярности ИТ-профессий и количества курсов, дефицита в них не наблюдается. На одну вакансию могут откликнуться тысячи кандидатов. Но если вы видите в вакансии "1000+ откликов", то проблема может быть в другом. Об этом я писал в этом посте.
Даже если все джуны станут крепкими миддлами, ситуация на рынке вряд-ли измениться. Многие специалисты покидают российский рынок, переходя в европейские компании. Сам рынок постоянно расширяется: в сферах ИИ и Big Data только формируется экспертиза, добавляются новые языки - например, до сих пор не хватает Golang разработчиков.
Кроме того, компании переходят на модель разработки диджитал решений. К примеру, МТС утвердила структуру компании MTС Web Services (MWS), куда с 2021 года переносила свои инфраструктурные и облачные сервисы. О реструктуризации они сообщили в декабре 2024 года.
Когда провести встречу?
Please open Telegram to view this post
VIEW IN TELEGRAM
1 5 2
Выберите день, в который вы сможете подключиться:
Anonymous Poll
26%
понедельник
22%
вторник
19%
среда
30%
четверг
30%
пятница
37%
суббота
30%
воскресение
Выберите время, в которое вы сможете подключиться:
Anonymous Poll
14%
10:00
14%
12:00
39%
15:00
36%
18:00
54%
20:00