Senior .NET / enterprise systems developer focused on practical GenAI adoption, agentic workflows, and secure AI-assisted delivery.
My current portfolio explores how LLMs can be used safely and usefully in corporate software delivery: improving requirements capture, generating structured artefacts, integrating deterministic business rules, and building auditable AI-assisted workflows rather than black-box demos.
- csharp-semantic-document-processor - .NET 8 and Semantic Kernel document-processing workflow with multimodal classification, typed extraction, deterministic C# policy checks, reviewable outputs, and token/correlation telemetry.
- sample-agent - portable email-to-report agent pattern that turns unstructured business requests into governed report outputs with clarification, permission, generation, response-drafting, and audit steps.
- loop-design-build - provider-agnostic harness for bounded human-in-the-loop agentic development, using Git-tracked markdown state to keep progress auditable and stop on ambiguity.
- Sample-NYCTraffic-Refresh - legacy-refresh case study showing how the loop-design-build harness delivered a Node/React/SQLite operational data exploration tool in narrow, reviewable slices.
- csharp-vision-ai-integration - C# multimodal vision integration sample with environment-based secret handling, mockable boundaries, and agent-harness-friendly architecture.
- cryptic-solver - neuro-symbolic crossword solver and tutor UI combining LLM interpretation with deterministic Python validation for letter-level mechanics.
- How to separate LLM reasoning from deterministic software responsibilities.
- How to put typed contracts, policy checks, tests, and audit trails around AI-assisted workflows.
- How agentic development can be made observable and interruptible rather than treated as autonomous magic.
- How enterprise teams can evaluate practical AI adoption through small working slices, not slideware.
- How product-facing AI concerns such as prompt injection, data exfiltration, access control, auditability, and provider portability affect architecture.
- Secure AI-assisted SDLC workflows.
- Agent orchestration patterns that remain portable across tooling vendors.
- C#/.NET integration with LLM and multimodal model APIs.
- Governance boundaries between internal engineering AI use and AI embedded in delivered products.
- Turning vague business requests into structured, testable, maintainable systems.