Hi, I'm Josh.
A WordPress Web Developer
(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
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
- 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
- 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
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
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
January 2015-April 2015
April 2015-October 2015
October 2015-December 2016
Senior Web Engineer
Senior Software Engineer
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.
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 is the language of the web! I’ve yet to learn <canvas> or <svg>; I stay semantic; I’m learning about writing accessible markup.
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.
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.