DevOps

I have been working in DevOps and in various ways for years. It has become my primary focus more recently. I spend most of my days in one of the following:

  • AWS
  • Jenkins
  • Docker
  • Terraform
  • Kubernetes
  • Cloudflare
  • New Relic
  • Percona
  • PagerDuty

Software Engineer

Building web applications, REST APIs, websites, CMS(s), and iOS application using various tools from LAMP stack to xCode.

  • LAMP
  • DI
  • iOS
  • REST
  • CMS(s)
  • Unit Tests

Familiar Languages

Just a list of my most used or familiar programming languages

  • php
  • Swift
  • SwiftUI
  • Bash
  • Javascript
  • HTML
  • CSS

Other Things

More fun tools

  • XCode
  • Git
  • Test Flight
  • Laravel
  • CakePHP
  • Yii
  • Wordpress
S
O
L
I
D
Design Principals

Single Responsibility

Every class / module should have a "single" responsibility or problem that is solves.

Open / Closed Principle

You can extend existing functionality but leave the existing well tested code alone.

Liskov Substitution Principle

Basically, you should be able to interchange subclasses without needing to change anything. The super class will still function fine. Think Animal superclass. Maybe a "speak" function is not ideal because there are animals that can not speak. OR, if you were to implement speak, a handled error could be used.

Interface Segregation Principle

Create multiple, as many as needed, interfaces and have classes implement each one. Ties togehter withe the Single Responsibility idea.

Dependency Inversion

Depend on abstractions no concretions. This allows for a much more hot-swappable or modular application.