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.
- 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
Had my hand in turn-key business solution-plugins, mini social networks, membership sites, ecommerce sites, startups, and more. 80/20 split plugins/themes.
- 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
Unique process that presented content and business goals above all else.
- 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
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 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.
I’ve successfully implemented real-world projects using Backbone, Ember, and React.
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.