Golang Backend | YeaHub
630 subscribers
181 photos
18 videos
1 file
306 links
Теория, подготовка к интервью и курсы для Golang разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Download Telegram
#Собес #networks
🤔 Что такое конфиденциальность, целостность и доступность (CIA-триада)?

СІА-триада — это основа информационной безопасности:
🟠 Конфиденциальность (Confidentiality): Данные защищены от несанкционированного доступа.
🟠 Целостность (Integrity): Данные точны и не изменены без разрешения.
🟠 Доступность (Availability): Данные и системы доступны, когда они нужны.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
2
#полезное
🥄 Uncloud — лёгкий кластерный инструмент для управления контейнеризированными приложениями через сеть Docker-хостов.

Это мост между Docker и Kubernetes — без их сложности.

Ключевые возможности

🟠 Децентрализованный кластер без единой точки управления — каждый узел хранит синхронное состояние
🟠 WireGuard mesh — приватная сеть между хостами без лишней настройки
🟠 Автоматическое обнаружение сервисов и балансировка с TLS через встроенный Caddy
🟠 Знакомый Docker Compose — можно запускать привычные compose.yaml, без новой DSL
🟠 Zero-downtime deploy — rolling-обновления и автоматический откат (в разработке)

Где использовать

🔵 Облачные VM, bare-metal, гибридные кластеры
🔵 Для разработчиков и self-hosting — альтернатива Kubernetes
🔵 Домашние лаборатории — развёртывание на spare-хостах без усилий

Почему Uncloud?

- Убирает большую часть боли Kubernetes и Docker Swarm
- Предоставляет понятную и лёгкую инфраструктуру
- Даёт мощь multi-host окружения без операционных сложностей

https://github.com/psviderski/uncloud

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
2🔥2
#полезное
🤯 Практическое руководство по корректному завершению горутин в Go с разбором типичных ошибок, шаблонов и приёмов для управления ресурсами при остановке приложений

https://dev.to/jones_charles_ad50858dbc0/graceful-goroutine-shutdowns-in-go-a-practical-guide-2b9a

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😱 Лёгкий инструмент для деплоя и управления контейнеризированными приложениями в сети Docker-хостов. Закрывает разрыв между Docker и Kubernetes
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
❗️ С чего начать? → Всё самое важное здесь

Guru Golang at YeaHub | МАКСИМ ЛУКЬЯНОВ 👾
Всем привет!

Я Senior Golang-разработчик и ментор. Работаю несколько лет как в крупных, так и в маленьких айти компаниях и ещё постоянно хожу по собеседованиям, чтобы всегда быть в курсе реалий рынка.

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

А ещё я Guru по Golang в YeaHub: отвечаю за качество контента, добавляя новые собеседования и актуализируя вопросы под рынок.

✈️ Мой блог в Telegram

📹 Мой YouTube канал

А ещё подписывайтесь на другие каналы Экосистемы YeaHub

Проект YeaHub:

🚀 YeaHub | 🖥 GitHub | ✈️ Telegram

🎵 TikTok | 📹 YouTube | 👥 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥64👍3🤡3
#Собес #networks
🤔 Назовите три метода аутентификации пользователя.

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
2
#полезное
🤓 Шифрование и дешифрование в Go: практическое руководство

В этом руководстве мы подробно разберём, как работает шифрование и дешифрование в Go, на практике — с примерами кода, которые можно собрать и запустить. Мы охватим базовые темы: от симметричного до асимметричного шифрования, с понятными объяснениями и чистым кодом.


https://dev.to/shrsv/encryption-and-decryption-in-go-a-hands-on-guide-3bcl

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
#полезное
😊 Простой загрузчик конфигураций для Go, который читает и отслеживает изменения из файла, переменных окружения, флагов командной строки и облачных провайдеров (AWS, Azure, GCP).

https://github.com/nil-go/konf

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
#полезное
😇 Ты неправильно пишешь HTTP-обработчики

Большинство Go-разработчиков пишут обработчики, которые не возвращают ошибки (стандартный способ) — они просто логируют их или вызывают http.Error прямо внутри.

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
#Собес #networks
🤔 Что такое серверная ферма?

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
Красивая и функционально насыщенная библиотека командной строки для Go, которая упрощает создание эффектных терминальных приложений

https://github.com/alperdrsnn/clime

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
2🔥1🥰1
👣 Middle+ Golang Backend-разработчик в Ozon

Техническое собеседование. Лето 2025. Вилка 290к+. Проект: мультисервисная платформа для работы с заказами и аналитикой в Ozon. Опыт в резюме — 3.5 года. Было много вопросов по конкурентности, работе с HTTP, базам данных, Kafka, паттерну Outbox, архитектуре и SQL.

Вопросы:
- Зачем нужно закрывать тело HTTP-ответа в Go?
- Что произойдёт, если не закрывать resp.Body в случае ошибки?
- Как запустить HTTP-запросы асинхронно в Go?
- Почему чаще используют небуферизированные каналы?
- Как реализовать worker pool в Go?

Все 15 вопросов можно посмотреть на нашей платформе

#собес
Please open Telegram to view this post
VIEW IN TELEGRAM
4
#Собес #kubernetes
🤔 Что такое service mesh в Kubernetes?

Service mesh - это инфраструктурный слой, который управляет сетевым взаимодействием сервисов в Kubernetes. Он добавляет такие функции, как маршрутизация трафика, балансировка нагрузки, безопасность и мониторинг, без необходимости изменения кода приложения.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#полезное
👨‍💻 powerline-go — минималистичная замена Powerline для Bash, Zsh и Fish, написанная на Go. Проект показывает статус Git/Mercurial, путь в сокращённом виде, виртуальные окружения Python/Ruby и даже время выполнения последней команды.

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
2
#статьи
👋 Статья объясняет, что современные ОС и Go разделяют два типа времени: wall clock (реальное системное время, которое может синхронизироваться или скакать) и monotonic clock (монотонное время, которое только идёт вперёд и не подвержено корректировкам).

В Go time.Now() возвращает структуру time.Time, содержащую оба значения, что позволяет правильно измерять интервалы и избегать багов, связанных с изменением системного времени

https://victoriametrics.com/blog/go-time-monotonic-wall-clock/

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
❤️‍🔥 Использование конструктора запросов dbx в Go для гибких SQL-запросов

Если вам нужен лёгкий и гибкий конструктор запросов в Go без погружения в магию ORM, dbx — отличный выбор. Он позволяет писать SQL-подобные запросы с привязками

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
2
#полезное
😘 Персональный, приватный аналог ngrok — но заточен специально для продакшн-использования и приватных сетей

https://github.com/SyneHQ/rabbit.go

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Подводные камни работы с каналами в Go

Каналы — одна из самых мощных фич Go, но именно с ними связано больше всего граблей. Разберём те, на которые чаще всего наступают даже опытные разработчики.

1. Deadlock из-за незакрытого канала

Закрывать канал — хороший тон, особенно если на нём кто-то ещё читает. Но если закрыть его дважды — получим панику.

ch := make(chan int)
close(ch)
close(ch) // panic: close of closed channel

Решение: Используйте sync.Once или продумывайте логику завершения.

2. Блокировка на пустом канале

Отправка или чтение из nil-канала блокирует горутину навсегда:

var ch chan int // nil
ch <- 42 // вечная блокировка

Решение: Всегда инициализируйте каналы через make.

3. Утечки горутин из-за забытого закрытия

Если горутина читает из канала, а отправитель больше не планирует писать — она зависнет навсегда:

go func() {
for msg := range ch { // вечный цикл, если ch не закрыть
fmt.Println(msg)
}
}()

Решение: Чётко контролируйте жизненный цикл канала.

4. Небуферизированные каналы vs буферизированные

Небуферизированные каналы синхронны — отправитель ждёт получателя. Буферизированные позволяют "развязать" их, но могут маскировать проблемы.

ch := make(chan int, 100)
// Писатель быстро заполнит буфер и уйдёт,
// а читатель может не успеть обработать данные

Решение: Буфер — не всегда решение. Иногда лучше workerpool

5. Паника при отправке в закрытый канал

Попытка писать в закрытый канал вызывает панику:

ch := make(chan int)
close(ch)
ch <- 1 // panic: send on closed channel

Решение: Используйте defer close() и проверяйте статус канала через ok в select.

Вывод:
Каналы — это просто, пока не станет сложно. Главное:
✔️ Всегда закрывайте каналы (но только один раз)
✔️ Не работайте с nil-каналами
✔️ Следите за утечками горутин
✔️ Выбирайте правильный тип канала
4👍2🔥2
#Собес #kubernetes
🤔 Что такое Kubernetes Istio?

Istio - это service mesh, который управляет сетевым взаимодействием сервисов внутри Kubernetes. Он позволяет контролировать трафик, настраивать балансировку нагрузки, управлять безопасностью (аутентификацией и авторизацией) и обеспечивать мониторинг сетевых взаимодействий между микросервисами.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1