My Resume

Hi, I'm Josh.
A WordPress Web Developer

San Francisco, CA

(skip to the end, please…)

I got my start with WordPress around version 2.9—”Carmen”. I have a pretty typical story for people in my shoes: I started off by building sites for friends and family. I charged a few hundred bucks and popped out a theme with their logo on it.

College rolled around and I discovered that while the curriculum was helpful for learning the knowledge behind programming, it wasn’t quenching my desire to work on the web. I was being taught C# and Java, as opposed to my interest PHP, JS, Ruby, Python. I dropped out with a couple years under my belt-ready to get started while appreciating some of the foundational knowledge I gained.

I then jumped headlong into freelancing. For my age and experience, I did pretty OK! I found most of my work via oDesk and the WordPress Jobs board. However, I was itching to be able to pursue more in-depth topics and abilities that my freelancing left no time for.

I started applying for jobs and was hired by an SEO/marketing/development firm in Charlotte, NC. I was quickly marooned into a world of custom plugins and themes that I was responsible for maintaining. Being the sole developer at the agency, I was the go-to for the full spectrum of web needs—front and back end. After a year there, the company dissolved; I was on my own once again.

With a bit more experience and knowledge under my belt, I started a partnership with a designer-friend of mine; we worked together for a little over a year. My role was a 60/40 split—front and back end. I came to greatly prefer working on back-end projects—integrating an API into a custom or 3rd party plugin, whipping WooCommerce into something neat, or just utilizing WordPress as a CMS/app framework.

In January of 2015, I took on an apprenticeship with the folks at Upstatement, and in March of ’15, a full-time position at 10up.

About a year and a half later, we come to now: I’m headed to the Bay to join NerdWallet as a Senior Software Engineer on their Publishing Platforms team.
Relevant Employment History
Clickcom
2012-2013
Web Developer
Sole developer on all web-related projects.

Responsibilities included:

  • Front-end development
  • Quoting projects
  • Occasionally sitting in on discovery meetings to refine scope
  • Converting PSDs from designer into WordPress websites
  • Ensuring browser compatibility

Back-end development

  • Maintenance of custom plugins from past projects (membership, widgets, post loops, theme helpers, etc.)
  • Creation of custom plugins and extensions
  • Integration of 3rd party plugins where appropriate

Server maintenance

  • Creation and maintenance of email accounts
  • Spinning up new servers when needed
  • Ensuring reliability of existing server stack
  • Implementation of server monitoring and optimization tools
Freelance
2012-2014
WordPress Web Developer
Full stack web developer using WordPress as a CMS/application framework.

Had my hand in turn-key business solution-plugins, mini social networks, membership sites, ecommerce sites, startups, and more. 80/20 split plugins/themes.

Tools:

  • PhpStorm—the best IDE on the block, with WordPress integration/support
  • Sublime Text—text editor of choice when I don’t need the feature-set of an IDE.
  • VVV – a vagrant configuration that is suited for WordPress development
  • SourceTree—Git/SVN client
  • Roots—starter theme that abstracts much of the WordPress theming system
  • Gulp—task runner— and a handful of plugins, esp. LiveReload.
  • BrowserSync—npm module that makes dev sites publicly accessible and sync-able
Lucky Hat Studios
2013-2014
Web Director
Partnered with a designer-friend to work in tandem on all front-end projects that come across our plates.

Unique process that presented content and business goals above all else.

Responsibilities included:

  • Holding meetings to determine site and business goals, target market, content hierarchy, functionality, and more.
  • Working with designer to determine wireframes and content hierarchy
  • Advising designer on current capabilities and guiding designs to be web-friendly
  • Taking finalized designs/wireframes and creating a WordPress theme, site content plugin, and integrating all required functionality through custom and 3rd party plugins
Upstatement
January 2015-April 2015
CMS Developer
I spent 3 months working with the great folks at Upstatement as a CMS/WordPress Developer Apprentice. I was tasked with all things WordPress, including writing Timber/Twig templates, creating/integrating plugins, and utilizing WordPress as a CMS for clients in publishing/news.
10up
April 2015-October 2015
Web Engineer
10up
October 2015-December 2016
Senior Web Engineer
Senior Software Engineer
January 2017-Present
NerdWallet
WordPress
With a plugin in the repo, dozens of custom plugins, and more custom themes than I can count, I have my share of experience with WordPress.
I know the “WordPress” way, the different APIs WordPress offers, and how to make something that doesn’t break when it (or WordPress) is updated.
My goal is to have the entire source of WordPress stepped through (yay PhpStorm + Xdebug!) by mid-2015.
PHP
I may not have the entire PHP Manual memorized, but I also don’t have to ask Stack Exchange every time I get stumped. I have most of the intermediate abilities of PHP under my belt; I’m excited to learn more about namespacing and interfaces, and fully integrating SOLID principles in my code.
HTML
HTML is the language of the web! I’ve yet to learn <canvas> or <svg>; I stay semantic; I’m learning about writing accessible markup.
CSS
I’ve got most of the…wonderful world of CSS…mastered; the skill I have yet to perfect is CSS animations! I make efforts to architect any CSS I have a hand in so it progressively enhances a site—delivering a readable/usable experience for all and “cascading” style on to browsers that support it.
I also make efforts to build CSS in an atomic pattern – so that a design is translated to actuality in a consistent way throughout a site, and so that elements can be re-used in as easy a fashion as possible.
Everything I build is responsive, either with a well established grid system (Bootstrap) or a custom one.
JavaScript
I consider myself an intermediate JavaScript developer. I use it with every project for DOM manipulation and interactivity.
I’ve successfully implemented real-world projects using Backbone, Ember, and React.
I’d like to learn how to use Javascript to manipulate more advanced HTML elements, like canvas.
LEMP/LAMP stack
My day-to-day work is within a Vagrant instance (VVV), which is geared around a LEMP stack.
This site runs on a custom, Ubuntu-based Digital Ocean droplet that I configured myself.
It features SSL from Let’s Encrypt, Full Page and Object Caching via APCu, and HTTP/2.