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

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

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

Для связи: @ruslan_kuyanets
Download Telegram
#полезное
😎 Пакет resend-go предоставляет удобный способ отправки email-сообщений в Go-приложениях через Resend API

https://github.com/resend/resend-go

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Middle Golang Backend-разработчик в Газпром.

Техническое собеседование. Осень 2024. Вилка 150к+. Опыт в резюме: 3 года. Были вопросы про текущее место работы.

Вопросы:
- Что будет, если попытаться писать в закрытом канале?
- Что такое FULL VACUUM и зачем он применяется?
- Что такое транзакции в PostgreSQL?
- Что такое индекс в базе данных?

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

#собес
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍1🔥1🤔1
#полезное
😜 Реализация ротации логов в Go: особенности logrus, zap и slog

В большинстве существующих логирующих библиотек, включая стандартную библиотеку log/slog из Go, обычно предусмотрена поддержка ротации и разделения лог-файлов. Однако эти возможности не идут «из коробки» — их необходимо явно настраивать.

В этой статье мы рассмотрим несколько популярных логгеров, таких как logrus, zap и официальную библиотеку slog. Мы разберем ключевые архитектурные решения в этих библиотеках и обсудим, как именно они позволяют настраивать ротацию и разделение логов
Читать

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21
#Собес #kubernetes
🤔 Что такое Custom Resource Definition (CRD) в Kubernetes?

💬 Кратко:
CRD - это способ добавить в Kubernetes новый тип ресурса, например Database ИЛИ Cache , который будет управляться пользовательским контроллером.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🔥1
#полезное
🥄 Permitta — простая и понятная Go-библиотека для контроля доступа (permission management)

Что умеет:
- Управление правами CRUD‑операций (Create, Read, Update, Delete, Execute)
- Тайминг доступа: можно задать, когда права действуют (час/день/неделя и др.)
- Ограничения по квоте и пакетной обработке
- Контроль на уровне сущности: пользователь, роль, группа, организация
- Упорядочение проверки прав — от общего к частному

Почему удобно:
🔵 Логика интуитивна, но справляется с комплексными сценариями
🔵 Ясная структура — подойдёт и новичкам, и опытным разработчикам
🔵 Open-source (MIT), легко добавить в проект:

go get -u github.com/limitlessDonald/permitta
Github

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Go для вкатунов: 5 вопросов, которые точно зададут на собеседовании

Если вы ищете первую работу Go-разработчиком, то скорее всего вас будут проверять не на знание всех пакетов из стандартной библиотеки, а на понимание базовых принципов языка.
Вот 5 типичных тем, которые встретятся на собеседованиях с вероятностью 90%

1. Как работают слайсы в Go
Что такое len и cap, чем слайс отличается от массива, что происходит при append.
Часто просят объяснить, в каких случаях изменение слайса внутри функции изменит оригинал, а в каких нет.

2. Что такое горутины и как их синхронизировать
Объясните, что такое конкурентность в Go, как запускается горутина, зачем нужны WaitGroup, Mutex и atomic.
Почти всегда проверяют, понимаете ли вы, что без синхронизации возникает гонка данных.

3. Что такое замыкание и как оно ведёт себя в горутинах
Классический вопрос: почему в цикле с горутинами часто выводятся одинаковые значения.
Нужно рассказать, как работает захват переменных в анонимных функциях и как это исправить.

4. Как работает передача данных через каналы
Различие между буферизированными и небуферизированными каналами, что будет при отправке или чтении, если нет готового получателя/отправителя.
Могут попросить реализовать простую передачу данных между двумя горутинами.

5. Как обрабатывать ошибки в Go
Почему в Go нет исключений как в других языках, как работает паттерн if err != nil { ... }, что такое panic и recover и когда их стоит использовать.

Вывод:
Если вы сможете уверенно и без заученных формулировок ответить на эти вопросы, то уже будете выглядеть как кандидат, который понимает нюансы работы с языком.
Конечно же это не все темы, которые нужно знать для успешного прохождения собеседования, но это та база, которую знает абсолютно каждый разработчик на GO!
👍3🔥2🤔21
#полезное
🤣 В Go каждая переменная и каждый импорт в коде должны использоваться — иначе компилятор выбросит ошибку. Это помогает ускорить компиляцию, но бывают случаи, когда хочется обойти это поведение. В таких ситуациях в качестве заглушки можно использовать пустой идентификатор (_)

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😅 Logging in Go with Slog: A Practitioner’s Guide

Практическое руководство по работе с встроенным пакетом log/slog (доступен с Go 1.21), от основ до продвинутых подходов структурированного логирования. Вы научитесь создавать информативные и полезные логи, которые упростят отладку и мониторинг приложений

https://www.dash0.com/guides/logging-in-go-with-slog

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

Техническое собеседование. Осень 2024. Вилка 300к+. Проект: работа с селлерами вайлдберис. Опыт в резюме 3 года. Было много ИнФраструктурных вопросов.

Вопросы:
- Как реализовать паралельный запуск нескольких запросов к стороннему АРІ?
- Как синхронизировать параллельные вычисления в Go?
- Что делает функция таке и чем она отличается от new?
- Как устроено хранение массивов и срезов в памяти? Что такое capacity?

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

#собес #коллеции
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥31
#Собес #kubernetes
🤔 Что такое Kubernetes Operator?

💬 Кратко:
Operator - это расширение Kubernetes API, которое автоматизирует управление сложными приложениями, такими как базы данных или кэш- системы, путем внедрения специализированной логики.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🔥1
#полезное
😎 Coze Loop — платформа для разработки AI-агентов с открытым исходным кодом. Проект предлагает полный цикл управления AI-агентами: от разработки промптов до мониторинга работы.

Инструмент имеет визуальный Playground для тестирования промптов с возможностью сравнения результатов разных языковых моделей. Для быстрого старта достаточно Docker — проект поддерживает интеграцию с OpenAI и другими LLM. Включает инструменты для оценки точности агентов и отслеживания выполнения запросов.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#Собес #kubernetes
🤔 Каковы лучшие практики развертывания приложений в Kubernetes?

💬 Кратко:
Чтобы правильно развернуть приложение в Kubernetes, следует:
- Использовать декларативный подход (Deployment, Helm).
- Разделять сервисы по разным namespace.
- Настраивать liveness и readiness probe для мониторинга состояния Pod-ов.
- Определять resource limits и requests для оптимального распределения
ресурсов.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
🤯 marchat — лёгкий терминальный чат на Go

marchat — это самохостящийся чат прямо в терминале.
Он прост, кроссплатформенный и поддерживает всё, что нужно команде для быстрой и безопасной переписки.

Фишки:
🟠Устанавливается за пару минут (бинарь или Docker)
🟠 E2E-шифрование (X25519 + ChaCha20-Poly1305)
🟠 Передача файлов до 1 МБ
🟠Темы оформления и TUI-интерфейс (Bubble Tea)
🟠 Плагины: :store, :plugin install и т.д.
🟠Поддерживает админ-команды: :ban, :kick, :cleardb
Github

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