Про мене

Тут я ділюся досвідом, який накопичую, працюючи з .NET та веб-розробкою: навчальні матеріали, пояснення того, що зараз змінюється в розробці, і детальні розбори проблем, з якими стикаюся в роботі, разом із тим, як я їх вирішив.

Пишу для розробників, яким це може знадобитися у власних проєктах. Якщо помітили помилку, пропущену деталь або маєте ідею для статті, залишайте коментар чи пишіть мені напряму.

Про мене

Я - провідний software engineer із понад 10-річним досвідом проєктування та розробки вебзастосунків і розподілених систем. Працюю із сучасною платформою .NET, ASP.NET Core, Entity Framework та TypeScript, створюючи продуктивні API, сервіси й інструменти для розробників. Проєктую cloud-native рішення для Azure та AWS, використовую Docker, Kubernetes, автоматизовані CI/CD-процеси й спостережуваність на базі OpenTelemetry. У розподілених системах застосовую event-driven architecture, RabbitMQ, Azure Service Bus, CQRS і Domain-Driven Design. Окремий напрям моєї роботи - інтеграція AI у прикладні системи, зокрема побудова AI-native сервісів та інструментів на основі Model Context Protocol. Фокусуюся на рішеннях, які залишаються масштабованими, надійними та зрозумілими в довгостроковій підтримці.

Open-source проєкти

Я активно займаюсь розробкою інструментів для покращення якості коду та продуктивності розробників.

AzVault - кросплатформний desktop-клієнт для безпечної роботи з Azure Key Vault. Застосунок побудований на Tauri 2, Rust, React і TypeScript, використовує автентифікацію через Azure CLI та не зберігає значення секретів або refresh tokens локально.

Ключові особливості:

EntityLengths.Analyzer - це Roslyn аналізатор, який допомагає контролювати обмеження довжини рядків у C# коді. Він аналізує присвоєння властивостей та перевіряє їх відповідність обмеженням довжини, визначеним через атрибути або конфігурації Entity Framework.

Що він робить:

EntityLengths.Generator - це C# генератор вихідного коду, призначений для автоматичного створення констант довжини рядків на основі конфігурацій Entity Framework та анотацій даних. Аналізуючи конфігурації ваших моделей, він усуває потребу в ручному підтримуванні констант та зменшує ризик використання жорстко закодованих значень довжини у вашому додатку.

Що дає:

CentralConfigGenerator - dotnet tool для автоматичного створення централізованих конфігураційних файлів для проєктів .NET. CentralConfigGenerator аналізує структуру вашого рішення і створює правильно налаштовані файли Directory.Build.props та Directory.Packages.props для стандартизації налаштувань у всіх ваших проектах.