Skills

PHP Laravel HTML CSS JavaScript Vue.js npm Yarn Sass / SCSS Composer Linux Git Version Control MySQL Postgres Nginx Apache MVC Frameworks Docker Kubernetes Continuous Integration CakePHP Travis CI Jenkins Windows Networking Google Cloud Platform Amazon Web Services
Skills and areas of expertise.

Experience

Senior Software Engineer @ Freedom Financial Network

July 2017 - Current Tempe, Arizona

  • Developed, managed and maintained business-critical RESTful Laravel PHP applications and infrastructure.
  • Developed continuous integration solutions for delivering micro-service architecture hosted on Google Cloud Platform and Google Kubernetes Engine.


Software Development Engineer @ IO Data Center

July 2015 - March 2017 Scottsdale, Arizona

  • Planned, designed and developed second iteration of the PHP based customer authentication and management portal built on the Laravel MVC framework.
  • Consumed Okta REST API to implement authentication and authorization and identity management within a custom-built customer web portal.


Cloud Engineer @ IO Data Center

June 2014 - July 2015 Scottsdale, Arizona

  • Automated the continuous deployment of Arch Linux-backed, OpenStack instances via SaltStack.
  • Built Arch Linux images with Packer for PXE booting cloud servers and infrastructure.
  • Deployed Elasticsearch, Logstash and Kibana monitoring platform in a Docker-backed, containerized environment.
  • Deployed Consul scripts written in Python for monitoring service usage and alerting on service warnings/failure.
  • Locally built and tested cloud instances in Vagrant test environments.


Web Application Developer @ Arizona State University

April 2011 - June 2014 Phoenix, Arizona

  • Designed and developed a new iteration of the PHP based learning management system built on the CakePHP MVC framework.
  • Rearchitected a normalized MySQL database from existing fragmented database structure.
  • Designed a detailed site frontend written in HTML, CSS and jQuery/JavaScript.


Web Developer / Designer @ Southwest Medical & Rehab

March 2009 - April 2011 Phoenix, Arizona

  • Worked alongside senior developer to conceptualize, design, and deploy a custom PHP based e-commerce platform built on Zend Framework.
  • Designed and implemented multiple detailed site layouts written in HTML, CSS and jQuery/JavaScript.
  • Built out a highly available infrastructure for hosting of the e-commerce platform.
  • Increased traffic to all sites via email campaigns and search engine optimizations.


Solution Center Technician @ PetSmart Store Support Group

February 2008 - March 2009 Phoenix, Arizona

  • Provided over-the-phone technical support to store and corporate employees.
  • Performed advanced troubleshooting on Windows based store servers, registers, and workstations.

Work experience and job history.

Education

DeVry University

July 2005 - February 2008

  • Bachelor's of Science Degree in Network and Communication Management


Shadow Mountain High School

July 2001 - May 2005

  • Received high school diploma
  • Graduated National Honor Society member

Educational history and achievements.

Projects

Twine

Twine is a simple string manipulation library with an expressive, fluent syntax.

Twine takes an object-oriented approach to making string manipulation and comparisons easy and readable. With Twine every string is an object. This gives you power and flexibility that native strings do not have in PHP.

Check out the slides from my azPHP presentation or the article on Laravel News.

Example:

use PHLAK\Twine;

$string = new Twine\Str('john pinkerton');

$string->uppercase(Twine\Config::WORDS); // 'John Pinkerton'
$string->substring(5, 4)->equals('pink'); // true
$string->words(); // ['john', 'pinkerton']


vueColorClock

A color changing clock, the background color changes with every hour, minute and second.

vueColorClock


SemVer

A semantic versioning helper library for PHP.

Featured on Laravel News

Example:

use PHLAK\SemVer;

$version = new SemVer\Version('v1.2.3');

$version->incrementMinor(); // v1.2.3 -> v1.3.0
$version->incrementPatch(); // v1.3.0 -> v1.3.1


azPHP Presentation: PsySh

My presentation on psysh, a terminal-based interactive PHP debugger and REPL for the azPHP June, 2019 meeting.

azPHP June, 2019: psysh

https://www.meetup.com/azPHPUG/events/rrzlqqyzjbhc/


Stash

Simple, fluent PHP caching library.

Example:

use PHLAK\Stash;

$stash = new Stash::memcached(function ($memcached) {
    $memcached->addServer('localhost', 11211);
});

$stash->put('foo', $data, 5); // Cache $data for 5 minutes
$stash->has('foo'); // True if 'foo' is in the cahce
$stash->get('foo'); // Retrievs the 'foo' from the cache


PHX2600

Homepage for the PHX2600, the Phoenix, Arizona Network of Hackers.

phx2600.org


Config

PHP library for easy configuration management.

Example:

use PHLAK\Config\Config;

$config = new Config('path/to/config/databse.yaml');

$config->set('port', 3307); // Sets 'port' config item
$config->get('hostname'); // Returns 'localhost'


Chronometer

Measure the passing of time.

Example:

use PHLAK\Chronometer\Timer;

Timer::start(); // 1562650807.427
Timer::addLap();
Timer::lastLap()->duration(); // 5.8519079685211
Timer::stop(); // 1562650817.0831
Timer::elapsed(); // 9.6561479568481


Directory Lister

A PHP based directory lister that lists a directory and all it's sub-directories and allows you to navigate there within.


Uber Gallery

An easy to use, simple to manage, web photo gallery written in PHP.

Software and web projects.

Accomplishments

  • Eagle Scout
  • Attended Laracon 2016, 2018
  • Attended Laracon Online 2017, 2018, 2019
  • Regular azPHP attendee/presenter
  • Active PHX2600 member
  • Past attendee of Defcon Security Conference
  • Regular attendee of CactusCon Security Conference
  • Active in various online and community events
Miscellaneous accomplishments.