TGViewer
Channel Public Channel
Потраченный код

Потраченный код

@codewaste

Это канал про ИТ | Менторство: codewaste.ru | Отзывы: @codewaste_feedback | Запись: @gardiys_support | Мой аккаунт: @gardiys | Личный канал: @scherbakanton | YouTube: https://www.youtube.com/@codewaste
ИП Щербак А.О.
ОГРНИП 324237500502901
Subscribers
1.58K
Photos
37
Videos
0
Links
54
Recent Posts 17 shown
Post #140 237
⚡️Вопросы с собесов

Сначала отвечай сам и только потом проверяй ответ 👇

Стек: Go

Вопрос:
«В чем главные подводные камни функции append при работе со слайсами?»

Ответ:

Слайс - это лишь «обертка» над базовым массивом. Главный подводный камень заключается в том, что если несколько слайсов ссылаются на один и тот же массив, изменение элементов через один слайс затронет и все остальные.

Но ситуация резко меняется при вызове
append. Если при добавлении элемента текущая вместимость (capacity) слайса превышена, Go выделит в памяти новый массив, скопирует туда данные и добавит новый элемент.

С этого момента связь между слайсами разрывается! Ваш обновленный слайс начнет смотреть на новый участок памяти, а старые слайсы продолжат смотреть на старый. Это частый источник трудноуловимых багов, когда разработчик думает, что мутирует исходные данные, а по факту работает уже с независимой копией.


Пиши свой вариант ответа в комментарии 👇
Post #139 298
⚡️Вопросы с собесов

Сначала отвечай сам и только потом проверяй ответ 👇

Вопрос:
«Почему нельзя указывать в функции аргумент по умолчанию как пустой изменяемый объект (например, список или словарь)?»

Стек: Python

Ответ:

Потому что этот объект будет создан ровно один раз - на этапе определения (инициализации) функции в памяти.
Из-за этого при каждом следующем вызове функции без явного указания аргумента будет переиспользоваться один и тот же объект. Он начнёт накапливать в себе значения от предыдущих вызовов, что приведёт к непредсказуемому поведению программы.

💡 Как делать правильно: использовать None в качестве значения по умолчанию, а внутри тела функции делать проверку и создавать новый пустой список или словарь.


Пиши свой вариант ответа в комментарии 👇
  • 🔥 6
Post #138 484
Ходишь по техническим собеседованиям, но в ответ получаешь только «к сожалению, мы выбрали другого»? 🧐

Типичный сценарий: сходил на интервью, где-то поплыл, получил отказ. По привычке открыл «топ-500 вопросов», освежил базы данных, пошёл на следующее — и снова всё повторилось.
Проблема в том, что хаотичная зубрёжка теории между собесами ничего не меняет. Ты просто переносишь одни и те же незамеченные ошибки с одной встречи на другую.

В новом видео мы разобрали системный 6-этапный алгоритм подготовки, который превращает любой пройденный собес в понятный план действий:

— Как готовиться под конкретную компанию, а не читать всё подряд
— Зачем записывать встречи через OBS и переводить в текст через Whisper
— Как искать реальные пробелы в знаниях с помощью нейросетей
— Как правильно отрабатывать ошибки на практике и проверять себя перед следующим шагом

👀 Смотреть видео на YouTube
YouTube Собесы есть, а ОФФЕРА НЕТ? Как разорвать круг бесконечных отказов 🔥 Полезные ссылки: — 🚀 Моя менторская программа (помогу дойти до оффера за руку): https://codewaste.ru — 🗺️ Бесплатный Roadmap Python-разработчика: https://defender.codewaste.ru/r/Rb8CCKhtzco — 🎥 Подробное видео про Roadmap: https://youtu.be/tf_-Pe4FT8o?…
  • 🔥 5
  • 👍 1
Post #137 457
⚡️Вопросы с собесов

Сначала отвечай сам и только потом проверяй ответ 👇

Стек: Go

Вопрос:
«Как работает sync.WaitGroup и зачем нужен метод Done()?»

Ответ:
sync.WaitGroup - это потокобезопасный счетчик, который нужен для того, чтобы дождаться завершения группы горутин.

Как он работает под капотом:
Add(n) - увеличивает внутренний счетчик на n (обычно вызывается перед запуском горутин).
Done() - уменьшает счетчик на 1. Фактически, под капотом это просто синоним вызова Add(-1). Чаще всего его вызывают через defer внутри самой горутины, чтобы гарантировать уменьшение счетчика при любом исходе.
Wait() — блокирует выполнение текущей горутины (например, main), пока счетчик не опустится до нуля.
Как только все запущенные горутины отработают и вызовут Done(), счетчик станет равен 0, блокировка снимется, и программа продолжит работу.

Пиши свой вариант ответа в комментарии 👇
  • ❤ 2
Post #136 530
⚡️Вопросы с собесов

Сначала отвечай сам и только потом проверяй ответ 👇

Вопрос:
«В чём отличие корутин от future и task?»

Стек: Python

Ответ:

Корутина - это объект, возвращаемый асинхронной функцией. Она может выполняться асинхронно, приостанавливать и возобновлять своё выполнение при встрече с ключевым словом await.

Future - это низкоуровневый объект, который представляет собой «обещание» получить результат операции в будущем. Он хранит состояние асинхронной задачи: незавершённое, завершённое с результатом или завершённое с ошибкой. Future используется для передачи результатов между частями асинхронного кода, и его тоже можно ждать через await.

Task - это подкласс Future. Главное отличие в том, что при создании Task вы напрямую планируете выполнение корутины в цикле событий (Event Loop), а её результат уже сохраняется как Future.

💡 Краткий вывод: Корутина описывает логику асинхронных операций (что делать), Future представляет результат этих операций (что получилось), а Task является оберткой, которая планирует и запускает корутину в работу.


Пиши свой вариант ответа в комментарии 👇
  • ❤ 4
  • 👍 1
Post #135 628
⚡️Вопросы с собесов

Сначала отвечай сам и только потом проверяй ответ 👇

Стек: Go

Вопрос:
«Как реализовать множество через мапу?»

Ответ:

Его реализуют через мапу, где ключами выступают уникальные элементы множества.
Идиоматичный паттерн — использовать пустую структуру:
map[T]struct{}.

Почему не
map[T]bool? Всё дело в оптимизации. Пустая структура struct{} в Go весит ровно 0 байт. А тип bool занимает 1 байт. Когда в вашем множестве сотни тысяч или миллионы элементов, использование struct{} позволяет сэкономить значительный объем оперативной памяти, при этом сохраняя скорость поиска элемента за О(1).

Пиши свой вариант ответа в комментарии 👇
  • 🔥 2
  • ❤ 1
Post #134 653
Бесконечно учишь Python, но так и не ищешь работу? 🧐

Ты сделал пет-проект и разобрался с FastAPI, но открываешь вакансии - а там требуют Kafka, Kubernetes и микросервисы.

Первая мысль - «я пока не готов, вот ещё немного поучусь, и тогда начну». Но правда в том, что состояния идеальной, стопроцентной готовности к рынку просто не существует.

Технологий в резюме и пройденных курсов становится всё больше, а откликов по-прежнему ноль. Ты можешь отлично знать базы данных, Docker и архитектуру, но так и не получить оффер просто потому, что даже не пробуешь откликаться.

В новом видео мы разобрались, когда тебе действительно пора выходить на рынок, и подготовили чек-лист из 10 пунктов.
Внутри - как оценить свою техническую базу, перестать обманывать себя пошаговыми туториалами и поставить себе честную оценку: нужно ли ещё закрывать пробелы в фундаменте, или вам уже давно пора активно ходить по собеседованиям.

👀 Видео на YouTube
YouTube Как понять, что пора на собеседование? Оцениваем навыки Python Backend 🔥 Полезные ссылки: — 🚀 Моя менторская программа (помогу дойти до оффера за руку): https://codewaste.ru — 🗺️ Бесплатный Roadmap Python-разработчика: https://defender.codewaste.ru/r/Rb8CCKhtzco — 🎥 Подробное видео про Roadmap: https://youtu.be/tf_-Pe4FT8o?…
  • ❤ 12
  • 👍 3
Post #133 769
⚡️Вопросы с собесов

Сначала отвечай сам и только потом проверяй ответ 👇

Стек: Go

Вопрос:
«В чем разница между массивом и слайсом?»

Ответ:

Массив (Array) - это структура данных строго фиксированного размера. Его длина определяется при создании и является неотъемлемой частью самого типа (например,
[3]int и [5]int - это два абсолютно разных типа). Массив нельзя изменить в размере после создания.

Слайс (Slice) - это динамический заголовок (обертка), который ссылается на нижележащий базовый массив. Он не хранит данные сам по себе, а содержит только три поля: указатель на первый элемент массива, текущую длину (len) и вместимость (cap). В отличие от массива, слайс может динамически расти в размере (например, при использовании функции
append).

Пиши свой вариант ответа в комментарии 👇
  • 👍 5
  • 🔥 5
Post #132 730
⚡️Вопросы с собесов

Сначала отвечай сам и только потом проверяй ответ 👇

Вопрос:
«Что такое Docker? Для чего он нужен? В чём его преимущества?»

Стек: Python

Ответ:

Docker - это платформа для разработки, доставки и запуска приложений в изолированных средах (контейнерах). Она помогает создавать и обслуживать приложения в простой и организованной манере. Вы помещаете своё приложение и инструкции по его запуску в контейнер, после чего можете запустить его на любой машине простыми командами.
В чём его главные преимущества?

Изоляция: Контейнеры работают независимо и изолированно друг от друга. Никаких конфликтов версий.
Удобство: Контейнер можно поднять одной командой, так как вся среда и инструкции по запуску уже зашиты внутри.
Одинаковая работа везде: Забудешь фразу «а на моём компе всё работало». Контейнер легко и идентично запускается на любых машинах


Пиши свой вариант ответа в комментарии 👇
  • ❤ 10
Post #130 827
ТОП навыков и ключевые слова.pdf820.8 KB
Почему вы получаете одни отказы, хотя знаете Python? 🧐

Вы отправляете сотни откликов, но в ответ — тишина или автоотказы.

Первое желание — пойти зубрить новые фреймворки. Но правда в том, что до живого рекрутера ваше резюме, скорее всего, даже не дошло.

Если вас не зовут на интервью, ваши технические навыки ещё никто не проверял. Проблема не в вашем коде, а в том, что алгоритмы и ИИ-фильтры платформ отсеивают вас ещё на этапе автоматического поиска.

В новом видео мы разобрали 7 главных причин, по которым вас не зовут на собеседования.

Внутри — как исправить размытое позиционирование, убрать «информационный шум» из резюме и сделать так, чтобы рынок вас наконец-то увидел.

👀 Видео на YouTube
  • 🔥 11
Post #129 916
⚡️ Запускаем новую рубрику - Вопросы С Собесов!

Будем разбирать частые вопросы с реальных технических интервью. 
Сначала отвечай сам и только потом проверяй ответ

Стек: Python

И первый на очереди вопрос с собеса в Сбер:

«asyncio, threading или multiprocessing — что, когда и зачем?»


Ответ:


asyncio применяю для большого числа I/O-bound операций, когда используемые библиотеки поддерживают async/await: например, HTTP-запросы, работа с БД или обработка множества сетевых соединений. Один поток управляет задачами кооперативно, поэтому нельзя выполнять внутри event loop длительный блокирующий или CPU-bound код.

threading подходит для I/O-bound задач с блокирующими библиотеками, которые нельзя или нецелесообразно заменить на async. Для CPU-bound Python-кода потоки обычно не дают параллелизма из-за GIL, хотя могут быть полезны, если тяжёлая работа выполняется в C-коде, освобождающем GIL.

multiprocessing выбираю для CPU-bound вычислений: отдельные процессы имеют собственный интерпретатор и GIL, поэтому могут использовать несколько ядер. Минусы — более дорогой запуск, передача данных между процессами и необходимость сериализации.

На практике я бы, например, использовал asyncio в FastAPI-сервисе для асинхронных внешних запросов, а тяжёлую обработку данных вынес бы в отдельный процесс или очередь задач.


Пиши свой вариант ответа в комментарии👇
  • 👍 21
  • 🔥 5
Post #125 1.51K
Шу мертв... ☠️

Ну, или как минимум — его эпоха прошла.
Мы окончательно ушли от роудмапов в фигме и бота (тот самый Шу) с записями собесов, и наконец-то выкатили собственную полноценную платформу для менти.

Что теперь есть внутри:
🟢Удобный роудмап с наглядными дедлайнами
🟢Загрузка и просмотр собесов прямо на платформе
🟢Карточки с вопросами из реальных интервью
🟢Встроенная база знаний со всеми нужными статьями

Наша киллер фича - ИИ-анализ собесов. Работает так: менти закидывает запись собеса, а нейронка полностью его потрошит. Она сама оценивает ход разговора, вытаскивает все заданные вопросы и дает подробный фидбек по каждому ответу

Платформу сейчас пилим настолько активно, что наш самый первый видеообзор для менти уже устарел - пора записывать новый 😅

Как-то так. А если хотите стать разработчиком и пощупать всё это дело вживую - пишите для записи сюда: @gardiys_support
  • 🔥 19
  • ❤ 3
  • 🤔 2
Post #124 1.45K
Post #123 1.62K
Промты и советы. @codewaste.pdf1.9 MB
Почему туториалы больше не работают? 🤓

Сейчас учиться программированию проще, чем когда-либо: везде бесплатные курсы, YouTube, нейросети. Но из-за этого легко попасть в ловушку «иллюзии знаний». Вы смотрите уроки, просите ChatGPT написать скрипт, всё вроде бы понятно...
А когда нужно написать код с нуля или пройти собеседование - наступает ступор.

Проблема не в материалах, а в подходе
. Гпт должен не заменять ваше мышление, а создавать условия, в которых вам приходится думать.

Для реально эффективного обучения не нужен десяток платных сервисов, достаточно связки из 4 инструментов:
🟢 ChatGPT — как личный «сократический» преподаватель и интервьюер.
🟢 Obsidian — как база вашего личного понимания (а не свалка скопированных статей).
🟢 Anki — для того, чтобы знания навсегда остались в памяти.
🟢 Календарь — чтобы просто защитить время на учебу.

В новом видео мы разобрали рабочую систему обучения программированию от А до Я.
Внутри — ежедневные протоколы занятий и 10 готовых сценариев-промптов для ChatGPT

👀 Видео на YouTube
  • 🔥 14
  • 🤔 2
  • ❤ 1
Post #122 1.69K
Часто слышу мнение, что середина лета - это самый тухлый сезон для поиска работы. Все в отпусках, процессы тормозят, нанимающие менеджеры на дачах, а новых вакансий почти нет.

Я решил подвести небольшие итоги работы нашей менторской программы за июль, чтобы посмотреть, так ли всё медленно и печально на самом деле.

Вот наши цифры за месяц:
🟢6 человек полностью закончили подготовку и вышли на рынок.
🟢7 человек получили свои офферы.
🟢180к / 305к — минимальная и максимальная сумма на руки.
🟢~247 000 ₽ — средняя зарплата по всем полученным офферам.

Даже на таком «спящем» рынке ребята продолжают забирать отличные суммы. Это лишний раз доказывает простую вещь: когда у тебя есть понятный процесс, уверенные скиллы и понимание того, как проходить собесы - время года вообще не имеет значения.

Не нужно откладывать свою карьеру в долгий ящик и ждать лучшее время.


Я искренне кайфую, видя такие результаты учеников 😎 Работаем дальше!
  • 🔥 20
  • ❤ 2
  • 😁 1
Post #121 1.92K
Когда я начинал менторство, мне хотелось создать место, где ребята перестанут тратить месяцы на пустые поиски и выгорание.
Глядя на свежие итоги, я понимаю, что всё это не зря:

- 126 человек уже с офферами 🔥
- 268к — их средняя зарплата
- 180к / 400к — минимальный и максимальный офферы
- 31 день — наш самый быстрый кейс
- 2400+ записей реальных собеседований собрано внутри

За каждой цифрой - история человека, который когда-то пришел ко мне с опущенными руками.

Я не даю волшебную таблетку. Только прозрачный процесс, где твоя дисциплина умножается на нашу экспертизу. Весь маршрут к офферу уже проложен, тебе остается только учиться и трудиться

Я искренне кайфую, когда вижу крутые результаты ребят 😎
Если такой подход откликается - приходи на бесплатный созвон, познакомимся и пообщаемся: @gardiys_support
  • 🔥 27
  • ❤ 3
  • 🤣 3
  • 👍 1
Older posts →

About this channel

How can I read @codewaste without a Telegram account?
TGViewer shows the public web preview Telegram publishes for Потраченный код: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does Потраченный код have?
Потраченный код (@codewaste) has 1.58K subscribers on Telegram, refreshed roughly every 30 minutes.
Does Потраченный код know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →