TGViewer
Channel Public Channel
Техлидошная | Golang Infra Dev | Project Leading

Техлидошная | Golang Infra Dev | Project Leading

@devlead

Про платформенную (инфраструктурную) разработку, golang, техлидерство проектов, профессиональному росту и всему остальному, что связано с IT.
Автор: Антон Губарев (https://antgubarev.tech/ru/) @antgubarev. Инеженер Авито PaaS, архитектор и техлид
Subscribers
519
Photos
25
Videos
0
Links
159

Showing posts older than #194 · Back to latest

Older Posts 20 shown
Post #193 894
Нашел полезную тулзовину для любителей бОльшую часть операций с git проводить в консоли https://github.com/wfxr/forgit. Основана на fzf. Может быть полезна тем, что позвляет выполнять простые действия быстрее. Например просмотр лога и поиск по нему, checkout на комит или ветку, работы по stash и прочее. Правда я себе уже успел напилить немного хелперовhttps://github.com/antgubarev/dotfiles/blob/master/.zsh/functions/git.sh до того как наткнулся на такую штуку.
  • 👍 7
  • 🔥 1
  • 🥰 1
Post #192 1.14K
Сети для самых маленьких https://linkmeup.ru/sdsm/ Этот источник знаний поможет понять магию, которая происходит на самых низких уровнях, по которым летают наши любимые HTTP запросы. Раньше я думал "а зачем оно мне надо если я не сисадмин и сетевой инженер". Вобщем-то да. Однако, даже занимаясь продуктовой разработкой, некоторые вещи мог делать иначе. Когда имеешь дело с go, то такие ситуации случаются чаще. Помимо всего прочего, даже банальное пониманые работы NAT помогает организовать себе удобное рабочее пространство для, например, работы с веб хуками. Очень рекомендую этот мануал как первое приближение к теме. Особенно если подумываете о смене направления работы в сторону инфраструктуры.
Второй по важности пласт я бы назвал TCP/IP. Когда занялся платформенной разработкой и коснулся service mesh, то осознал масштаб упущенных знаний. По этой теме есть два на мой взгляд наиболее предпочтительных источника
🔹Таненбаум. Компьютерные сети
🔹Олиферы. Компьютерные сети (учебник в российских ВУЗах)
Я себе второй даже приобрел в бумажном виде и использую как справочник. Без этих знаний понять что происходит в современных инфраструктурных инструментах будет крайне сложно.
  • 👍 11
  • 🔥 1
Post #191 970
Алгоритмы такая штука, которая требует регулярности, иначе навык начинает теряться и забываться. Ничего удивительного, не так часто оно бывает нужно, и сильно зависит от специфики решаемых задач. Но! Удачно примененное знание в нужны момент, вероятно поможет решить задачу, которую другие не смогли, или же причинить пользу, которую смогут оценить другие. Поэтому стараюсь время от времени алго все же тренить.
Для этого использую восновном два источника, которые считаю годными и надеюсь что кому-то еще они окажутся полезными (буду признателен за рекомендации других материалов).
🔹”Грокаем алгоритмы” от Адитья Бхаргава. Коротко и понятно об основном.
🔹”Алгоритмы. Теория и практическое применение” от Стивенс Род. Использую как справочник, когда другие способы не помогли или не достаточны.
Сами задачки беру конечно же с leetcode. Раньше сидел на платном аккаунте, но профита от него не получил. Премиум полезен больше для подготовки к собесам за рубежом. Для повседневного тренинга подойдет бесплатный.
Пробовал ходить на курс от ОТУС. Но там препод уже с первых вводных занятий ушел глубоко в математику. Я для себя не нашел применения такой глубины изучения.
Ну и конечно куда же без коллег, среди которых обязательно найдутся спецы. Поделюсь одним таким из своей компании. Алексей Ивасюта ведет канал https://t.me/algorithmics_cl, где подробно разбирает решение задачек с собесов. Ведь алгоритмы давно превратились в популярный инструмент проверки кандидатов (хорошо это или плохо тема отдельного разговора), и если собиратесь походить за оферами, то точно знания стоит подтянуть или освежить.
  • 👍 5
Post #190 934
В этот четверг буду с докладом на онлайн митапе. Расскажу про service mesh, как он устроен в Авито, и про межсервисную авторизацию как пример одной из возможностей меша. Конечно за менее чем полчаса сложно рассказать обо всем, что считаешь нужным и важным. Доклад будет полезен в первую тем, кто в процессе погружения в эту тему Однако, всегда можно задавать доп вопросы разной сложности на самом мероприятии или в коментах здесь. Постараюсь ответить всем.
Расписание и регистрация по ссылкам ниже.
👉 Регистрация на онлайн https://avitotech.timepad.ru/event/2620083/
👉 Регистрация на оффлайн https://avitotech.timepad.ru/event/2619816/
Post #189 1.01K
Open Policy Agent https://www.openpolicyagent.org/ незаслуженно мало освещен в интернетах. Очень сложно найти истории его внедрений (хотя они есть). Это дипломированный проект CNCF, который уже имеет множество интеграций. Мы взяли его основу для реализации межсервисной авторизации. И вот в ноябре еду с докладом на Highload++ https://highload.ru/moscow/2023/abstracts/10743
Содержание доклада это проект, который я проектировал и лидил в текущей компании весь последний год. Разработанный с нуля и внедренный в существующий service mesh с ~2500 сервисами, и который претерпел различные изменения и продолжает активно дорабатываться.
По пути получено огромное количество опыта. Тут точно есть о чем рассказать.
Основной интерес может представлять борьба с latency, валидация политик (как случайно не закрыть существующие связи), и как не заставлять пользователей учить rego и еще много другого потенциально полезного, что можно взять за идею или основу для своих решений.
Post #188 1.02K
Интересное нововведение обсуждается для go 1.22 https://github.com/golang/go/wiki/LoopvarExperiment Исправление старой проблемы. Ну как проблемы. Особенности, которая на самом деле порождала частые ошибки. Даже в FAQ вынесли https://go.dev/doc/faq#closures_and_goroutines. Приходилось делать в циклах костыли вроде i:=i.
Пока что возможность доступна через переменную окружения, так как разработчики не уверены к каким последствиям это может привести. Но шанс появления этого в будущих версиях не нулевой.
Post #187 1.1K
https://github.com/bats-core/bats-core отличная утилита для небольшого количества e2e тестов с минимальным количеством приседаний. Написано на shell, а значит что для запуска ничего особенного не нужно. Нашел пример использования в одном из CNCF проектах https://github.com/open-policy-agent/conftest/blob/master/acceptance.bats
Очень удобно чтобы запустить бинарь и проверить код ответа или сделать http/grpc запрос и не возиться с либами на go/python/etc.
GitHub GitHub - bats-core/bats-core: Bash Automated Testing System Bash Automated Testing System. Contribute to bats-core/bats-core development by creating an account on GitHub.
Post #185 1.2K
Консольный браузер https://github.com/fathyb/carbonyl С одной стороны не очень понятно для чего, но с другой текст он отображает более чем читабельно. А это значит что можно гуглить не отрываясь от коноли. Медиа контент я бы предпочел все же смотреть как и всегда. Посмотрим как будет развиваться дальше.
GitHub GitHub - fathyb/carbonyl: Chromium running inside your terminal Chromium running inside your terminal. Contribute to fathyb/carbonyl development by creating an account on GitHub.
Post #184 969
“Этот ваш кубернетес” стал настолько сложным, что его уже не обновляют. Гораздо проще и дешевле поднять новый кластер и перенести туда все что есть в старом. История падения reddit https://www.reddit.com/r/RedditEng/comments/11xx5o0/you_broke_reddit_the_piday_outage/
Reddit From the RedditEng community on Reddit Explore this post and more from the RedditEng community
Post #183 1K
https://www.youtube.com/watch?v=R3ti2N5Llb0 Третье и заключительное видео про настройку NeoVim. В этот раз речь идет о способе добавления/удаления тегов у структур (в качестве демонстрационного примера, это для тех кто сразу пойдет писать что такое уже есть в любой IDE, в vim-go это тоже есть). Основной материал про работу с tree-sitter, с помощью которого можно делать с кодом много интересного.
YouTube Автоматизация с NeoVim: Treesitter или теги в GO | avito.code Привет! Это новый выпуск avito.code. Здесь опытные инженеры Авито делятся знаниями и рассказывают про свои рабочие инструменты. Антон Губарев, платформенный инженер в Platform as a Service, расскажет, как работать с Treesitter — утилитой для парсинга кода.…
Post #182 1.01K
Post #181 849
Post #180 919
Post #179 1.03K
https://github.com/projectdiscovery/subfinder Неплохой сканер сабдоменов. Держите свои служебные домены за VPN ) А лучше отдельный левый домен для таких целей, но все равно за VPN
GitHub GitHub - projectdiscovery/subfinder: Fast passive subdomain enumeration tool. Fast passive subdomain enumeration tool. Contribute to projectdiscovery/subfinder development by creating an account on GitHub.
Post #178 1.09K
Post #177 1.02K
Сегдня вечером проведу вебинар по башу. Инструмент вызывает сложности у многих из-за непонятного синтаксиса. Однако не все так страшно, если разобраться поглубже и использовать только там где это уместно. Вебинар называется “Bash повышенной сложности”. Однако “повышенной” весьма относительно и для кого-то это будет вполне себе ежедневная простая работа. В названии смысл скорее в том, что массивы и отладка используются немногими, кто работает с башем. В любом случае надеюсь каждый что-то сможет почерпнуть для себя нового. https://www.youtube.com/watch?v=StreIBan5m0
Post #176 833
Post #174 722
Завтра (18 октября) будет продолжение темы контроллеров. В этот раз разговор пойдет про xDS и динамическую конфигурацию Envoy на основе CRD. Параллельно готовил статью на эту тему (продолжение цикла статей, ссылки на которые есть выше в канале), но видимо она уже выдет на следующей неделе, с исходниками и рабочим примером на github.
https://otus.ru/lessons/linux-hl/#event-2303
otus.ru Курс по Linux виртуализации для опытных специалистов — Otus Изучите виртуализацию и кластеризацию на Linux, работу с высоконагруженными системами. Практические задания и проект в портфолио. Онлайн-обучение в Otus.
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →