Pull to refresh
64K+
13
Sergey Proshchaev@sproshchaev

Tech Lead | Java | Kotlin developer

146
Rating
34
Subscribers
Send message

Kotlin vs Java: что выбрать для бэкенда?

Level of difficultyMedium
Reading time8 min
Reach and readers11K

В статье рассмотрим кто сегодня выигрывает битву за бэкенд: сравнение синтаксиса, разбор производительности, а главное — честный прогноз на 2-3 года. Если выбираете стек для нового проекта или думаете, учить ли Kotlin вдогонку к Java, — эта статья для вас!

Читать далее

Нагрузочное тестирование с Apache JMeter: Best Practices

Level of difficultyMedium
Reading time8 min
Reach and readers5.9K

Apache JMeter — не просто инструмент. В этой статье разберем, как получать от него реальную пользу. Вы узнаете, почему 80% отчётов о нагрузке бесполезны, как настроить распределённый тест и анализировать не среднее значение, а процентили. Полный гайд от первого HTTPS-скрипта до информативного HTML-отчёта и Best Practices.

Читать далее

Kotlin для новичков: строки и коллекции — полный гайд

Level of difficultyEasy
Reading time8 min
Reach and readers8.9K

Продолжаем серию «Kotlin для новичков». Сегодня разбираем фундамент, без которого не обходится ни одно приложение: строки и коллекции. Как правильно резать подстроки, форматировать JSON, чем List отличается от MutableList и зачем enum в Kotlin круче, чем в Java. Заглядывайте, будет полезно!

Открыть гайд

Коучинговые инструменты: 4 техники для мотивации команды в IT

Level of difficultyMedium
Reading time7 min
Reach and readers7.4K

Контроль задач и микроменеджмент больше не работают — лучшие IT-команды строятся на доверии и внутренней мотивации. В этой статье разберем четыре коучинговые техники, которые помогут превратить пассивных исполнителей в инициативных соавторов. Вы узнаете, как работает модель GROW в IT-реалиях, зачем рисовать «колесо баланса команды» и какие вопросы задавать на 1:1 встречах, чтобы разработчики сами находили решения.

Читать далее

Контрактное тестирование на Kotlin: гайд для автоматизатора

Reading time7 min
Reach and readers5.8K

Интеграционные тесты зелёные, а после деплоя внезапно «пустые списки» и null в критичных полях — типичный сценарий для микросервисов. В этой статье разберём, как контрактное тестирование с Pact на Kotlin позволяет ловить такие расхождения заранее: от написания первого контракта до его проверки в CI/CD. На практике посмотрим, где подход даёт реальную пользу и какие ошибки чаще всего обесценивают тесты.

Читать далее

Как ИИ‑агенты меняют управление IT‑проектами

Level of difficultyMedium
Reading time10 min
Reach and readers6.5K

Кто из PM не мечтал переложить рутину на робота? С появлением Agentic AI и мультиагентных систем это перестало быть фантастикой. Обсудим как ИИ‑агенты уже сегодня умеют планировать спринты, оценивать риски и назначать задачи — и делают это не хуже живого проджекта.

В статье: принципиальная схема работы связки GPT‑4 + Claude 3, реальный кейс IBM с сокращением MTTR на 65% и пошаговый план внедрения для вашей Jira без строчки кода. Все это для того, чтобы разобраться, как остаться главным, делегировав рутину нейросетям.

Читать далее

Где хранить код? Сравнение GitHub, GitLab и Bitbucket

Level of difficultyMedium
Reading time9 min
Reach and readers9K

GitHub, GitLab или Bitbucket — куда податься начинающему разработчику в 2026? Казалось бы, какая разница — Git везде одинаковый. Но когда дело доходит до первого пет-проекта, портфолио или стартапа на троих, выбор платформы решает всё: от скорости сборки до шансов быть замеченным рекрутером.

В этой статье — сравнение лимитов, цен и скрытых фич. Разберём реальные сценарии, таблицу с актуальными данными на апрель 2026.

Читать далее

Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise

Level of difficultyMedium
Reading time8 min
Reach and readers13K

Что делать, если синхронные REST-вызовы превращают ваши микросервисы в карточный домик? Пора вспомнить проверенные временем паттерны обмена сообщениями. В этой статье разбираем архитектуру Pipes and Filters, Content-Based Router и Idempotent Receiver — те самые кирпичики, на которых держатся надёжные системы. Схемы, best practices для проектирования устойчивых интеграций для Enterprise-разработки.

Читать далее

Infrastructure as Code: философия и лучшие практики IaC

Reading time6 min
Reach and readers8.6K

Ручное управление серверами, «фиксы по SSH» и конфигурации, которые живут только в голове ушедшего в отпуск админа, — это не просто боль, это прямая угроза бизнесу. В этой статье разбираем, почему Infrastructure as Code перестал быть «модным словом» и стал единственным способом спать спокойно. Реальный кейс: как Knight Capital потерял $440 млн за 45 минут из‑за отсутствия воспроизводимой инфраструктуры. Практические советы, пайплайн с GitOps и лучшие практики внедрения IaC в 2026 году.

Читать далее

Требования в Agile: полный гайд с работающими практиками

Level of difficultyMedium
Reading time8 min
Reach and readers10K

Почему «собрать требования» невозможно, а итеративный подход — единственный рабочий вариант и чем Agile-требования на самом деле отличаются от классических.

А также:
▫️ Почему фраза «создайте мне систему» — это красный флаг.
▫️ Как постепенное уточнение спасает от «аналитического паралича» и переписывания кода.
▫️ User Story vs Use Case: в чём настоящая разница и что выбрать.
▫️ Схемы итеративного процесса и ролей в Agile-проекте.

Читать далее

Стили интеграции: от файлов до событий — как выбрать правильно

Level of difficultyMedium
Reading time8 min
Reach and readers7.2K

Выбирать стиль интеграции приложений — всё равно что выбирать фундамент для дома. Ошибёшься — и переделывать придётся, когда стены уже стоят.

В этой статье я разбираю четыре основных стиля интеграции: передача файлов, общая база данных, удалённый вызов процедур (RPC) и асинхронный обмен сообщениями (Messaging). Без воды, на реальных примерах — включая историю провала TSB Bank, который стоил сотен миллионов фунтов.

Вы узнаете:

▪️ почему общая база данных — это антипаттерн для микросервисов;
▪️ как асинхронность спасает прод, когда падают соседние сервисы;
▪️ какие best practice используют команды, чтобы не получить распределённый монолит.

Если вы архитектор, тимлид или разработчик, который хочет строить надёжные системы — добро пожаловать под кат.

Читать далее

REST API: гайд по проектированию от принципов до боевых кейсов

Level of difficultyMedium
Reading time10 min
Reach and readers16K

Проектируете REST API и всё ещё используете 200 OK для ошибок?

А знаете, почему неправильные статус-коды могут убить производительность и как всего один кейс с TSB Bank показал цену плохого анализа?

В этой статье разбираем реальные принципы REST, модель зрелости Ричардсона.Полезно всем, кто пишет бэкенд или проектирует микросервисы.

Читать далее

Kotlin для новичков: всё о функциях за 15 минут

Level of difficultyEasy
Reading time7 min
Reach and readers9.5K

Продолжаем серию «Kotlin для новичков»!

В прошлых статьях мы настроили IDE, разобрались с переменными и типами данных, научились управлять потоком программы через условия и циклы. Пришло время сделать следующий шаг — освоить функции.

В этом туториале вы узнаете:

▪️ Как объявлять функции и чем это отличается от Java.
▪️ Что такое именованные аргументы и значения по умолчанию (и почему это круто).
▪️ Как работает стек вызовов и области видимости.
▪️ Главные best practices, которые используют в разработке.

Читать далее

Виды тестирования ПО: статика, динамика и 5 уровней, которые работают на практике

Level of difficultyMedium
Reading time8 min
Reach and readers7K

Когда код уже написан, половина багов уже не исправить. Парадокс? Нет — статическое тестирование. В этой статье разбираю, как находить дефекты ещё на этапе требований, почему «большой взрыв» интеграции — это путь в никуда, и зачем знать про заглушки, драйверы и уровни от компонентного до UAT.

Читать далее

Как проектировать бизнес‑логику в микросервисах: 3 правила агрегатов, которые работают

Level of difficultyMedium
Reading time10 min
Reach and readers6.8K

Когда бизнес-логика становится сложной, микросервисы из удобного инструмента превращаются в источник боли. Классические «сценарии транзакций» приводят к монструозным классам и распределённым транзакциям, которые невозможно поддерживать.

В этой статье разберу, как DDD и агрегаты помогают проектировать бизнес-логику так, чтобы она не разваливалась под нагрузкой. Покажу на реальном примере HR-сервиса:

▫️ почему объектные ссылки между сервисами — зло;
▫️ как одно правило «транзакция = один агрегат» меняет архитектуру.

Читать далее

Kotlin для новичков: всё об условиях и циклах за 15 минут

Level of difficultyEasy
Reading time7 min
Reach and readers7.4K

Продолжаем серию «Kotlin для новичков»! Сегодня разбираем самое сердце любого кода — управляющие конструкции: if, when, for, while.Вы узнаете, почему if в Kotlin — это не просто оператор, а выражение, как when заменяет целые лесенки else-if, и чем for по диапазонам лучше классического цикла. Реальные примеры и лучшие практики и история о том, как мы отрефакторили 300 строк спагетти-кода в 80 строк с помощью when и диапазонов. Читайте, чтобы писать чистый и понятный код на Kotlin.

Читать далее

Агрегаты в микросервисах: гайд по проектированию бизнес-логики с примерами на Java

Level of difficultyMedium
Reading time8 min
Reach and readers6.4K

Разрабатываете микросервисы и чувствуете, что бизнес-логика превращается в хаос?

В статье на примере простого UserService разберем, как три правила агрегатов DDD и асинхронные доменные события помогают навести порядок.

Обсудим, почему нельзя хранить объектные ссылки между сервисами, как спроектировать агрегат на Spring Boot

Читать далее

Дефекты в тестировании: от хаоса к системе — полный гайд

Level of difficultyMedium
Reading time8 min
Reach and readers8.2K

Дефекты — неизбежная часть разработки, но если они живут своей жизнью в чатах и трекерах, релизы превращаются в лотерею. В этой статье рассказываю, как выстроить системное управление дефектами: от жизненного цикла и сортировки до метрик вроде MTTR и SLA. Вы узнаете, чем серьёзность отличается от приоритета, почему «не воспроизводится» — это красный флаг для команды, и как метаданные дефекта экономят часы разработчиков.

Читать далее

Процесс тестирования: от анализа до завершения

Level of difficultyMedium
Reading time7 min
Reach and readers7.1K

В статье разобраны основные группы мероприятий, из которых состоит процесс тестирования. Вы узнаете:

▪️ чем отличаются тестовые условия от тест-кейсов,
▪️ зачем нужны таблицы решений и попарное тестирование,
▪️ как мониторинг и контроль помогают в общем процессе,
▪️ почему ретроспектива тестирования так же важна, как и планирование.

Материал будет полезен тестировщикам, разработчикам, тимлидам и всем, кто хочет выстроить процесс тестирования.

Читать далее

Как тимлиду давать обратную связь: 4 фреймворка, которые работают

Level of difficultyMedium
Reading time9 min
Reach and readers8.5K

Даже опытные руководители пасуют перед сложными разговорами. Мы молчим, когда сотрудник делает что-то не так. Терпим, надеемся, что «само рассосётся». А потом удивляемся, почему команда живёт в стрессе, а люди уходят, так и не узнав, что от них хотели.

В этой статье — только практика:

▫️ Почему отсутствие обратной связи хуже, чем критика.
▫️ Как работают фреймворки SBI, COIN и радикальная откровенность на реальных примерах.
▫️ Пошаговый алгоритм подготовки к разговору, который не испортит отношения.

Статья будет полезна начинающим и практикующим тимлидам, а также разработчикам, которые планируют переход на руководящую позицию.

Читать далее

Information

Rating
50-th
Location
Россия
Registered
Activity

Specialization

Бэкенд разработчик
Ведущий
Java
Kotlin