TGViewer
Channel Public Channel
Backend x Management

Backend x Management

@backendxmanagement

Разгоняем про бэкенд и менеджмент, ну и еще про процессы… Всех любим, всем доверяем <3
Автор @thesanone
Subscribers
84
Photos
10
Videos
0
Links
23
Recent Posts 20 shown
Post #64 43
Кейс-интервью в Авито (на тимлида)

Я тут уже какое-то время прохожу собесы в Авито и если 3 первые этапа были в целом обычными, то вот четвертый этап мммм - был великолепен)) Сейчас раскрою мысль:

Это Кейс-интервью, оно идет так (как я понимаю):
- Нанимающий менеджер составляет кейс: команда столько людей, такие метрики, такие-то отнощения, работаем над вот этим продуктом туда-сюда. Близкий к реальной ситуации в команде.
- Основная задача кейса - "что будешь делать придя в роль тимлида?", какие шаги бы предпринял, как бы развивал продукт, команду, процессы итд.
- Кейс дают за неделю за собеседования и ты можешь все обдумать и спокойно пораскинуть мозгами.
- Сам собес - шаришь экран - показываешь закотовленные материалы, по ходу события тебе подкидывают вопросов, если что-то слабо раскрыл. Где-то час на представление того что ты удумал (у меня вышло час и 15 минут, по доске в Миро).
- Нанимающий менеджер рассказывает реальность - то есть показывает над чем придется работать в новой роли, в этот момент из кейса выпадают "выдуманные" детали.


Так вот, почему мне дико понравился этот собес:

1. Мне дают подумать в спокойной обстановке и показать силу аналитического комбайна в моей голове. То есть ты можешь в своей голове покопаться, книжку почитать, с аи-шкой пообщаться, коллег спросить - в обычной жизни это всё твои рабочие инструменты и ты можешь спокойно их использовать.

2. Ты до прихода в компанию начинаешь понимать - "а что делать то придется?", и примеряешь это на свою шкуру - нравится тебе это, или нет, готов ли ты двигаться в эту сторону.
- У меня был кейс в команду Observability и я сомневался, как и всем юным тимлидам мне хотелось заниматься развитием продуктов для клиентов, а в платформенной теме я уже сижу много лет. Однако поразбиравшись с кейсом - я понял что это моя сильная сторона и мне по кайфу в этом копаться. В голове пазл сложился, я хочу над этим поработать.

3. Кейс пишет нанимающий менеджер, а я большой читатель и люблю смотреть за ходом мыслей писателей, и это позволяет еще до интервью немного понять о том как думает твой будущий лид.
- Возможно, это моё искажение или мне так удачно попался нанимающий лид, но я прямо читал текст и видел что мы с ним думаем в одной плоскости. То есть я сразу понял вопросы, проблемы, узкие места, то что действительно заботит лида (ну или мне показалось что понял). Это приятно.
- Кейс мне АИ-шкой не писали, в актуальной реальности это считается невежливым. Лид потратил мысле-топливо, что бы описать ситуацию так как он сам её видит.
- Список вопросов под кейсом практически совпал с моим форматом итоговой презентации. Это просто магия какая-то, у меня есть свой формат, который я развиваю не первый год, начал под него накидывать то что обдумал в кейсе, и удивился - что мы совпали по порядку вопросов...

В общем это очень трудозатратный формат - но мне кажется это будущее собеседований на лидовские позиции. Даже если мы не подойдем друг-другу после этого интервью они могут использовать часть моих идей для развития продукта - а это значит я продумывал их не зря)) Ну и я получил свою пользу - понял какой лид им нужен, и смог прикинуть себя в этой роли: "примерить новое пальто", так сказать.

Мой респект ребятам из Авито))
  • 🔥 8
Post #63 103
noCopy в Go

Игрался я тут с атомарными переменными, что бы вспомнить синтаксис и посмотреть что за приметивы появились в Go пакете Sync. Я горяче люблю этот пакет, за то что есть функции типа:
func atomic.CompareAndSwapInt32(addr *int32, old int32, new int32) (swapped bool)
в которые можно передать любой вообще инт32 и это на мой взгляд намного правильнее, чем создавать примитив типа atomic.Int32, но он есть и вашему вниманию представляю его структуру:

type Int32 struct {
_ noCopy
v int32
}


Тут есть занимательный объект _ noCopy, который по факту struct{}, реализующий интерфейс Locker (это что -copylocks checker из go vet находил копирование объекта). Однако он не фейлит вам сборку, если вы копируете такой объект, а только кидает предупреждение в go vet, но все равно лучше чем ничего)))

К сожалению его нет внутри slice или map объекта, но если вы делаете свой кастомный объект, который лучше бы не копировать в Go - можете использовать noCopy, правда вам придется самим его проинициализировать он жеж приватный, но это не сложно

type noCopy struct{}

func (*noCopy) Lock() {}
func (*noCopy) Unlock() {}


но можно взять открытый пакет https://pkg.go.dev/github.com/savsgio/gotils/nocopy хотя на мо взгляд маленькая копия лучше маленькой зависимости
Post #62 138
Многоуважаемый дядя Кент Бэк и его взгляд на то что происходит в IT

Если у вас хорошо с английским и есть 2+ часа - то крайне рекомендую к просмотру. История жизни и работы Кента Бэка с очень интересными жизненными поворотами. Мне больше всего понравилось три момента:

1. Когда он рассказывает о том, как после взрыва доткомов он практически обнулился и пошел работать в фейсбук, потому что нужны были деньги. Приходит он в фейсбук в 2011, уже прошло 10+ лет с начала TDD и XP, Agile правит миром 10 лет, а там ребята тесты не пишут... но на это есть своя причина, что много слоев фидбэка, мониторинга, ну и ментальное давление жуткое, что-то не так - идешь на мороз
2. Как он рассказывает про то, почему с каждой новой эпохой разработчиков софта постоянно пытаются сократить, потому что мы не очень умеем в soft-skills в основном, и у нас есть свой "психотип": не контролируем эмоции, у нас порой отсутсвует естественная эмпатия, мы слишком прямые в выражении своих мыслей и многие не могут это переварить. Занятные мысли)
3. Как он называет AI - джином, который делает то что ты ему скажешь, но это оказывается не тем, что ты хотел)) но в целом как он к новому явлению адаптировался сам и что думает в целом про это. Я согласен с его точкой зрения что разработку мы ускорили, но остальные бизнес-процессы еще к этому не адаптировались и буксуют

Приятного просмотра)

https://www.youtube.com/watch?v=ddHQQtjIOpw
YouTube How Kent Beck shapes the software engineering industry Few have made as big an impact on software engineering as this week’s guest on the Pragmatic Engineer podcast, Kent Beck. He created Extreme Programming, pioneered test-driven development (TDD), co-created JUnit, and is one of the authors of the famous ‘Agile…
Post #61 144
Командная работа

Переодически возвращаюсь к видосикам потрясающего человека Дмитрия Болдырева, и сегодня хочу поделиться с вами очень сжатым видосиком в котором командный психолог, как мне его хочется назвать, описывает процессы возникающие в команде с их четким разбиением на группы. В этом видосике он говорит именно про командные процессы (не про то как делать работу, или ставить цели, а именно про кухню внутри команды как социума для достижения целей), и их СЕМНАДЦАТЬ... Ломает представление о команде как просто о взаимовыручке, потому что мы же социальные существа в целом. Дядя глубоко не погружается в каждый из них и дает только овервью, можно поглядеть и посмотреть в каких из этих процессов в вашей команде сейчас есть проблемки

На х2 смотрится отлично)

https://www.youtube.com/watch?v=CcyMVMd3Q5E
YouTube Из каких процессов состоит командная работа 00:00:00 - Три вида процессов в рабочей группе 00:03:39 - Командные процессы и их назначение 00:04:30 - Перечень и описание командных процессов 00:15:19 - Главная особенность командных процессов
  • 🔥 2
Post #60 167
LLM для менеджерства

Сейчас время веселья, угара и новых темок в плане разработки. Вышли наши любимые Sonnet, Opus итд и мы с вами начали вертеть рутину и добавлять нейро-безумия в свои рабочие дни. Весело, освежающе, давно такого не было. Однако, я же менеджер и сижу в сторонке и смотрю как ребята используют OpenSpec, втягивают мутационные тесты, использует гибридов SDD и тоже хочется свежей крови и ветра в волосах...

Так что я сделал себе на базе тех же моделек и подходов Апепа! Да, я просто создал личность для своего агента, который менеджит мои рутинные процессы в духе:
- "запомни вот это для встречи с братьями по бэкенду",
- "сделай архивную запись по вот этому комьюнити",
- "сходи в те репозитории и найди святой грааль" итд
Это фактически просто персональный помошник с автоматизированными некоторыми рутинами, которые я пополняю время от времени. Но братцы, вы даже не представляете сколько сока в работу с агентом добавляет эта простая игра в персоны. Теперь я могу сказать своему агенту:
"Мой дорогой друг, Апеп, я безмерно дорожу нашей дружбой и дабы тебе не пришлось слышать от меня слов бранных - всегда спрашивай меня о дозволении сделать коммит."

Это так весело и так освежает рутину, понятно что в точных задачах нужно быть как швейцарские часы в выражениях, но когда дело доходит до пустяковых задач... Мой верный приятель и товарищ Апеп дарует мне великолепное настроение))

Ну а по факту что можно делать менеджеру с LLM - все процессы автоматизировать, если нельзя - попытаться. Главное пополнять память своего агента и создать эту структуру памяти или в обсидиане, или в структурированной системе папочков, главное не в персональной памяти клода (её под гит не положишь). И чем больше инфу структурированно вы туда загрузите - тем больше у вас появится идей по автоматизации.
  • ❤ 2
Post #59 189
Podlodka PHP Crew #8. Неделя «Современный стек PHP-разработки»

Я все еще тут в ПК и у нас запускается новый сезон, если есть желание поучаствовать и послушать свежих вещей про подлодку - приглашаю на борт)

https://podlodka.io/phpcrew

Готовить этот сезон было невероятно, потому что, видимо, весна всем в голову ударила и мы собирали расписание за две недели до конфы, еще не заполнив все слоты и импровизируя на ходу 😄
Однако мне нравится финальная сетка, у нас будет и крутая практика с асинхронщиной и скоростью, и AI докладаики от мощных ребят, и Temporal, и даже новые фишки Docker от Верховного ПК, ему очень захотелось выступить в этот раз самому))

Лично я завязался в подготовку AI докладов, и это забавно, потому что я не супер космос AI эксперт, но от этого еще интереснее)) Мне нравится тот результат, что сейчас у нас получается, сезон обещает быть веселым)
podlodka.io Онлайн-конференция Podlodka PHP Crew, сезон #8 Недельное мероприятие от команды Podlodka: ежедневные интерактивные сессии в Zoom по актуальным вопросам PHP-индустрии, нон-стоп общение с экспертами и звёздами индустрии, закрытое профессиональное сообщество в Telegram.
Post #58 192
Concurrency

Чисто случайным образом я тут вспомнил своего великолепного препода прекрасной дисциплины "Параллельное программирование" из универа и нашел его набор лекций (это прямо то что он читал нам в универе) и начал переслушивать. Записаны они 10 лет назад, но все знания актуальны. За это время мы успели только обрасти надстройками сверху типа толстых рантаймов go итд.. В общем если хочется послушать самый шикарный универский предмет из магистратуры программной инженерии, велком:

https://www.youtube.com/watch?v=kbERSWTGtKw&list=PLlb7e2G7aSpQCPeKTcVBHJns_JOxrc_fT&index=1
YouTube Лекция 1. Введение (курс «Параллельное программирование») https://compscicenter.ru/ Тенденции развития вычислительных систем Классификация параллельных систем: SIMD, MISD…, SMP, MPP Современные высокопроизводительные системы: начиная от расширений SSE, через многоядерность к узлам кластеров Понятия ускорения, эффективности…
  • 👍 5
  • 🔥 5
Post #57 230
Еще один доклад от меня про RabbitMQ - как работает cluster и почему quorum queues убили mirrored queues

https://www.youtube.com/watch?v=6pJqnylxGP0

если вы слушали мой предыдущий доклад про кролика, то новый контент начинается с 7:45, до этого момента я повторяю базу

У нас был оффлайн митап в гараже и для него я готовил этот доклад, потому что всегда было интересно понять:
- а что нам даст кластер?
- а сколько стоит его правильно настроить?
- а на какие новые потенциальные ошибки мы меняем простое падение тачки с кроликом?

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

если посмотрите докладик - пишите мне свой фидбэк, подумаю мб сделать еще что-то про рэббит или уже про что-нибудь новое рассказывать)
  • ❤ 2
Post #56 241
Когда клаудфлера снова упала и ничего не сделать, всегда можно пойти на рэддит и почитать комментарии под постом клаудфлеры о том что клаудфлара упала :D

там как обычно все рофлят с AI, мне нравится в целом)
  • 👍 2
  • 💯 1
Post #55 245
Jepsen test

Есть интересные ребята, которые сделали утилиту тестирующую гарантии в БД и брокерах сообщений, в докладе недавнем в гараже про кворумные очереди я использовал их тестирование rabbitmq:
https://aphyr.com/posts/315-jepsen-rabbitmq

Потом я глянул там интересный доклад, где они рассказывают о том как устроен jepsen и каким образом проводится тестирование + разносят немного опенсорсных либ, включая то что MySQL не держит repeatable read, просто потому что...
https://www.youtube.com/watch?v=v8cG2hh10SQ

В общем интересные штуки, если хотите погрузиться в проблемы распределенных систем и узнать тонкости и ньюансы работы с отказоустойчивостью
YouTube ACID Jazz - Kyle Kingsbury One photo is a snapshot. A lifetime of photos is an exhibition. Maybe the same is true of breaking databases? One broken database is a bug. A hundred broken databases… Kyle Kingsbury, the author of Jepsen, has broken so many databases, he’s turned it…
  • 🔥 2
  • ❤ 1
Post #54 217
Post #53 239
Первая статья на Habr

Я все же опубликовал свою первую статейку на хабр, она по следам доклада про RabbitMQ, а именно мой первый кейс, что дефолтный publish это fire and forget и надо бы использовать confirmation mode и получать ack на все свои паблиши, иначе нет никаких гарантий, без этого мы живем в сематике at most once, чего вообще-то не хочется...

https://habr.com/ru/companies/garage8/articles/965214/
  • 🎉 3
Post #52 234
Техдолг в реальной жизни.

Проснулся рано утром с кривым лицом, до мита осталось 3 минуты, одеваюсь, умываюсь, пулей лечу к кофе-машине... а она говорит "очисти поддон"... в этот момент флешбеки как вчера вечером наливал себе последнюю кружку кофе, видел эту надпись и такой: "данунах, не хочу"...

Больно, неприятно, сидел на мите без утреннего кофе((
  • ❤ 2
Post #51 260
«В Известиях нет правды, в Правде нет известий»

Почитываю я тут разные статьи и нашел эту фразу, довольно точно описывающую инфополе в котором мы живем (но у каждого оно своё). Как же сложно докапываться до правды, ведь она никогда не блестит так же ярко как «а ты слышал что там …». Правда скучна и логична, а хочется верить в сказки и идеалы…

Например никто не гарантирует тебе консистентность распределенных систем, однако разработчики temporal сделали для тебя серебренную пулю (из старого, но пример наглядный)
Post #50 274
Podlodka PHP Crew сезон №7. Неделя «Ускоряем PHP-разработку»

Мы собрали тему сезона и лучшие темы для докладов (по мнению ПК). Так что ждём ваших заявок https://a37921.webask.io/ei8kalge7

Я же хочу поделиться увлекательным опытом ПК с вами. Подлодка довольно уникальная конференция на мой взгляд, потому что сама генерирует тему и потенциальные доклады в ней, ну и докладов всего 10, и они все крутятся в одной теме. Самым же интересным для меня была совместная работа с ПК, понятно что эта работа только началась, но мне уже очень нравится)) своего рода свежий ветерок в мои рабочие будни, да еще и много новых и интересных людей, со всех сторон хорошо))

По поводу организации тоже интересно, 10 тем, 5 участников ПК, я буду курировать две темы: архитектура и организационные подходы для быстрой разработки и CI/CD. В общем, мое любимое))

Жду ваших заявок, вместе поищем сладкого в вашем опыте и организуем получасовой докладик или воркшоп)
a37921.webask.io PHP Crew#7: CFP
  • ❤ 3
Post #49 197
Low Coupling, High Cohesion

Люблю такие принципы разработки, которые не перевести в лоб, и чтобы понять их надо будет прилично так пораскинуть мозгами и понять чем связность отличается от связности))
По русски лучшим переводом будет: "слабая связность, сильное зацепление", и это один из паттернов GRASP (General Responsibility Assignment Software Patterns) - которые скорее принципы, нежели паттерны и давайте их рассматривать в концепции принципов.

Принцип слабой связности - единица связности (может быть класс, может быть сервис/микросервис в зависимости от масштабов) должна иметь минимальное число зависимостей. На банальном примере: чтобы создать объект класса А, тебе не надо создавать других объектов или импортировать 100500 библиотек. На примере побольше: чтобы развернуть в инфре сервис А, тебе не надо ставить 10 других сервисов и поднимать 5 инфраструктурных узлов. То есть сам по себе твой объект уже красавчик, и ему не нужно много посторонней помощи, чтобы выполнять свои задачи.

Принцип сильного зацепления - для выполнения работы (бизнес-задачи, бизнес-проццесса) все нужные компоненты аллоцированы в одном юните (единице связности, раз уж мы ввели этот термин). Ну и как с low coupling тоже может варьироваться от класса - до сервиса. Чувствуете? Родным SOLID-ом повеяло)) На самом деле очень похоже на принцип Single Responsibility. Явным нарушением будет распределенный-монолит, когда для выполнения 1 метода надо пройти 10 микросервисов, так же нарушением будт просто монолит, потому что зацепление между его функциями слабое. Следованием же high cohesion будет кейс, когда ваш сервис принял пользовательский запрос (например с мобилки) и ему для исполнения запроса не надо ходить ни в какие другие сервисы (собственная БД не считается, она наша, родная). Но при этом внутри вашего сервиса нет левых методов, если он выполняет депозиты - то он не отвечает за in app notifications. Между этой логикой уже нет зацепления.

Такое настроение сегодня, делиться принципами разработки, хорошей пятницы)
  • 🔥 2
  • 👍 1
Post #48 177
Мне сделали приятное и неожиданное предложение, позвали вступить в программный коммитет Podlodka PHP Crew. Совзвонились, пообщались, за полчаса беседы поняли что у нас есть мэтч по майндсету и в целом коммуникация строится структурно и приятно, ну и вот я в тайном чатике ПК 💃

Пока еще выбирается тема сезона, а я немного волнушка, потому что прежде никогда не был в ПК, ну и я больше по архитектуре решений, а не прямо гуру PHP. Думаю будет весело, интересно и полезно)

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

Вот вам для фана стааааарая статья с Хабра (была популярна, пока я учился в универе), где про пыху гадости пишут.. а язык то прекрасен в своем домене
https://habr.com/ru/articles/235281/
  • 🔥 5
  • 🎉 1
Post #47 145
Я тут после имплантации (5 имплантов в челюсть посадили) лежу, восстанавливаюсь. У меня возник душный вопрос в голове: если уронить таблетку антибиотика на пол, то для бактерий с пола это будет троянский конь? Возможно, антибиотик докатит эти бактерии до слизистой, а там и смерть.. нечто в духе прокатиться до слизистой на атомной бомбе…

В общем берегите свои зубы)
  • 😱 1
Post #46 206
Инверсия зависимостей

Перечитывал я тут статейку про инверсию зависимостей из SOLID, после того как мы пособесили одного разраба в компанию. Мне каждый разу режет ухо, когда люди говорят: "dependency inversion - взё зависить должно от абстракций"... но ведь это вообще не то, тут мы разворачиваем зависимости и заставляем те объекты и классы, которые мы используем в реализации своего юнита, реализовывать наш интерфейс (как на картиночке). В общем нашел годную статью про Принцип dependency inversion.

https://habr.com/ru/articles/313796/
  • 👍 2
Post #45 171

Forwarded from Пых (Валентин Удальцов)

Добавляем connection.blocked в thesis/amqp

Через час у меня стрим с Вадимом Занфиром — автором кучи неблокирующих компонентов Thesis, а также спикером и членом ПК Пых.конф’25!

В прямом эфире я под его руководством реализую фичу, которую запросил уже знакомый вам подписчик, Витя из Garage Eight — возможность слушать connection.(un)blocked при общении с RabbitMQ. Ещё мы вам покажем кое-что новенькое!

https://youtu.be/0H2hguG6J8s
https://vkvideo.ru/video-228746873_456239068

Готовьте вопросы по асинхронному PHP, проекту Thesis и Пых.конф. Три самых активных комментатора получат слоников Пых!
YouTube Добавляем connection.blocked в thesis/amqp с Вадимом Занфиром, спикером Пых.конф’25 Вадим — эксперт в базах данных и брокерах сообщений, отлично разбирается в протоколах и структурах данных, в свободное от работы в VK Музыке время разрабатывает низкоуровневые драйвера для PHP на базе неблокирующего I/O. Вчера туториал к написанному Вадимом…
Older posts →

About this channel

How can I read @backendxmanagement without a Telegram account?
TGViewer shows the public web preview Telegram publishes for Backend x Management: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does Backend x Management have?
Backend x Management (@backendxmanagement) has 84 subscribers on Telegram, refreshed roughly every 30 minutes.
Does Backend x Management know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
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 →