Building a confirmable MultiSelect with Angular's ControlValueAccessor
Build an Angular multiselect with draft selections, explicit confirmation, cancellation, and ControlValueAccessor integration.
Senior software engineer

I’m a senior software engineer building reliable backend systems and web applications. My work spans .NET, distributed systems, and frontend architecture with React, Next.js, and Angular.
I care about what happens beyond the happy path: how systems handle failures, how teams investigate problems, and how easily the next developer can understand the code. Here, I share practical lessons on testing, performance, and building software that holds up in production.
Build an Angular multiselect with draft selections, explicit confirmation, cancellation, and ControlValueAccessor integration.
Compare approaches to database integration testing and use Testcontainers to run tests against a real database.
Create custom .NET project templates to reuse project structure, dependencies, and configuration across new projects.
Use ClipboardJS as an ES module in Svelte to copy rich text and images, with browser lifecycle and success/error feedback.
Write comprehensive assertions with snapshot testing and Verify, including JSON responses from an API endpoint.
Explore web performance measurements and why page-load metrics alone do not capture the experience of a single-page application.
Make complex Entity Framework Core queries easier to read and reuse with expression predicates and LINQKit.