В IT чудес не бывает
806 subscribers
117 photos
17 videos
1 file
306 links
Лайт-версия блога https://www.maxshulga.ru/ про менеджмент, качество и процессы в IT от доброго доктора АйТиболита @maxbeard12
Download Telegram
Все хэштеги и группа для обсуждения
#байки - истории из жизни
#it_memes - веселые картинки по теме канала
#quality
#testing
#test_automation
#unit_testing
#management
#процессы
#tech_read - полезные статьи
#ваши_вопросы - ответы на ваши вопросы, можно задавать любым удобным вам способом
#holywar - посты, которые могут вызывать горение
#мысли_вслух - короткие, но умные мысли, чаще мои :)
#metrics - про метрики (технические, процессные)
#развитие - посты про развитие, свое и команды
#it_философия - посты-наблюдения про отрасль
#codereview
#observability
#собеседования
#про_резюме
#оценка
#тесты_в_проде
#стратегия чтобы это не значило

Все кому заходит контент, но телега мешает его обсуждать, велком в группу https://t.me/+eVSMX4QvqvxlNjcy
1👍1🔥1
Если не подписаны на ByteByteGo, а работа связана с разработкой, тестированием и тп, то рекомендую. Ребята очень полезные штуки делают в сторону популяризации подходов системного дизайна.
А для собесов вообще хорошо зайдет (в реале то мало кто применяет 🙂, потому что все "знают" как правильно, но никто так не делает).
У них и книги по этой теме есть.
Из свежего, их подборка System Design 101 как раз для разогревочных бесед на собесах и тех, кому хочется одной картинкой понять для чего пригодится Redis, что такое CI/CD или чем REST отличается от GraphQL.
#tech_read
9
Я уже признавался в симпатиях к DORA-метрикам.
Добрался наконец-то до отчета 2023 года.
Какие-то интересные штуки буду сюда закидывать.
Начнем с традиционного, с самих метрик для оценки скорости поставки изменений. Первые 2 отвечают за пропускную способность, следующие 2 за стабильность поставки:
Change lead time - время от комита до завершения его поставки
Deployment frequency - как часто изменения попадают в прод (задача со * в “коробочных” продуктах с релизами раз в квартал)
Change failure rate - как часто деплой в прод требует вмешательства, когда что-то пошло не так
Failed deployment recovery time - какое время требуется для восстановления после неудачного деплоя
И тут уже видим первое изменение: теперь "Mean Time to Recover" обзывается "Failed deployment recovery time" для более точной привязки проблем именно к деплою. Обновите чек-листы для собесов 🙂
Ну а какими, по мнению экспертов, должны быть цифры для этих метрик, смотрите картинку в комментах.

Полезные ссылки:
• Сам отчет Accelerate State of DevOps Report 2023 (ссылка на него традиционно доступна в открытом виде на форме, где тебя просят ввести свои контакты, чтобы ее скачать, надо лишь просто посмотреть ее исходники)
• Про метрики инцидентов (в том числе про то, зачем переименовали MTTR)
#metrics #tech_read
🔥2
В IT чудес не бывает
Чаще всего повышение получают, создавая что-то новое (новые фичи, новые сервисы). Редко его можно получить за счет упрощения/удаления. При этом осознание ценности упрощения - это шаг в сторону сеньорности. Решить проблему клиента не написав строчки кода, или…
А про удаление ненужного думают не только в этой тележке.
Вчера кучно прилетело про проекты, которые разрабатываются в больших корпорациях для того, чтобы автоматически находить и удалять ненужный код и связанные с удаленными сервисами данные: SCARF (оригинальные ссылки есть внутри этой транскрипции) и Sensenmann (кстати, в гугле таким образом удалили уже 5% старого С++ кода).
Так как реализация обоих механизмов завязана на внутряшку текущей реализации проектов в FB и Google, то вряд ли мы дождемся чего-то открытого и доступного остальным. Но подходы интересные.
#tech_read
👍2
Микросервисы: очередной пример "256 оттенков серого".
Все по-настоящему "микросервисно" сложно, в какой-то степени дорого. Монолит (а скорее его экстремум в виде "Big Ball of Mud") - аналогично.
Всегда нужно искать середину и понимать что и для чего ты делаешь.
PS никто еще, вслед за AWS, не начал "монолитизировать" микросервисы, леча проблемы "микроминиатюризации"?

The False Dichotomy of Monolith vs. Microservices


#tech_read
И пока мы еще не определились, что лучше микросервисы или монолит, давайте посмотрим подробнее на эти самые μServices.

At the heart of microservices
• we're told we'll find...
• we find...
• we should find...
• we often find...
• we need... to start rethinking what we really need.
You Want Modules, Not Microservices

#tech_read
What's a distributed system?
It's not microservices exchanging messages and storing data in a DB.

Небольшая шпаргалка-затравка по теме распределенных систем. Скорее просто для того, чтобы оценить масштаб бедствия в голове по этой теме перед столь любимыми многими компаниями собесом по System Design.
#tech_read
👍2
Что общего у морского огурца и архитектуры ПО?
Морской огурец, к примеру, может дышать через жопу. Эволюционно так сложилось. И многие программы по внутреннему устройству легко затыкают его за пояс — череда меняющихся требований приводит к появлению забавных и жутковатых внутренних механизмов, оказывающих не самое лучшее влияние на развитие продукта.


Григорий Петров: "Изменяющиеся требования — проклятье индустрии"

#tech_read
👍64😁2😱2
А что такое архитектура ПО на самом деле?

"Software architecture is about the significant design decisions, where significance is measured by cost of change"

Simon Brown "Software Architecture for Developers"

Очень откликается это определение. Весь вопрос в том, как это все описано.

#tech_read
1
А как же эту архитектуру ПО лучше описывать?

The Ultimate Guide To Software Architecture Documentation
• Why should we document software architecture?
• How should we structure software architecture documentation?
• How should we visualize software architecture?
• How do we write and manage software architecture documentation?

Еще полезного из прошлых постов:
• Про полезные практики фиксации принятых решений по реализации фичей.
• Как принимать архитектурные решения?

#tech_read
Catchpoint’s SRE Report 2025
Из интересного:
1. Медленно - это теперь официальное "лежим"
2. Время, которое тратится на "операционку", растет
3. Надежность продукта драйвится на уровне культуры в компании
4. Большинство согласно с тем, что польза от используемых тулов больше их затраты на тулы
5. Большинство использует от 2 до 5 тулов для мониторинга
6. У половины ответивших уровень внедрения observability меньше, чем им хотелось бы
7. у 40% ответивших произошло от 1 до 5 инцидентов за последние 30 дней (еще у 23% до 10 инцидентов - вот это по нашему)

Жаль, конечно, что всего 300 человек отвечало, так себе выборка. Но первый пункт мне нравится :)

#tech_read
🔥7
Books to read in 2025 as Software Architect
1. Distributed Systems
2. Implementing Domain-Driven Design
3. Balancing Coupling in Software Design
4. Chaos Engineering: System Resiliency in Practice
5. Systems Performance: Enterprise and the Cloud
6. Designing Distributed Systems: Patterns and Paradigms for Scalable, Reliable Services
7. Release It!
8. Enterprise Integration Patterns
9. The Art of Scalability
10. Building Multi-tenant SaaS Architectures: Principles and Best Practices
11. Building Secure & Reliable Systems
12. Scalability Rules: 50 Principles for Scaling Web Sites and Applications

#tech_read
🔥4
Знаю, что никто из новоподключившихся "назад" в ТГ-ленте не смотрит.
Тем не менее, в закрепах есть сообщение со всеми тегами, которыми промаркированы все (ну или 99%) сообщения в этом канале.
.
Делал конечно для себя, но вы тоже пользуйтесь :)
👍5🤔1
Старое, но интересное исследование про проблемы с обработкой ошибок в коде: 92% критических отказов распределенных систем происходят из-за неправильной обработки ошибок.

Слайды, общая страница

#testing #tech_read
3👍2
Возможно я, как это часто бывает, снова прочитал, то что хочется прочитать. Но очень похоже на мои мысли:
Или "мы не продумали архитектуру". Да не можете вы продумать архитектуру навека, у вас требования к продукту меняются каждые полгода. Все что можно и нужно попытаться "продумать" - это то, как быстро менять реализацию. А быстро - это только с тестами получится, но на них часто забивают (времени много ведь занимают)...


Lean Architecture It is high time to ‘kill’ Clean Architecture, the Hex, the Onion and the VSA and come up with something better

3 important points in creating a maintainable solution:
Step 1: Analysis of the problem and the stakeholders.
Step 2: Analysis of the current use case.
Step 3: Modelling
Step 4: Implementing the different pieces and their tests
Step 5: Dependency management


At all times, we keep our goal in mind. Because the process itself does not account for Lean Architecture. With every decision we try to evaluate if it brings us closer to our goal of maintainability or not. We fix the design problems we have now. We don’t try to fix possible changes that have yet to come. This is the hard part, deciding when to add more design. This becomes easier when you truly understand the design problems that certain techniques and principles solve.

И небольшое продолжение в виде скрина в комментах.

#tech_read #holywar
👍61🔥1
Я уже не триггерюсь на названия "моки", qa-шники, devops-ы. Они давно стали именами нарицательными.

С буквами "SLA" пока такого "дзена" не наступило. И каждый раз, видя их на очередной страничке confluence, глаз дергается. Потому что, в 99.9% случаев, тот, кто их там написал, не знает, про что они.
Зато когда встречаю "SLO" становится теплее на душе, в том числе от воспоминаний с прошлой работы 😜

Читаем, просвещаемся: SLA vs SLO

PS вангую, что таки появятся sla-исты, методологи по аналогии с теми, кто заведует OKR/MBO и прочими 3х буквенными "ругательствами"

#sre #metrics #tech_read
😁7👍3