Herbert Smith · System Architecture Brief
Enterprise Software · Platform Systems · AI-Assisted Operations
- [email protected]
- (434) 696-7775
- Dallas, TX
- linkedin.com/in/herbsmithdev
- github.com/iideprived
This brief frames selected experience as operational architecture: preserving contracts, reducing manual risk, surfacing failure quickly, and improving developer throughput. The focus is how platform decisions hold up under migration pressure, production support, and long-term maintenance.
1. Migration Engine — MariaDB to Oracle
From labor-heavy conversion to deterministic translation
The migration problem was not just syntax replacement. The real challenge was safely moving between database dialects while preserving execution contracts, procedural intent, and downstream assumptions. I built and performance-optimized a proprietary translation program that converted millions of lines of MariaDB-oriented SQL to Oracle-compatible output in roughly 12 seconds.
The staff-level value was in choosing an architecture that could reason about structure rather than rely on brittle string substitution. That meant modeling translation around abstract syntax and rewrite rules, then hardening the conversion path for the hard parts: datatype mismatches, dialect-specific functions, and stored-procedure complexity where small mistakes become expensive operational failures.
Challenge
Manual migration timeline estimated at four months across seven engineers
Innovation
AST-oriented SQL translation with automated rewrite and parity-minded output generation
Impact
Execution collapsed to seconds while preserving confidence in contract behavior
2. Enterprise Observability Patterns
Build observable systems before incidents demand them
At Citi, I built and extended interceptor-driven request processing and surrounding backend framework patterns to make observability part of the architecture instead of a bolt-on feature. The goal was simple: when a service is under load, failing intermittently, or being audited, the system should already know how to explain itself.
That philosophy showed up in health checks, error logging, and data auditing embedded directly into the request/response path. This created safer production support conditions because availability signals, failure evidence, and historical traceability were treated as expected platform behavior — not left to one-off implementation quality in each endpoint.
Pattern
Interceptor-driven backend processing with consistent framework-level behavior
Safety
Health checks and auditability designed in early to reduce diagnostic blind spots
Why It Matters
Reliable operations depend on systems that surface failure modes quickly and consistently
3. Developer Leverage — Kotlin DSL + Code Generation
Developer leverage via generative tooling
Developed a Kotlin DSL to model site structure as a typed system, using KSP to emit canonical HTML and metadata. This engineering posture removed repetitive decision loads and context switching by replacing manual authoring with type-safe scaffolding. The result: increased throughput and the elimination of implementation drift across delivery flows.
Why
Reduce context switching and repetitive UI assembly across delivery flows
Tech
Kotlin DSL, AST modeling, and KSP-backed code generation
Staff Impact
Less boilerplate, stronger type safety, more consistent system-wide output