Библиотека Go для собеса | вопросы с собеседований
6.84K subscribers
218 photos
5 videos
1 file
404 links
Вопросы с собеседований по Go и ответы на них.

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

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

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

Наши каналы: https://t.me/proglibrary/9197
Download Telegram
Реализуйте связный список

Реализацию смотрите в картинках🔼
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍7👾1
Что такое RPS

Requests Per Second — это метрика, обозначающая количество запросов в секунду, которые система, сервер или API способны обработать. Используется для измерения производительности и нагрузки на веб-приложения, базы данных и сетевые сервисы.
🤔7👍6😁6
Как map добавляет элементы? (m[key] = value)

1️⃣ Вычисляется хеш ключа с учётом hash0.

2️⃣ Определяется номер корзины: bucket = hash % 2^B.

3️⃣ Проверяется наличие места среди слотов:
Если есть — записываем ключ и значение.
Если корзина заполнена — создаётся overflow bucket.
🌚8🤔5👍1
👉 Интенсив «Архитектуры и шаблоны проектирования» для middle и senior-разработчиков

Проверьте свои знания, ответив на 8 вопросов – https://proglib.io/w/4c54dd82

🧐 Кому подойдет?
Разработчикам, которые знают любой объектно-ориентированный язык программирования и хотят углубиться в архитектурные паттерны.

🎮 Как проходит обучение?
В течение всего интенсива вы будете создавать игру «Звездные войны» и применять ключевые архитектурные паттерны. В процессе изучите:
– Как строить гибкую архитектуру, которая не замедляет разработку
– Как применять IoC-контейнеры и писать модульные тесты
– Как использовать SOLID за пределами ООП
– Как внедрять CI/CD и снижать технический долг

👉 Подробная программа обучения

А по промокоду MIDDLE до 28 февраля вы получите дополнительную скидку на обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Работа мечты в один клик 💼

💭 Мечтаешь работать в Сбере, но не хочешь проходить десять кругов HR-собеседований? Теперь это проще, чем когда-либо!

💡 AI-интервью за 15 минут – и ты уже на шаг ближе к своей новой работе.

Как получить оффер?

📌 Зарегистрируйся здесь
📌 Пройди AI-интервью
📌 Получи обратную связь сразу же!

HR больше не тянут время – рекрутеры свяжутся с тобой в течение двух дней! 🚀

Реклама. ПАО СБЕРБАНК, ИНН 7707083893. Erid 2VtzquscAwp
👍1🌚1
Как работает пробинг в Swiss Table

1. Вычисляется хеш ключа (hash(key))
Используется aeshash (на поддерживаемых CPU) или memhash (на других архитектурах).
Определяется bucket: bucket_index = hash(key) % num_buckets.

2. Проверяется metadata (fingerprint) в bucket'е
Каждый bucket хранит 8 слотов, где хранятся fingerprints ключей.
Если fingerprint совпадает → проверяем полный ключ.

3. Если слот занят → применяется квадратичный пробинг:
next_index = (index + i²) % num_buckets
i увеличивается (1, 4, 9, 16...), что уменьшает кластеризацию.
Если после нескольких попыток элемент не найден → он отсутствует.
👍19
Как map ищет элементы (value, ok := m[key])

1️⃣ Находим bucket по hash % 2^B.

2️⃣ Сравниваем tophash (если совпадает — проверяем ключ).

3️⃣ Если не нашли — идём в overflow (если есть).

4️⃣ Если ключ отсутствует — возвращаем ok = false.
🌚14🤔1
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
В чём разница между Query() и QueryRow()?

Query() — выполняет SQL-запрос, который возвращает несколько строк (например, SELECT * FROM users). Возвращает *Rows, требует итерации через rows.Next().

QueryRow() — выполняет SQL-запрос, который возвращает одну строку (например, SELECT name FROM users WHERE id = 1). Возвращает *Row, требует вызова .Scan().
👍6😁2
🤔 Основы математики в Machine Learning / Deep Learning

🗓 6 марта приглашаем вас на прямой эфир, где мы подробно разберем ряд Тейлора, собственные векторы и другие ключевые понятия в ML.
(ссылка)

🌟 Спикер: *Мария Горденко* – Старший преподаватель ФКН НИУ ВШЭ, НИТУ МИСИС, аспирант департамента анализа данных и искусственного интеллекта ФКН НИУ ВШЭ, а также преподаватель на курсе Алгоритмы и структуры данных в proglib academy.


Место работы: Инженер-программист, ведущий эксперт НИУ ВШЭ, цифровой ассистент и цифровой консультант НИУ ВШЭ.


😮 На вебинаре вы узнаете:

🔵 Теорию вероятностей: обсудим случайные величины, вероятность, математическое ожидание и дисперсию.

🔵 Линейную алгебру: изучим векторы, матрицы, собственные векторы и собственные значения.

🔵 Математический анализ: разберем производные и разложение функций в ряд Тейлора.

🔵 Практику: применим полученные знания на реальных кейсах из области Machine Learning и Deep Learning.

🎯 Почему это важно?
Понимание математических основ помогает глубже разобраться в работающих под капотом алгоритмах ML/DL и эффективно применять их на практике.

👉 Присоединяйтесь к нам и совершенствуйте свои навыки в машинном обучении!

📌 Регистрация по ссылке: https://proglib.io/w/01d4b6df
🥰1
Что такое fuzzing?

Fuzzing (фаззинг) — это метод тестирования программного обеспечения, при котором на вход программы подаются случайные, невалидные или некорректные данные с целью выявления уязвимостей, сбоев или неожиданного поведения.
👍10🥱2🔥1
У вас есть код на Go версии 1.20, который использует map. Что нужно сделать, чтобы мигрировать на версию 1.24, которая принесла Swiss Table в Go

Делать ничего не нужно, потому что внешне map не изменилась. Методы работают также, как и до обновления.
😁21🥱9👍5🌚2
Что делает переменная окружения GOOS в Go

Переменная окружения GOOS определяет операционную систему, для которой будет скомпилировано Go-приложение. Она используется при кросс-компиляции, когда код пишется на одной платформе, но компилируется для другой.

Поддерживаемые значения GOOS:
• Linux
• Windows
• macOS
• FreeBSD
• OpenBSD
• NetBSD
• Android
• iOS
• Plan 9


🐸Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥4
Что такое префиксная сумма

Префиксная сумма — это массив, в котором каждый элемент содержит сумму всех предыдущих элементов исходного массива до текущего индекса.

Это позволяет быстро вычислять сумму любого подмассива за O(1) после предварительной обработки.


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

🐸Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10👾4🥰1
Как отличается управление памятью в Go от С++

Управление памятью в Go и C++ различается по подходу. Go использует автоматический сборщик мусора, который упрощает написание кода и уменьшает риск утечек памяти, но может влиять на производительность. C++ же требует ручного управления памятью с помощью операторов new и delete, что дает низкоуровневый контроль и высокую производительность, но увеличивает сложность и риск ошибок.

🐸Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6💯3
Что такое канареечный релиз/тестирование

Это метод развертывания программного обеспечения, при котором новая версия выпускается только для ограниченного числа пользователей перед глобальным запуском.

🐸Библиотека Go для собеса
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🤔2🌚2
Media is too big
VIEW IN TELEGRAM
⚙️ Как работает API

Proglib рассказывает базу в формате рилса
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱8👍5🤔31👾1
Что такое Starvation

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

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

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

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