Fullstack enterprise software engineer working primarily within the Java and .NET ecosystems, alongside modern web development with Angular and Blazor. My professional experience includes working with a variety of technologies spanning the stack from TypeScript, Spring Boot, .NET, and ILE RPG to SQL Server, DB2, and the iSeries AS/400. As an avid open source developer, I contribute to .NET Core libraries and tools within the OSS community and frequently work on my own open source projects available to the general public.

Software development is my passion and I enjoy the challenge it brings each and everyday. When I’m not hacking away on the command line, you’ll most likely find me spending time with family and friends, writing about technology on my C# and .NET-based blog, or browsing around GitHub in search of new projects to work on.

Skills

Programming & Scripting Languages

  • C#
  • Java
  • Rust
  • Javascript
  • Typescript
  • Python
  • T-SQL
  • DB2 SQL
  • RPG
  • PowerShell
  • Bash

Backend Frameworks

  • .NET Core
  • .NET Framework
  • Spring
  • Spring Boot
  • JEE
  • Django
  • Django REST Framework
  • NestJS
  • Rocket

Frontend Libraries, Frameworks, & Build Tools

  • HTML5
  • CSS3
  • SASS
  • jQuery
  • AngularJS
  • Angular
  • Vue
  • React
  • Blazor
  • Bootstrap
  • Tailwind
  • Material Design
  • Angular Material
  • Flex Layout
  • NgRx
  • Nx
  • npm
  • yarn

.NET Technologies

  • NuGet
  • MVC
  • WebApi
  • Razor
  • Entity Framework Core
  • Xamarin Forms
  • AutoMapper
  • MediatR
  • FluentValidation
  • Moq
  • xUnit
  • NUnit
  • Identity
  • IdentityServer
  • Dapper
  • Blazor

Java Technologies

  • Maven
  • JSP
  • JDBC
  • Hibernate
  • JPA
  • Spring MVC
  • Spring REST
  • JUnit
  • Mockito
  • Mountebank
  • jBehave
  • Orika

Web Technology & Design Patterns

  • Git
  • TFVC
  • Postman
  • Browser Dev Tools
  • RESTful API Design
  • CQRS
  • DDD
  • TDD
  • BDD
  • Clean Architecture
  • SOLID Design Principles
  • HATEOAS
  • OIDC
  • OAuth2
  • Flux

Development Operations

  • Chef
  • Jenkins
  • Windows Server
  • Wily
  • Splunk
  • Application Monitoring
  • On-call Production Support
  • Runbook Operations

Azure Cloud Computing

  • App Service
  • CDN
  • DevOps
  • Pipelines
  • Repos
  • Networks
  • Application Insights

Software Methodologies & Project Management

  • Software Development Life Cycle
  • Agile
  • Scrum
  • Retrospectives
  • Grooming
  • Scoping
  • Code Reviews

Operation Systems & Databases

  • Windows XP/7/8/10
  • Ubuntu
  • macOS
  • IBM iSeries AS/400
  • SQL Server
  • PostgreSQL
  • IBM DB2
  • SQLite3

Development Environments & Editors

  • Visual Studio
  • Visual Studio Code
  • SQL Server Management Studio
  • Azure Data Studio
  • Rider
  • PyCharm
  • CLion
  • IntelliJ
  • IBM RDi
  • Vim

Work Experience (5)

Applications Developer
Sierra Pacific Industries, Windows Division
January 2020 - Current
https://www.sierrapacificwindows.com/

Sierra Pacific Windows is part of Sierra Pacific Industries, the largest millwork producer and the second largest lumber company in the U.S. Sierra Pacific Industries, and produces high quality products installed in over 30 countries world wide, with a focus on residential and commercial properties in the United States.

  • Developing internal applications using RPG for use on the IBM iSeries AS/400 and VB.NET for desktop software

  • Using Rational Application Developer for i (RDi) for RPG development and Visual Studio 2019 for .NET

  • Architecting new program features and existing bug fixes for various company personnel

  • Maintaining legacy codebases concerning order and manufacturing processing

  • Refactoring existing code to adhere to modern RPG and VB.NET standards

  • Performing system administration tasks on the IBM iSeries AS/400

  • Coordinating with business analyst to define technical user requirements

  • Troubleshooting user issues in a timely fashion and orchestrating immediate hotfix solutions

  • Administering database development operations with DB2 and SQL Server interfacing with IBM and .NET applications

  • Designing new tables to conform with existing normalized table schema to assist with dataware housing and OLTP-related tasks

  • Ad hoc querying and report generation with SQL Server Management Studio (SSMS) and RDi

Associate Software Engineer
VSP Global
June 2018 - January 2020
https://vspglobal.com

Vision Service Plan (VSP) is a company founded by vision care professionals with the primary goal of servicing patients with unmatched quality and service, both in person and through technological innovation.

  • Developed Java-based API solutions with Spring and Spring Boot backed by SQL Server and DB2 databases

  • Lead development of a tier one application rewrite using Angular with TypeScript and NPM

  • Maintained a multitude of existing legacy and modern application codebases comprising of millions of lines of code in total

  • Updated several mission critical legacy Java EE applications for optometry practices used nation wide with new features

  • Deployed fullstack and frontend applications to Windows servers, Linux servers, and AWS using automated CI/CD pipelines

  • Provisioned and managed a fleet of Windows and Linux servers using RDCM, Chef, and VMware

  • Participated in a rotating 24/7 oncall schedule to provide production application support

  • Coordinated with prosuming and consuming API teams to develop design contracts between applications

  • Designed new features to APIs and fixed existing bugs

  • Practiced agile software development with scrum and two week sprint-based development work

  • Investigated application irregularities sifting through logs to determine root cause of failures

  • Assisted with schema and table maintenance of IBM DB2 and SQL Server instances and query optimization

Operations Research Analyst
Engility/SAIC
September 2016 - May 2018
https://www.engility.com

Engility, now SAIC, provides services to the United States federal government in the form of systems engineering and enterprise modernization, specializing in contractor services supplied to all branches of military.

  • Provided contractor support for SPAWAR 1.0 Finance Division in the form of data analysis and systems engineering

  • Wrote and maintained a Visual Basic codebase within Excel to perform spreadsheet specific functionality

  • Performed regression analysis and statistical programming using R with Navy-based datasets

  • Extensively used Excel and RStudio for data reporting and high level graphical analysis and exploration

  • Coordinated ETL efforts and data normalization between engineering and financial teams

Lead Math Instructor
Mathnasium
August 2014 - September 2016
https://mathnasium.com

Mathnasium is a math-based learning center providing tutor services for kids around the nation ranging from first grade to high school seniors.

  • Taught mathematics from pre-algebra to calculus and differential equations

  • Oversaw up to 30 students while maintaining a productive learning environment

  • Worked within a classroom environment to enhance student grades and mathematical intuition

  • Performed private tutoring specialties for physics and advanced mathematics

Student Research Assistant
San Diego State University
August 2015 - August 2016
https://astronomy.sdsu.edu

The Department of Astronomy at San Diego State University employs well-known and respected research astronomers and physicists, with specialties ranging from observation astronomy to theoretical astrophysics.

  • Researched binary star systems to obtain precise astronomical physical measurements including mass, radial velocity, and orbital separation

  • Performed astronomical photometry on large data sets within a Linux environment

  • Used astrophysical data reduction software to manipulate data sets for studying stellar age and evolution

  • Wrote Bash scripts and Fortran code to compute stellar properties optimize data reduction speed to assist with analysis

Education (2)

Bachelor of Science,
Astrophysics
San Diego State University
2013 - 2016
  • Mechanics
  • Electromagnetism
  • Thermal Physics
  • Modern Physics
  • Computational Physics
  • Quantum Mechanics
  • Nuclear Physics
  • Stellar Astrophysics
  • Galactic Astrophysics
  • Computational Astronomy
  • Fortran Programming
Minor,
Mathematics
San Diego State University
2013 - 2016
  • Calculus
  • Differential Equations
  • Linear Algebra
  • Mathematical physics
  • Complex analysis
  • Computational Mathematics
  • MatLab Programming

Publications

23 September 2020

An adventure in vertical slice architecure for decoupled controllers with ApiEndpoints.

Service Lifetimes in a Nutshell in Between Two Brackets
28 July 2020

An expoloration of .NET Core's built-in dependency injection library service lifetime scopes.

26 July 2020

A continuation of building a Blazor application featuring state management with the help of Fluxor.

26 June 2020

A developer guide to state management on the front end and the flux design pattern using Blazor and the Fluxor library.

24 April 2020

An in-depth look at external API network calling using Blazor WebAssembly within a real world context using the GitHub public API.

2 February 2020

The fourth part of a series discussing business logic encapsulation, MediatR, and FluentValidation for .NET Core applications.

19 November 2019

The third in a series discussing unit testing with xUnit, Shouldly, and in-memory SQLite databases using the disposable pattern for .NET Core applications.

5 November 2019

An article exploring the recently added nullable reference type feature in C# 8.0 and discussing its various use cases.

21 October 2019

The second publication in a series discussing the persistence layer of our application using the Unit of Work and Repository Patterns with Dapper.

6 October 2019

The first publication in a series guiding developers to build a real world application with .NET Core, Dapper, and SOLID design principles.