Владимир Балун
5.24K subscribers
287 photos
43 videos
311 links
Канал Балун Владимира — C++/Go разработчика из BigTech. Здесь вы найдете глубокие знания и материалы по программированию, личные истории и лайв-контент.

Сотрудничество: @vladimir_balun
Download Telegram
⛰️ Долго я никак не мог добраться до Алтая, постоянно откладывал… Но на прошлой неделе это наконец случилось!
1🔥11423👍13🎉3🏆2👏1👌1
Что ты знаешь об итераторах в Go?

🗓24 июня в 19:00 по МСК — бесплатный открытый урок с ex-Team Lead из Яндекса.

Разберём итераторы в Go так, как не объясняют в туториалах.

Поговорим про:
— зачем нужны итераторы в Go
— где их стоит применять в практике
— как их использования для пагинации, работы с БД и вводом-выводом
— как push и pull итераторы устроены внутри
— корутины (не горутины)

Если ты:
• используешь Go, но хочешь познакомиться с новыми возможностями языка
• уже сталкивался(лась) с итераторами и хочешь глубже понять, как они работают
• хочешь понять, где и когда следует использовать итераторы в практике

— этот урок точно стоит твоего времени.

Подходящий уровень — любой, если ты знаешь синтаксис Go. Будет практика, кейсы, реальные примеры.

🔗 Регистрация по ссылке
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥23👍41
📚 Новая литература на месяц
🔥42👍17💯2
System Design-собеседование: что будут спрашивать, где можно ошибиться и как этого избежать

Если ты собираешься на собеседование или уже ходил (а) — скорее всего, знаешь, как бывает сложно с секцией собеседования по System Design.

Типовые ошибки, неумение структурировать ответ, растерянность — и вот уже «мы вам перезвоним». Даже если ты хорошо знаешь язык и умеешь писать код.

На бесплатном открытом уроке 27 июня разложим System Design-интервью по полочкам, а сам открытый урок проведет ex-Team Lead из Яндекса.

Что будет на уроке:
— из чего состоит System Design-интервью и как его проходят
— 16 типичных ошибок, которые допускает большинство кандидатов
— какие задачи дают чаще всего на собеседованиях и как к ним готовиться
— советы по подготовке, чтобы не учить всё подряд, а фокусироваться на нужном

Подойдёт всем, кто готовится к собеседованию или уже ходил и хочет понять, что пошло не так.

🗓27 июня, пятница, 19:00 по МСК

Регистрация по ссылке
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍13🔥75
📹 Запись открытого урока по итераторам в Go!

На открытом уроке разбирали:
— зачем нужны итераторы в Go
— где их стоит применять в практике
— как их использования для пагинации, работы с БД и вводом-выводом
— как push и pull итераторы устроены внутри
— корутины (не горутины)

🔗 Ссылка на видео:
https://youtu.be/jmU7h2pbHV0
2❤‍🔥20🔥151👍1
💭 Идеи по контенту, проектам и всему остальному у меня возникают в любое время в абсолютно рандомных местах.

Особенность такова, что у меня они как-то непонятно возникают и потом как-то быстро забываются…

Недавно решил перестать забывать свои идеи, поэтому решил начать с простого и понятного инструмента. Завел у себя в заметках в телефоне отдельный документ с идеями, куда их и записываю. Телефон почти всегда под рукой, а записываю я их, не группируя никак, поэтому это занимает очень мало времени. Затем, один-два раза в месяц я их группирую и уношу в бэклог, чтобы “когда-нибудь“ запланировать и реализовать…

Лично для меня подход простой и рабочий. Бэклог как будто автоматически пополняется разными задачами, которые я периодически беру в работу!

📌Более того, не так давно познакомился с коллегой, который надиктовывает идеи на диктофон, потом с AI-ассистентами трансформирует информацию в текст, группирует и затем берет в работу (но это уже другой уровень лично для меня).
🔥24👍7🎉2🏆1
📹 Запись открытого урока по System Design собеседованиям!

На открытом уроке разбирали:
— из чего состоит System Design-интервью и как его проходят
— 16 типичных ошибок, которые допускает большинство кандидатов
— какие задачи дают чаще всего на собеседованиях и как к ним готовиться
— советы по подготовке, чтобы не учить всё подряд, а фокусироваться на нужном

🔗 Ссылка на видео:
https://youtu.be/HRPcPNJ5zTg
1🔥21👍9
🏘 Три месяца назад переехал из Москвы в Ростов-на-Дону

Ростов для меня город с неповторимым южным колоритом. Здесь нет московской суеты, зато есть своеобразный ритм. Здесь люди проще, открытее, и общение дается легче. Ну и конечно, это то место, где я родился и вырос!

Эти три месяца я много думал о том, что же такое для меня "дом". Это стены? Географическая точка на карте? Город, где больше возможностей?

📌 Пришел к интересному выводу: дом там, где ты. Неважно, где ты живешь, важно то, какое у тебя состояние при этом.

Думаю, что можно быть в самом красивом и успешном городе мира, но чувствовать себя потерянным и несчастным. А можно быть в небольшом и привычном месте, но испытывать абсолютный покой, гармонию и ощущение "на своём месте".

P.S. это не значит, что Москва "плохая", нет! Москва - прекрасный город, куда я вернусь осенью.
2🔥70👍26❤‍🔥72
Навигация по каналу или пост для прибывших

Добро пожаловать в мой канал. Здесь я делюсь знаниями, опытом, материалами по программированию, личными историями и лайв-контентом.

Чтобы вам было проще ориентироваться, собрал лучшие материалы в одном месте. А в конце каждого поста есть ссылка на Навигацию, чтобы вернуться обратно в этот пост.

Навигация разделена по разделам.

📌 Открытые уроки:
Подготовка к System Design интервью
Итераторы в Go
Concurrency задачи с Go собеседований
Паттерны использования каналов в Go
Решение сложных задач с Go собеседований
Внутреннее устройство аллокатора Go
Массивы и срезы под капотом в Go
Внутреннее устройство мьютексов в Go и Linux
Внутреннее устройство планировщика Go
Lock-free структуры данных
Барьеры памяти
Tеория кэширования
Теория шардирования

📌 Статьи:
Утечки памяти в Go
Паттерны конкурентного программирования в Go для работы с базами данных
Как подготовиться к System Design интервью

📌 Конференции и митапы:
Черная магия unsafe в Go - Cloud.ru meetup
5GB трейсов в секунду или как устроена система трассировки в Ozon - Saint Higload++
Углубленная работа с памятью в Go - Ozon meetup

📌 Подкасты:
Как построить карьеру в IT
Карьера программиста в BigTech
Особенности Golang
Доходы программистов в BigTech
Поиск первой работы в IT
Путь от джуна до тимлида Яндекса
Как попасть в BigTech
Работа в BigTech
Менторство в IT

📌 Видео:
Оптимизации в Go
Выравнивание структур данных в Go
Закон Амдала
Оптимизируем код на Go в 10 раз
Пишем рантайм Go на C - часть 1
Пишем рантайм Go на C - часть 2

P.S. Не забудь подписаться!
235👍19🔥15
👥 Встреча в Ростове-на-Дону

Приглашаю на неформальную встречу подписчиков из Ростова-на-Дону 13 июля (воскресенье)! Давайте соберемся, чтобы поболтать о работе, жизни и всем, что интересно.

Если вы живете в Ростове и готовы уделить время, присоединяйтесь к этому чату. Там мы вместе определим место и формат встречи, исходя из количества желающих.

Кто я | Навигация | Спасибо
1🔥18❤‍🔥2👍2🎉2
Привет! Меня зовут Владимир. Решил немного освежить информацию о себе.

Мне 27. Родился в селе Кагальник Ростовской области. Учился на программиста в филиале ДГТУ в Азове (среднее профессиональное образование). На третьем курсе увлёкся разработкой — и с тех пор программирование стало не просто учёбой, а моим хобби.

В 19 лет попал на стажировку в GkmSoft, где на C++ занимался разработкой 3D viewer-ов. После колледжа остался там работать младшим разработчиком.

Позже переехал в Таганрог — делал мобильные игры (match-3). Параллельно получил высшее образование (заочно, больше формально) на кафедре «Информационные системы».

В 21 год, во время карантина, переехал в Москву. Работал C++ разработчиком в Тинькофф — писал высоконагруженный сервис для таргетированной рекламы (RTB). Заодно преподавал на курсе по C++ в GeekBrains.

Потом был короткий опыт в Kaspersky Lab: работал над Kaspersky Endpoint Security. Ушёл быстро — задачи в реальности не совпали с тем, что обсуждали на собеседовании.

После этого перешёл в VK (тогда ещё Mail.ru). Там поддерживал ICQ и участвовал в разработке MyTeam — корпоративного мессенджера на базе ICQ. Именно здесь впервые попробовал Go.

В 2022 году решил полностью перейти на Go — и устроился в Ozon ведущим разработчиком. Делал систему распределённой трассировки запросов (7 ГБ/с трафик) и сервис непрерывного профилирования. Параллельно руководил курсом по Go в OTUS.

Следующим был Яндекс. Устроился старшим разработчиком в команду логирования и распределённой трассировки запросов (11 ГБ/с трафик). Через три месяца стал тимлидом команды распределённой трассировки запросов. С нуля собирал свою команду.

Спустя год решил покинуть Яндекс и заняться собственными проектами.

Дальше коротко о моих проектах:

• В 2020 запустил YouTube-канал о программировании

→ 150+ видео, 30 000+ подписчиков, 3+ млн просмотров

• В 2022 создал сервис it-interview.io

→ подготовка к IT собеседованиям и проведения интервью в компании
→ 500+ mock-интервью, 50+ собеседований в компании

• В 2023 сделал школу по программированию balun.courses

→ курсы для разработчиков с опытом
→ 1000+ учеников
5🔥104👍3217❤‍🔥4🏆3👏1
📹 Запись доклада с Golang Conf о черной магии unsafe в Go

Доклад охватывает различные аспекты безопасного и небезопасного использования пакета unsafe в Go, при помощи которого можно ускорять код в десятки раз! Также в докладе расскажу, как можно создавать срезы без дорогостоящей инициализации, избавляться от Bound Checks и конвертировать строки в срезы и обратно без лишних копирований и аллокаций памяти.

🔗 Ссылка на запись доклада

Черная магию будет в конце! С ее использованием разберемся, как можно проезжаться по памяти для анализа сложных структур данных из рантайма Go, модифицировать иммутабельные строки в Go и получать доступ к приватным полям структур.

Кто я | Навигация | Спасибо
2🔥39👍13🎉4🏆32
Backend-митап в Москве: многопоточность, микросервисы, алгоритмы и System Design

• 20 сентября
• Пространство «Весна»

Если хочешь разобраться глубже в backend-разработке, системном дизайне, алгоритмах и многопоточке — приходи.

Говорим по существу — про то, что важно в работе и на собеседованиях:
– как строить микросервисы, не превращая код в ад;
– что ждёт на System Design-интервью и как его пройти.
– как готовиться к собесам и системно учить алгоритмы;
– как устроена модель памяти Go и где тебя может поджидать баг.

🎓 Программа

15:00 – 15:30 – Общий сбор

15:30 – 15:50 – Нетворкинг - разделимся на группы, пообщаемся и заведем новые знакомства

15:50 – 16:30 – Игорь Панасюк (Senior в Яндекс) «Особенности и ловушки модели памяти в Go: тайны синхронизации»

16:30 – 17:10 – Леонид Ченский (TeamLead в OzonTech) «Пишем микросервисы на Go как в BigTech, с нуля»

17:10 – 17:30 – Перерыв на фуршет

17:30 – 18:10 – Александр Алексеев (CTO в BigTech) «Зачем и как изучать алгоритмы»

18:10 – 18:50 – Владимир Балун (ex-TeamLead в Яндекс) «Как пройти System Design интервью: взгляд со стороны интервьювера и кандидата»

18:50 – 19:00 – Завершение контентной части, фотосесия

19:00 – 20:00 – Фуршет и нетворкинг на площадке

20:00 - Afterparty - по желанию едем в бар неподалеку и продолжаем общение в неформальной обстановке

🎁 Подарки за лучшие вопросы:

— книги по backend разработке от спикеров
— сертификаты на бесплатное обучение на любом из курсов школы
— бесплатные mock-собеседования от интервьюверов из BigTech
— скидки на обучение в нашей школе

Место: Пространство «Весна»
Спартаковский переулок 2с1, подъезд 7

5 минут от м. Красносельская
7 минут от м. Бауманская

❗️Стоимость билетов пока неизвестна, но уже сейчас можно записаться по ссылке

Кто я | Навигация | Спасибо
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥247👍5🤩2
🤖 Недавно провели с Олегом Козыревым небольшой эксперимент!

Сейчас многие говорят о том, что с AI-инструментами можно писать код в разы быстрее. Мы решили проверить, что будет способен написать senior-разработчик за час вместе с AI-инструментами. А в конце попробовали оценить, сколько бы пришлось писать такой код без AI-инструментов. В общем, посмотреть эксперимент можно по ссылке.

Кто я | Навигация | Спасибо
🔥31👍12🎉21🏆1
Forwarded from balun.courses
💾Чек-лист по сбору нефункциональных требований на System Design интервью

На собеседовании времени мало, а понять систему нужно быстро. В реальной работе это – процесс с кучей обсуждений и уточнений, но тут важно собрать максимум за короткое время.

Подготовили структуру, которая помогает не упустить важное и задать правильные вопросы, не тратя на сбор нефункциональных требований лишнего времени 💚

Сохраняй себе – точно пригодится на собеседованиии по System Design! И не забудь скинуть другу, который тоже готовится)
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥34👍217
🚀Сборщик мусора в Go: новый GC greenteagc, внутреннее устройство и оптимизации

📆 28 июля в 19:00 по МСК пройдет бесплатный открытый урок по оптимизациям в Go от старшего разработчика из Яндекса!

На открытом уроке:
- познакомишься с новым GC greenteagc — как устроен и в чём превосходит текущий сборщик мусора
- разберешь внутреннее устройство, особенности и подводные камни сборщика мусора в Go
- научишься применять debug.SetGCPercent и debug.SetMemoryLimit на практике
- узнаешь, как профилировать и ускорять сборщик мусора

Регистрация по ссылкe
2🔥27👍87
🎓Популярные алгоритмические задачки

Недавно с Олегом Козыревым порешали популярные задачки с алгоритмических собеседований. Разобрали два популярных и известных метода для решения задач - метод двух указателей и хэш-таблицы! Посмотреть видео можно по ссылке.

Кто я | Навигация | Спасибо
🔥223👍3