Как сейчас проходят собеседования на golang разработчика? Что спрашивают?
Инженер отдела разработки
Делаем RPG на Go: часть 0
Один из самых частых вопросов в нашем сообществе разработке игр на Go — это с чего начать.
В этой серии статей мы будем изучать движок Ebitengine и создадим RPG в процессе.
Как сделать NeoVim самым удобным текстовым редактором: туториал по настройке
В этой статье затронем редакторы семейства Vi и разберем базовые сценарии работы с NeoVim. Начинающие специалисты смогут использовать материал в качестве туториала, а опытные разработчики, возможно, отметят для себя что-то новое.
Почему именно NeoVim? Всё просто: этот текстовый редактор сохраняет совместимость с Vim, но также предлагает дополнительные возможности и улучшенный интерфейс. Он позволяет более эффективно работать с кодом, а главное — настраивать редактор под свои нужды.
Баги, которые мы пишем, ищем и исправляем
Привет! Меня зовут Денис, я - разработчик ПО SEDMAX. Это промышленное ПО для сбора и визуализации данных в энергетике. Как и у всех, у нас бывают баги. Мне бы хотелось поделиться опытом в поиске таких багов, а так же порассуждать на тему того, что необходимо было сделать, чтобы баг не появился. У нас серверная часть написана на go в виде некоторого множества сервисов, поэтому специфика большинства багов будет асинхронное взаимодействие, а код примеров представлен на go.
Для чего подходит ультрадешёвый сервер за 130 рублей
В рекламе RUVDS постоянно упоминаются дешёвые VPS-серверы «за 130 рублей в месяц». Но многие думают, что это маркетинговый трюк: такие серверы может и есть, но только для рекламы, чтобы предложение звучало красиво, а в реальности они совершенно непригодны. Ну что может сервер с 512 МБ оперативной памяти? Конечно же, ничего. На него даже операционка не встанет…
В реальности всё совсем иначе. На этот сервер ставятся разные дистрибутивы Linux, задачи он выполняет реальные, и вы даже получаете выделенный IP-адрес.
Регулярные выражения в реальных задачах
Привет, Хабр! Меня зовут Татьяна, я разработчик в Росбанке, и в этом посте я расскажу про регулярные выражения. По своему опыту могу сказать, что регулярки — это очень полезный инструмент. Я часто пользуюсь ими, решая задачи по обработке текста в базах данных. Вначале я остановлюсь на теории, а затем рассмотрю несколько реальных задач, которые были решены с использованием регулярных выражений.
Визуализация исходного кода на языке golang
Исходный код программы надо визуализировать — отобразить в виде схем для лучшего понимания, изучения, осмысления, создания документации и др.
Рисовать схемы вручную никто хочет — надо создавать их полностью автоматически, автодокументацией.
Предлагаю вниманию несколько инструментов для визуализации кода.
Добавляем Starlark в приложение на Go
Starlark (ранее известный как Skylark) - питоноподобный язык, изначально разработанный для системы сборки Bazel, со временем выбравшийся за её пределы через интерпретаторы для Go и Rust.
Язык располагает к использованию в роли инструмента конфигурации, однако, благодаря хорошо написанному интерпретатору на Go и описанию спецификации, его можно использовать в виде встроенного в приложение языка программирования - например, когда вы хотите дать пользователю повзаимодействовать с объектом логики приложения, но не хотите постоянно плодить сущности под почти одинаковые кейсы через сотню настроечных параметров (мой случай).
Достаточно полных туториалов в процессе работы у меня найти не удалось, поэтому появилась идея написать небольшой материал по этой теме. В статье пройдемся по работе с Starlark в Go, от простейшего запуска скрипта до добавления нового встроенного типа.
Погружение в мокирование gRPC сервисов в Go: Тестирование без выполнения RPC вызовов
Для чего я это написал
Встала задача покрыть тестами обработчики http запросов для моего учебного проекта, и я захотел лучше понять данную тему. Чтобы лучше понять, нужно кому-то объяснить :)
Как мы сделали grpc-wiremock: сервис, создающий мок-сервер для ваших контрактов в одну команду
Всем привет, меня зовут Никита, уже пару лет я зарабатываю на жизнь развитием платформы-как-сервис в СберМаркет. В основном отвечаю за инструменты локальной разработки. Являюсь одним из создателей cli, которая позволяет развернуть сервис со всеми его зависимостями в одну команду sbm-cli service up
.
Хочу рассказать, как мы делаем тестирование на моках в PaaS. И поделиться нашим опенсорс-решением на базе Wiremock.
Практические советы по устранению утечек памяти в Go
В этой статье я расскажу, что делать при обнаружении утечки в Go-приложении: чем могут быть вызваны утечки и с чего начать поиск источника проблемы.
Причины утечек
Для начала перечислим возможные причины утечки памяти:
1) Утечка горутин
При утечки горутины утекают также переменные, которые находятся в области ее видимости. Кроме того, стек горутины выделяется в куче
2) Бесконечная запись в глобальные переменные
Приложение может бесконечно писать в какую-нибудь глобальную мапу, в результате чего память будет утекать. Один раз я пытался найти утечку у приложения, которое использовало gorilla context. Особенность этой библиотеки в том, что при обработке http запроса она сохраняет указатель на запрос в глобальную мапу и не удаляет ключ мапы без явного указания в пользовательском коде. Начиная с Go 1.7, разработчики gorilla рекомендуют использовать http.Request.Context()
Сказ о том как pet-project превратился в небольшой пассивный доход (часть 1)
Я backend разработчик с опытом около 3-х лет, пишу в основном на Golang. Проработал в нескольких крупных российских компаниях. Сейчас я параллельно со своей работой пытаюсь сделать удобный, дешевый VPN сервис с высокой пропускной способностью. В этой статье я хочу просто рассказать про жизненный цикл своего проекта. Возможно кому-то будет просто интересно почитать, а кто-то может почерпнуть что-то новое для себя.
CLI инструменты, которые облегчат времяпровождение в терминале и сделают его приятнее
Многие из вас каждый день работают в терминале, так давайте улучшим это времяпровождение вместе. Существует множество полезных инструментов CLI, которые могут сделать вашу жизнь в командной строке проще, быстрее и в целом веселее.
В этом посте описан мой топ-25 обязательных инструментов CLI, на которые я привык полагаться. Если тут нет вашего любимого - дайте мне знать в комментариях :)
Насколько круто иметь свой сервер в комнате
Некоторые олды часто вспоминают эпоху до смартфонов, когда в студенческие времена или в школе у них был любимый настольный компьютер. Он стоял прямо в комнате, рядом с кроватью, и работал как личный ассистент в режиме 24/7: играл фоновую музыку (со специальным плейлистом, когда в гости приходили девушки), показывал фильмы, будил уведомлением из аськи или ирки, скачивал сайты ночью по диалапу и т. д.
Но кажется, что эта эпоха возвращается. Только на новом уровне. Сейчас опять стало очень круто иметь в комнате свой сервер, только он выглядит иначе и выполняет другие функции.
Прагматичные Unit тесты на Golang
Обычный пятничный вечер. Ты уже расслабился, попивая кружечку чая или чего покрепче... Но тут, как назло, бомбит личку в телеге твой надоедливый коллега DevOps со скринами ошибок твоего кривого коммита на серваке. Спустя четно потраченные нервы и логирование всего и вся, все же удалось найти ту самую строчку кода, что так мешала всем жить. Не хотелось бы попадать часто в такие ситуации, да и обременять последующее поколение на те же муки.
В этой статье мы рассмотрим различные методики написания одного и того же теста, их плюсы и минусы, а также попробуем определить: какого плана стоит придерживаться в будущем.
«Смартфон и его команда» или скрываем номер звонящего и управляем вызовом с помощью MTT API
Пофантазируем на тему современных тимуровцев. Мне кажется, что в 2022 это должны быть ребята, которые сделают убойное мобильное приложение для бабушек. Теперь осталось найти для наших тимуровцев достойную задачу.
Итак, представим, что у нас есть собирательный образ персонажа — Бабушка. Да, да именно вот такая прям бабушка с большой буквы, которая всегда напечет пирожков и отсыпет карманных денег в придачу.
Мы так сильно любим Бабушку, дедушку и вообще всех людей на свете, что хотим сделать для них самый удобный и безопасный сервис заказа товаров по телефону.
Естественно, в рамках нашей статьи мы не будем «выдумывать» целый сервис, но попробуем сделать систему общения с персоналом интернет-магазина удобной и защищенной от кражи персональных данных недобросовестными исполнителями. А поможет нам в этом Telecom API от компании MTT.
Сегодня мы с вами:
- используем API, для умной переадресации вызова;
- скроем номер звонящего, от некоторых сотрудников сервиса;
- разберемся с добавочными номерами;
- сделаем аудио сообщения из строки текста;
- обработаем вызовы REST API на сайте с помощью PHP;
- напишем на Kotlin простенький макет приложения для звонка.
Как документировать сервер и контролировать его управление, даже если у вас небольшой стартап
Привет, Хабр! Меня зовут Даниил Воложинок, я инженер в группе виртуализации. Представьте себе ситуацию. У вас есть сервер с комплексом приложений и настроек, который несколько лет обслуживает админ — ”золотые руки”. Однажды “золотой” админ увольняется или уходит на длительный больничный. На его смену приходит новый и выясняет, что разобраться в наследстве невозможно: большинство сведений его предшественник держал в голове.
Пару раз столкнувшись с таким, я убедился, что даже для маленького сервера лучше сразу завести подробную документацию и не оставлять будущих администраторов в информационной яме. Текущим сотрудникам это тоже помогает: за счет прозрачности растет эффективность взаимодействия, снижаются риски безопасности.
В статье поделюсь наработанным списком для документирования сервера, который мы собрали внутри компании и теперь высылаем в качестве рекомендации и крупным клиентам DataLine, и небольшим клиентам Cloudlite. Ресурсы Cloudlite нередко используются для стартапов и pet-проектов. А когда стартап вдруг резко взлетает, становится некогда думать о документировании. Так что привычка сразу все фиксировать помогает нашим клиентам не запутаться.
Архитектура Router-on-a-Stick в сети передачи данных
Подобному тому, как коммутатор может разделить локальную сеть на множество VLAN, так и маршрутизатор может использовать один физический интерфейс для создания подмножества логических виртуальных интерфейсов и обеспечить маршрутизацию данных, видео или голоса между ними.
Как обучить джунов QA за 3 дня (сборник материалов)
Чему нужно обучить junior QA, чтобы он начал приносить пользу проекту? Конечно, было бы здорово «всему и сразу», но это может затянуться надолго. А вот с основами тестирования можно познакомить буквально за пару-тройку дней. Особенно если это фулл-тайм дни (рабочее время).
Я обучаю новичков больше 6 лет, больше тысячи людей выпустила, книгу вот написала. И на опыте студентов вижу, что «план-минимум» на самом деле небольшой.
Если перед вами стоит задача «завтра выйдут два джуниора, обучи их», начните с основ. Один из вариантов:
• дали посмотреть видео или прочитать статьи;
• собрались вместе в переговорке или зуме, обсудили;
• дали ДЗ на закрепление материала;
• через три дня получили более-менее адекватного джуна, профит!
В этом посте я собрала ссылки в помощь по каждой теме:
• видео — варианты из публичного доступа. Выбираете то, что больше по душе, отдаете падаванам;
• статьи — даете как дополнительный материал.
В итоге затраты на подготовку — меньше, а польза от новичков — быстрее.
Информация
- В рейтинге
- Не участвует
- Откуда
- Россия
- Зарегистрирован
- Активность