Golang вопросы собеседований
14.9K subscribers
770 photos
15 videos
1 file
564 links
@notxxx1 - админ

@Golang_google - Golang для разработчиков

@itchannels_telegram - 🔥лучшие из ит

@golangl - chat

@golangtests - golang tests

@golang_jobsgo - go chat jobs

@ai_machinelearning_big_data - AI

@data_analysis_ml

РКН: clck.ru/3FmtKd
Download Telegram
👣 Практичный, код-ориентированный гайд по изучению HTTP-фреймворков в Go.

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

Полезно и новичкам, и тем, кто хочет глубже разобраться в экосистеме Go.

#golang
https://github.com/go-mizu/go-fw
Please open Telegram to view this post
VIEW IN TELEGRAM
10🔥8🥰1😁1
💼 ru-test-assignments - большая база реальных тестовых заданий от IT-компаний

ru-test-assignments - это открытая коллекция настоящих тестовых заданий, которые кандидаты получали на собеседованиях в российских IT-компаниях.

Без абстрактных задач «в вакууме» только то, что реально спрашивают.

Что внутри 👇

• Сотни заданий по направлениям:
Frontend, Backend, QA, Android, iOS, Data Science, DevOps
• Компании из топа рынка:
Avito, Яндекс, Тинькофф, Сбер, Ozon, VK и другие
• Разные языки и стеки:
Python, JavaScript, Go, Java, PHP, Ruby, C#
• Готовые задания можно прикреплять в портфолио (например, через Hexlet CV)

Почему это полезно:

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

Отличный ресурс для подготовки к собеседованиям и оценки своего уровня.

https://github.com/Hexlet/ru-test-assignments
3👍3🔥2
🖥 GophrQL - GraphQL toolkit for Go

Что это:
GophrQL — это простая и мощная библиотека на Go, которая помогает строить GraphQL API быстро и с минимальной болью. Она стремится быть легковесной, понятной и удобной для разработчиков, работающих с Go + GraphQL.

Основные фишки:
- Чистый Go-фэйс для описания схемы и резолверов
- Минимум магии и зависимостей
- Явная интеграция с Go-типами
- Хорошо подходит для микросервисов и сервисов с высокими требованиями к производительности

Почему это полезно:
Если вы пишете API на Go и хотите GraphQL без тяжеловесных фреймворков, GophrQL даёт:
✔️ строгую типизацию
✔️ контроль над схемой
✔️ простую и понятную структуру кода
✔️ меньше boilerplate-кода по сравнению с другими Go GraphQL решениями

Кому подойдёт:
- Go-разработчикам, которым нужен GraphQL API
- Командам, ищущим лёгкую альтернативу тяжёлым GraphQL-фреймворкам
- Проектам, где важна производительность и явное управление схемой

🔗 Репозиторий: github.com/maxpert/gophrql
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥3👍2🥰1
> Сlaude code написал 100% нового Claude COWORK от Anthropic за полторы недели
> GPT-5.2 собрал браузер с нуля за одну неделю

Сдвиг уже ощущается в ежедневной работе программиста.


Роль разработчика меняется:
- меньше “писать каждую строку руками”
- больше “направлять ИИ, проверять результат и отвечать за качество”.

По сути, ценность постепенно смещается в:
- постановку задачи и архитектуру
- грамотные требования
- ревью, тесты, безопасность
- понимание системы целиком

Код пишет ИИ.
Разработчик отвечает за то, чтобы это работало правильно.
🌚14🥱103🔥2🐳2
📦 Go Size Analyzer - разложит по полочкам, что именно раздувает твой Go-бинарник

Если ты собираешь проект и видишь: “почему бинарь 80MB?! 😡

Go Size Analyzer инструмент покажет *в точности*, что занимает место внутри compiled binary.

Что умеет:
🔎 Visibility - видно, какие зависимости и пакеты реально раздувают размер
🛠 Optimization - помогает понять, что можно выкинуть/заменить, чтобы сжать бинарь
📊 Comparison - diff-режим: сравнивай размер между сборками и версиями
🧩 Multiple interfaces - есть CLI, TUI, Web UI и даже браузерная WASM-версия
🎯 Actionable insights - проваливайся от пакетов → секций → до конкретных символов

Полезно, если:
- хочешь минифицировать Docker-образ
- делаешь CLI/tooling
- оптимизируешь cold start и деплой

GitHub: https://github.com/Zxilly/go-size-analyzer
👍12🔥84
👣 go-size-analyzer

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

Github

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍21🥰1
🚀 Фреймворк для разработки LLM-приложений на Go

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

🚀 Основные моменты:
- Удобные абстракции и реализации компонентов для LLM-приложений.
- Система компоновки с поддержкой строгой типизации и управления потоками.
- Четкие и простые API для разработчиков.
- Набор лучших практик и примеров использования.
- Инструменты для визуализации и отладки на всех этапах разработки.

📌 GitHub: https://github.com/cloudwego/eino

#go
👍43🔥3🥰1
👣 Generics-first HTTP клиент для Go

httpx - это тонкая обертка над стандартным net/http, сделанная с упором на generics.

Идея простая:
- сохранить всю мощь и escape hatches обычного http.Client
- но сделать 90% повседневных запросов максимально простыми и типобезопасными

Что дает httpx
- типизированные запросы и ответы через generics
- минимум бойлерплейта для обычных GET/POST
- при необходимости — полный доступ к низкоуровневому API
- не прячет net/http, а аккуратно его расширяет

Подходит когда:
- надо быстро писать HTTP-код без ручного json.Unmarshal
- важна типобезопасность
- не хочется тяжелых фреймворков

Хороший пример того, как generics в Go можно использовать по делу, а не ради абстракций.

https://github.com/goforj/httpx
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥2😢1
🔍 Понимание процессов с witr

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

🚀 Основные моменты:
- Объясняет, почему процесс существует
- Упрощает диагностику и отладку
- Поддерживает анализ по имени, PID и порту
- Выводит данные в удобочитаемом формате
- Безопасен и не требует конфигурации

📌 GitHub: https://github.com/pranshuparmar/witr
🔥151👍1
👣 Chitosocket: сверхлёгкая библиотека WebSockets для Go

Проект предлагает простую и быструую реализацию WebSocket-соединений с поддержкой *room systems* — как в чатах или игровых серверах.

#golang

https://github.com/sairash/chitosocket
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔5👍4🔥43
💡 Portmaster: бесплатный open-source фаервол, который берет на себя всю тяжелую работу по защите сети.

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

Что умеет Portmaster:
• перехватывает весь сетевой трафик
• блокирует трекеры и нежелательные подключения
• позволяет настраивать правила для каждого приложения
• работает локально, без «облака»

Отличный вариант, если хочешь прозрачности в сетевых запросах и меньше лишней телеметрии.

GitHub: https://github.com/safing/portmaster
👍63🥰1
🚀 Фреймворк для разработки LLM-приложений на Go

Eino - это мощный фреймворк для создания приложений на основе LLM, вдохновленный лучшими практиками из сообщества. Он предлагает простоту, масштабируемость и надежность, а также множество компонентов и инструментов для упрощения разработки.

🚀 Основные моменты:
- Удобные абстракции и реализации компонентов для LLM-приложений.
- Система компоновки с поддержкой строгой типизации и управления потоками.
- Четкие и простые API для разработчиков.
- Набор лучших практик и примеров использования.
- Инструменты для визуализации и отладки на всех этапах разработки.

📌 GitHub: https://github.com/cloudwego/eino

#go
6🤔2
🔍 Coroot — принципиально новый подход к мониторингу приложений. Этот open-source инструмент использует eBPF для автоматического сбора метрик, логов и трейсов без необходимости ручной интеграции. Он не просто собирает данные, а превращает их в готовые инсайты.

Инструмент обладает встроенной аналитикой. Система автоматически строит карту сервисов, выявляет аномалии и даже отслеживает SLO. При этом не нужно настраивать сложные дашборды — достаточно развернуть контейнер в Kubernetes или через Docker.

🤖 GitHub
👍6🔥3🥰2
👣 Websocket

Если начинаешь новый проект на Go, стоит смотреть в сторону этой либо.

Почему это хорошее решение сейчас:

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

Главное отличие по производительности - zero-alloc чтение и запись.
У gorilla/websocket есть накладные аллокации, которые складываются при высоких RPS.

go get github.com/coder/websocket

Итого: меньше кода, проще поддерживать, выше скорость - отличный вариант для новых сервисов.

github.com/coder/websocket
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍52👏1🌭1
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ Чек-лист для запуска 1000 задач с использованием пула воркеров в Go.

Сохрани себе: Чтобы запустить 1000 задач параллельно в Go, тротлинг и использование пула воркеров - ключ к сохранению ресурсов сервера. Применяй следующий пример с использованием канала и горутин.



package main
import (
"fmt"
"sync"
)
func worker(id int, wg *sync.WaitGroup) {
defer wg.Done()
fmt.Printf("Worker %d is processing\n", id)
}
func main() {
const numWorkers = 100
const numTasks = 1000
var wg sync.WaitGroup
taskChan := make(chan struct{}, numWorkers)
for i := 0; i < numTasks; i++ {
taskChan <- struct{}{} // Добавляем задачу в канал
🤣16🥴141👏1
🔥 Go HTTP Connection Pools - то, что ломает производительность «тихонько»

Очень многие пишут HTTP-клиенты в Go так, будто каждый запрос - независимый.
А потом удивляются:
- почему нагрузка растёт
- почему latency прыгает
- почему CPU уходит в космос
- почему сервис «умирает» на большом количестве запросов

Причина часто одна - пул соединений и то, как Go реально переиспользует TCP/TLS.

Ключевая мысль:
http.Client в Go - должен быть долгоживущим
создавать http.Client{} на каждый запрос - почти всегда ошибка

Почему это важно:
- TCP соединения переиспользуются через keep-alive
- TLS рукопожатие дорогое (особенно при высокой частоте запросов)
- пул соединений живёт внутри Transport
- если вы постоянно создаёте новые Transport`/`Client - вы постоянно пересоздаёте пул

Что стоит запомнить:
- один `http.Client` на сервис
- настраивайте Transport под нагрузку
- следите за MaxIdleConns, MaxIdleConnsPerHost, IdleConnTimeout
- таймауты - обязательны (иначе получите вечные зависания)

Если ваш сервис ходит в другие сервисы - connection pool это не «оптимизация», а база.

Источник: davidbacisin.com/writing/golang-http-connection-pools-1
👍91🔥1
📌 GitHub: gocronx-team / gocron — планировщик задач для Go

Если ты пишешь на Go и тебе нужно запускать фоновые задачи по расписанию - этот проект стоит добавить в закладки.

gocron - это лёгкий и удобный планировщик задач, встроенный прямо в приложение. По сути, это программный аналог cron, но без внешних конфигов и системных настроек.

🚀 Что умеет

- Запуск задач каждые N секунд / минут / часов
- Планирование на конкретное время
- Работа внутри Go-приложения
- Подходит для сервисов, ботов, API, микросервисов
- Простая интеграция без тяжёлых зависимостей

Почему лучше обычного cron

- Управляется кодом
- Не зависит от ОС
- Работает внутри контейнеров без лишней настройки
- Легко масштабируется вместе с сервисом

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

🔗 github.com/gocronx-team/gocron
🔥53
🔥 Полезная подборка каналов только код, практика и самые передовые инструменты, которые используют разработчики прямо сейчас.👇

🖥 ИИ: t.me/ai_machinelearning_big_data

🖥 Python: t.me/pythonl

🖥 Linux: t.me/linuxacademiya

🖥 C++ t.me/cpluspluc

🖥 Docker: t.me/DevopsDocker

🖥 Хакинг: t.me/linuxkalii

🖥 Devops: t.me/DevOPSitsec

👣 Golang: t.me/Golang_google

🖥 Аналитика: t.me/data_analysis_ml

🖥 Javascript: t.me/javascriptv

🖥 C#: t.me/csharp_ci

🖥 Java: t.me/javatg

🖥 Базы данных: t.me/sqlhub

👣 Rust: t.me/rust_code

🤖 Технологии: t.me/vistehno

💰 Экономика и инвестиции в ИИ t.me/financeStable

💼 Актуальные вакансии: t.me/addlist/_zyy_jQ_QUsyM2Vi

🖥 Chatgpt бот в тг: t.me/Chatgpturbobot

📚 Бесплатные ит-книги: https://xn--r1a.website/addlist/HwywK4fErd8wYzQy

🖥Подборка по Golang: https://xn--r1a.website/addlist/MUtJEeJSxeY2YTFi

⚡️ Лучшие ИИ ресурсы: https://xn--r1a.website/addlist/2Ls-snqEeytkMDgy

Самое лучшее в этом: ты учишься даже тогда, когда “нет времени, просто потому что читаешь правильную ленту.
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1🥰1
🔥 Нашёл интересный проект: go-openexr - чистая реализация формата OpenEXR на Go.

OpenEXR - это high dynamic range (HDR) формат, который используют в:
- VFX / кино-пайплайнах
- 3D-рендере
- профессиональной графике
- сценах, где важны точные значения яркости (не просто 8-bit RGB)

Что важно:
pure Go (без C-биндингов)
можно читать/писать OpenEXR прямо в Go-проектах
удобно для серверных пайплайнов, рендера, обработки изображений и ML-датасетов

Если работаешь с графикой, рендером, генерацией данных или компьютерным зрением на Go - мастхев.

GitHub: github.com/mrjoshuak/go-openexr

#golang #OpenEXR #HDR #ImageProcessing
🔥5👍1😍1
This media is not supported in your browser
VIEW IN TELEGRAM
👣 Snitch - это “человеческий ss/netstat” 🐀

Если ты когда-либо открывал ss -tulpn и думал: “что за каша?” — вот решение.

Snitch показывает сетевые соединения нормальным, читаемым видом:
- таблица в терминале
- интерактивный TUI-интерфейс
- быстрый просмотр: кто куда подключён и на каких портах

По сути — это ss/netstat, но сделанный для людей, а не для страданий.

Установка:


go install github.com/karol-broda/snitch@latest


📌 GitHub: github.com/karol-broda/snitch
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6