Golang вопросы собеседований
13.5K subscribers
631 photos
3 videos
1 file
433 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
加入频道
👣 Вопросы и ответы по сетям и протоколам

Очень часто на собеседовании Go-разработчика спрашивают не только про Go, но и про сети, протоколы и всё такое, что вполне ожидаемо.
Так держите подборку из таких вопросов и ответы к ним

🟡 Подборка

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Подборка из 13 задач по Go с решениями

Сами задания выглядят так:
— Найти пару чисел с заданной суммой из 2 массивов
— Удаление одного узла в односвязном списке с заданным указателем
— Алгоритм кластеризации k-means
— Объединить 2 отсортированных списка в один отсортированный список
— Печать чисел Фибоначи
— Разворот строки
— Задача на работу со скобками в строке
— Печать суммы чисел из диапазона
— Самая длинная допустимая подстрока в круглых скобках
— Создание типа Set
— Подсчет слов в соответствии с условием
— Поиск наиболее похожих строк
— Поиск в ширину и в глубину

▶️ Задачи с решениями

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Хочется писать более качественный код и расти профессионально в Golang?

Пора разобраться, как применять конкурентность на практике?

Спишь и видишь, как работаешь над большими проектами, с большими нагрузками, создавая влияние своей работой на миллионы пользователей?


На курсе «Golang-разработчик» за 12 недель ты освоишь инструменты и технологии, которые используются в реальных проектах в бигтехе.

✔️ 56 часов практики + 26 часов теории
✔️ 6 онлайн-встреч со спикерами
✔️ Итоговый проект в портфолио на выбор (или свой)
✔️ Чат со студентами и экспертами
✔️ Сертификат о прохождении обучения


🙂Спикер Виталий Лихачев, Senior Software Engineer в Avito.


Что будет на курсе?
🔘Научишься писать проекты по best practices.
🔘Поймешь, как эффективно распиливать монолит на микросервисы и что ожидать от такого разделения.
🔘Создашь готовый сервис на Go.
🔘Изучишь устройство observability больших систем и сможешь на практике попробовать популярные инструменты.
🔘Сможешь аргументированно выбирать асинхронный подход при соединении сервисов с целью снижения связности системы и повышения общей надежности.


Сделаешь итоговый проект (на выбор):
🔘 Онлайн-банк;
🔘 Мессенджер;
🔘 Файловое хранилище с подпиской на события;
🔘 Свой проект.



Курс «Golang-разработчик»
🔜 старт 23 мая
🔜 занять место на потоке
🔜 оплата в рассрочку 10 000 ₽/мес, полностью или от компании.

Реклама ООО «Слёрм» ИНН 3652901451
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 76 вопросов по Go с ответами для подготовки к собеседованию

Здесь собраны абсолютно разные вопросы, вот некоторые из них:
— как правильно следует выводить ошибку err?
— что такое канал?
— как объяснить Go, что нужно импортировать пакет из другого места?
— что измеряет функция len() у строки, закодированной в UTF-8?

▶️ Вопросы и ответы

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Шпаргалка по Go

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

📎 Cheat sheet

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Markdown — в HTML

Отличная идея для пет-проекта — генератор статических сайтов для преобразования Markdown в HTML.

Можно использовать в виде CLI:
go get -u github.com/gomarkdown/mdtohtml

🟡 Туториал
🖥 GitHub

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Подборка полезных ресурсов для подготовки к собеседованию по Go (в особенности к алгоритмической части)

Временная сложность алгоритмов
O-нотация
Связные списки
Хэш-таблица
Рекурсия
Дерево
Бинарное дерево поиска
Бинарный поиск
Алгоритм Дейкстры

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Сетевое программирование в Go

Держите открытую книгу, в которой в деталях описано, как Golang взаимодействует с сетью
Описывается использование протоколов TCP, UDP, IP, модель OSI и другие аспекты сетевого программирования с позиции Go-разработчика

▶️ PDF

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Установка Go на Linux без использования пакетного менеджера

Надеюсь, не пригодится, но если что, у вас будет план действий.
Не благодарите)

Итак, вот шаги:
🟡1. Создать каталоги где будет размещаться Go. В примере, Go размещается в домашнем каталоге пользователя. Для создания сразу нескольких каталогов можно использовать команду mkdir. Ключ -p автоматически создаст недостающие директории.
$ mkdir -p $HOME/golang/libs


🟡2. Скачать последнюю версию golang с сайта https://golang.org/dl/ и распакуйте его в ранее созданную папку. Также можно воспользоваться командами ниже
$ wget https://dl.google.com/go/go1.12.1.linux-amd64.tar.gz
$ tar -C $HOME/golang -xzf go1.12.1.linux-amd64.tar.gz


🟡3. Должна получиться следующая структура:
/home/{user_name}/golang/go — папка из архива
/home/{user_name}/golang/libs — папка для загрузки сторонних библиотек

🟡4. Добавить переменные окружения в выполнив команды
$ echo "export GOPATH=$HOME/golang/libs" >> $HOME/.profile
$ echo "export GOROOT=$HOME/golang/go" >> $HOME/.profile
$ echo "export PATH=$PATH:$GOROOT/bin:$GOPATH/bin" >> $HOME/.profile


🟡5. Применить изменения в файле, выполнив команду
$ source $HOME/.profile


🟡6. Проверить что Go доступен
$ go
Go is a tool for managing Go source code.
....


🟡7. Если все работает, то можно перелогиниться, чтобы новые переменные окружения применялись автоматически. Можно и не перезагружаться, если все шаги выполнены верно.

Примечания
1. Если не планируется использовать текстовые редакторы с плагинами для Go, то можно добавить переменные окружения из шага 4 в файл $HOME/.bashrc или $HOME/.bash_profile (если используется bash).

2. Примечание 1 справедливо и для SSH, если планируется использовать компилятор Go на удаленном хосте. Или можно каждый раз при заходе на удаленный хост выполнять команду из шага 5.

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Go-утилита для преобразования изображения в ASCII

Интересная идея для пет-проекта; к тому же есть большой простор для улучшений — вот что можно доработать:
— выбор количества символов в итоговой ASCII-графике
— отображение нескольких вариантов полученной графики с использованием разных наборов символов
— выбор уровня детализации изображения

🖥 GitHub

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Отличная шпаргалка по Go

Поможет быстро погрузиться в Go или освежить базовые концепции

📎 Cheat sheet

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM