Engineering Focus
I am a full-stack software engineer focused on designing and deploying production-grade web systems using Ruby on Rails, Golang and React, with additional experience implementing Joomla and WordPress installations where appropriate. My work centers on building API-first architectures with clearly defined domain models, secure authentication boundaries, and infrastructure that can be reliably deployed and maintained in live environments.
I approach application development as a systems problem—aligning backend architecture, frontend state management, database design, and deployment strategy into a cohesive, production-ready stack. My engineering practice emphasizes clear separation of concerns, structured service layers, disciplined version control workflows, and infrastructure designed for scalability and long-term maintainability.
Backend Architecture
My backend systems are built as API-driven services implemented primarily in Ruby on Rails (Rails 7 API-only applications) and, where appropriate, in Go for lightweight, high-performance service layers. These applications are structured around clearly defined domain models, explicit service layers, and well-defined API boundaries between client applications and backend services.
In Rails-based systems, authentication is implemented using Devise with JWT tokens to establish secure, stateless authorization boundaries between frontend clients and backend APIs. Domain logic is organized through structured service objects and controller boundaries that maintain a clean separation between business logic, persistence, and transport layers.
In addition to Rails-based systems, I have developed backend services in Go, including the Groovey Event Calendar / todo_axios_api project. This system demonstrates a Go-based API architecture supporting relational database interaction, containerized deployment, and structured service interfaces designed for maintainable backend services.
Across both technology stacks, data is modeled in PostgreSQL using relational schemas designed for clarity, integrity, and scalability. Where location intelligence is required, PostGIS extensions are incorporated to support geospatial queries and structured geographic data handling.
Frontend Architecture
On the frontend I build strongly typed React applications using TypeScript. Client applications are organized around structured Axios service layers that separate network communication from UI components and state management logic.
Styling is implemented through modular SCSS architecture that emphasizes maintainability and component-level organization. This approach supports consistent design patterns while allowing individual components to remain isolated and reusable across the application.
Infrastructure & Deployment
All application services are containerized using Docker Compose to ensure consistent environments across development, testing, and production. This approach eliminates configuration drift and simplifies reproducible deployments.
Continuous integration and deployment pipelines are implemented using GitHub Actions. Container images are built and published to GitHub Container Registry (GHCR), then deployed to Ubuntu-based VPS infrastructure. This workflow supports reliable versioned deployments, automated builds, and structured release management.
Payment & External Integrations
Where applications require payment processing or transactional services, I integrate Stripe workflows designed around secure server-side handling of sensitive operations. Business logic remains isolated from external service interactions, ensuring that payment processing remains modular, auditable, and maintainable within the overall system architecture.