Библиотека Go для собеса | вопросы с собеседований
6.88K subscribers
229 photos
8 videos
1 file
453 links
Вопросы с собеседований по Go и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/0b524a15

Для обратной связи: @proglibrary_feeedback_bot

Наши каналы: https://t.iss.one/proglibrary/9197
Download Telegram
ПОСЛЕДНИЙ ДЕНЬ
КУРСЫ ПОДОРОЖАЮТ ЗАВТРА‼️

ML за 34к вместо 44к + Python в подарок
Математика → второй доступ в подарок
— Ранний доступ к AI-агентам с 15 сентября
— И МОЖНО УСПЕТЬ КУПИТЬ ВСЁ ДО ПОДОРОЖАНИЯ

👉 Proglib Academy
Назовите главные операторы в Go по умолчанию

Арифметические
+ — сложение
-вычитание
* — умножение
/ — деление
% — остаток
++ — инкремент
--декремент

Сравнительные
== — равно
!= не равно
< — меньше
<= меньше или равно
>больше
>= — больше или равно

Логические
&&И
|| — ИЛИ
! НЕ

Битовые
& — И
|ИЛИ
^XOR
&^ — AND NOT (сброс битов)
<<сдвиг влево
>> сдвиг вправо

Операторы
=присваивание
+=, -=, *=, /=, %= составное присваивание
&=, |=, ^=, <<=, >>=, &^= — битовое составное присваивание

Прочие
& — взять адрес
*разыменование
<- — канал (отправка/получение)
:=объявление + присваивание

🐸 Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱4👍21
Опишите уровень изоляции транзакций Read Uncommitted

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

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

Используется, когда не требуется высокая консистентность данных: Например, в отчетных системах или аналитических приложениях, где не критично видеть точные данные. Также может использоваться для ускорения чтения и при тестировании.

🐸 Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
Как вам вопросы прошедшей недели

Оцените их по шкале 🔥,❤️,👍,😢, 🥱,
где 🔥 — это супер, а 🥱 — это скучно.

Также приветствуется фидбек в комментах.

🐸 Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥97👍6🥱1
Что такое счетный семафор и чем он отличается от бинарного семафора

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

В отличие от бинарного семафора, который может быть только в двух состояниях (0 или 1), счетный семафор может принимать любые целые значения, позволяя контролировать доступ к нескольким ресурсам одновременно.

🐸 Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Что такое «грязные чтения», «неповторяющиеся чтения» и «фантомные записи»

Грязные чтения: когда транзакция читает данные, которые были изменены другой транзакцией, но еще не были зафиксированы. Если вторая транзакция откатится, данные, прочитанные первой транзакцией, будут некорректными.

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

Фантомные записи: когда транзакция выполняет запрос (например, SELECT), и в ходе выполнения транзакции другая транзакция добавляет или удаляет строки, что изменяет результаты запроса.

🐸 Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Переворачиваем календарь — а там скидки, которые уже закончились.

Но мы их вернули на последний день 🤔

До 00:00 третьего сентября (цены как до 1 сентября):

▪️ Математика для Data Science — 35.199 ₽ вместо 44.900 ₽
▪️ Алгоритмы и структуры данных — 31.669 ₽ вместо 39.900 ₽
▪️ Основы IT — 14.994 ₽ вместо 19.900 ₽
▪️ Архитектуры и шаблоны — 24.890 ₽ вместо 32.900 ₽
▪️ Python — 24.990 ₽ вместо 32.900 ₽
▪️ ML для Data Science — 34.000 ₽ вместо 44. 000 ₽
▪️ AI-агенты — 49.000 ₽ вместо 59.000 ₽

👉 Хватаем скидки из прошлого

P.S. Машину времени одолжили у дяди Миши
🥱1
Объясните, что такое операции P и V в контексте счетного семафора.

P-операция (wait): поток пытается захватить ресурс. Если счет семафора больше нуля, ресурс захватывается, и счет уменьшается. Если счет равен нулю, поток блокируется до освобождения ресурса.

V-операция (signal): поток освобождает ресурс. Счет семафора увеличивается, и если есть заблокированные потоки, один из них может быть разблокирован.

🐸 Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3
😎 Сколько баллов набрали вы?

Голосуйте, какой у вас уровень разработчика:

😁 — 5-12 баллов (стажер)
👍 — 13-25 баллов (джуниор)
⚡️ — 26-40 баллов (джуниор+)
👏 — 41-60 баллов (миддл)
🔥 — 61-80 баллов (миддл+)
🎉 — 81-100 баллов (сеньор)
🤩 — 100+ баллов (тимлид)

Но вот в чем прикол — опытный разработчик набирает баллы не случайными косяками, а осознанными решениями.

👉 Научим, как быстро прокачаться от стажера до сеньора
🤩4
🎮 КВЕСТОВАЯ ЛИНИЯ: «Путь Data Scientist'а»

⮕ Твой стартовый набор искателя данных:
Python — твое легендарное оружие (урон по багам +∞)
Математика — твой базовый интеллект (влияет на понимание алгоритмов)
Машинное обучение — твое дерево навыков (открывает новые способности)


⚡️ АКТИВЕН ВРЕМЕННЫЙ БАФФ: «Щедрость наставника»

Эффект: –30% к цене полного набора ДСника
Было: 121.800 ₽ → Стало: 84.900 ₽

☞ Что ждет тебя в этом квесте

— Получение артефактов: портфолио проектов и сертификаты
— Прокачка от новичка до Senior Data Scientist
— Босс-файты с реальными задачами из индустрии
— Доступ к гильдии единомышленников

📎 Забрать бафф
Рассрочки: 3 мес | 6 мес | 12 мес
🥱1
Как увеличение уровня изоляции транзакций влияет на производительность системы

С повышением уровня изоляции транзакций увеличивается вероятность блокировок и конкуренции за ресурсы.

Например, на уровне Serializable может быть больше блокировок, так как транзакции должны выполнять операции последовательно. Это может снизить производительность системы, особенно при высоком уровне параллелизма.

Напротив, на более низких уровнях изоляции (например, Read Uncommitted) транзакции могут работать быстрее, но есть риск несогласованности данных.

🐸 Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Почему изоляция транзакции Serializable снижает производительность и когда его стоит применять

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

🐸 Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1