Throughout the last few posts, I’ve been talking a little bit about WordPress Developer Salaries, but have also done so by taking a look at exactly what it means to be a WordPress developer.

If you’re just catching up, the previous posts are:

  1. A WordPress Developer Salary Should Be…?
  2. WordPress Developer Salary: Manage That Content
  3. Of Salaries and Software Development with WordPress
  4. The Roles of WordPress Development

There have been a lot of awesome comments and I’ve enjoyed hearing the different perspectives and opinions that everyone has brought to each post. There’s one more aspect of WordPress development that I want to look at before ending the series.

I’ve already mentioned this throughout several of the previous articles (and it’s been bought up in the comments, as well), but I thought it’d be worth outlining it here not only to share my concrete opinions on the matter but hopefully as an attempt to provide a reference or even maybe some food for thought for those who are looking for WordPress-related jobs, and those who are looking to staff WordPress-related jobs.

Specifically, it’s about looking at the term “WordPress Developers” and trying to give an explanation as what that really means.

After all, we’ve already said that the term developer is overused to the point of having no meaning, right?

Types of WordPress Developers

A couple of years ago, I was talking about this very thing with a friend of mine who is someone who does great work with WordPress. The thing is, he isn’t a developer.

This does not change the fact that he’s put together some really good sites for other people. This also doesn’t mean that he’s a type of a programmer or developer – something he, himself, acknowledged (that is to say, I’m not the one saying “nice work, but you’re not a programmer” ;).

Professionally, he calls himself a title that he gave himself: An implementer. I thought that was a really great, creative, and honest title. It explains what he does, differentiates the idea from a programmer, and manages to set an expectation for others when they hire him.

That’s something we should all be after.

The Implementer

By our industry standards, most people would probably argue that he’s a developer, but if you’re truly looking for someone based on a set of skills, then there are qualifiers that exist – there are things that differentiate us from one another. This is not a good thing, this is not a bad thing – this is simply nature of the beast, so to speak.

So anyway, he considers himself an implementer because he’s relatively comfortable taking mocks and converting the designs into themes, and then using plugins to fill in the gaps of functionality that a site needs that he knows he can’t build.

I love that. He knows his strengths, he knows his weaknesses, the plays to the former, and he leverages the strength of others for the latter. And he does so with good results.

But how does this different from a programmer?

The Programmer

When you look at the skill set of a typical programmer, it’s much wider than that of an implementer. Again, this is a neutral thing – it’s not meant to be spiteful or disrespectful. Whereas implementers fill in their gaps with pre-existing solutions, programmers should not only be able to fill in the gaps with solutions that they derive, but should be able to think creatively about a problem such that they not only understand the business domain but that they are able to write tools, functions, and general code that solves said problem.

By this, I mean that where as implementers see, say, Custom Post Types as a way to create a new type of post, programmers may see them as a combination of a model and a view. It’s a shift in architectural perspective.

Where Does This Leave Us?

Perhaps a better of of explaining it at a general level is basically this: Given a problem to be solved with WordPress – either setting up a generic website or some type of CMS that collects emails of site visitors – programmers and implementers will approach this differently:

Implementers will most likely:

  • Select a theme from a reputable and trusted source
  • Customize the theme using artwork provided to them
  • Take advantage of some of the theme options to tweak the look and feel
  • Install a few plugins to improve the core functionality of the site
  • Perform the necessary feedback loops and iterate until ready
  • Launch between their local machine and production
  • …and probably a little more that I’m missing.

A programmer (well,  a good programmer), on the other hand, will likely do something more like this:

  • Partner with a designer to come up with some comps for a design
  • Get sign off on the client’s favorite design
  • Create a custom theme based off of the approved design
  • Identify the points of the theme that don’t have to do with presentation, but are necessary for the site and either use a premium plugin, a high-rated plugin, or build the functionality themselves
  • Maintain the work in source control tagging each iteration
  • Have deployments from development to staging, and staging to production
  • Perform the necessary feedback loops and iterate until ready
  • …and probably a little more that I’m missing.

There are even finer points to be discussed such as build tools, pre-processors, minification, and so on, but you should get the idea from the terms above the difference in how the types will approach the problem.

What’s arguably the most interesting is that from a business standpoint, it may look as if it’s a better business decision to hire an implementer. You can still get good work, probably faster, and cheaper. If you hire a programmer, the work will take longer, and be more expensive (after all, time is money, as they say).

And in some cases, that’s true and perfectly legit. I’m not here stating one is any better than the other.

But the difference lies in how the two types approach problem solving. Programmers – especially those with a computer science background – have been trained to approach problems from a general perspective and then work to use whatever tools are given to them in order to provide solutions.

This is not to ignore or disrespect some of the self-taught – some of the best programmers that I know are those who have trained themselves. They’re just that smart. Not all of us are so lucky :). But I digress.

Implementers on the other hand may be trained in a set of tools or applications (or they may be self-taught – it doesn’t matter), and know how to take advantage of all of them on a more advanced level. Perhaps they’ve been trained through a course, perhaps they’ve trained themselves. Whatever the case, they’re good at what they do.

So where does the difference really lie?

Personally, I think that it comes down to how the problem is approached, the business domain is understood, and how the ultimate solution is implemented.  There’s likely more rigidity that comes with implementers; whereas, programmers often have the ability to make things happen beyond what implementers are capable of, and have a different process for doing so.

Each role has its trade offs. What doesn’t, anyway?

Anyway, there’s more than could be said about each of these roles especially as it relates to personality types and how that can impact a business relationship, but that’s beyond the point of this series of posts.

For now, this is just the general survey of two types of ways to get things done with WordPress. Whatever you opt to choose largely depends on your budget and perhaps how flexible (or how “custom”) you want you solution to be.

Category:
Articles
Tags:

Join the conversation! 46 Comments

  1. Great post, Tom.

    I suppose I’d consider myself an implementor. Muddy as the lines might be between the two, I like this differentiation, implementor and developer. Silly as it may sound, it helps me feel like I fit, without treading on the toes of those with different skill sets from mine.

    The lines can get really blurry, especially for the client, but I think the key is the level of understanding of programming languages and practices in general, not just as they relate to WordPress.

    In my case, I’m able to build, and am comfortable building custom themes to match a solution to my clients needs. However, I get lost when, for example, it comes to things like extending plugins via hooks. Or, for example, I recently had a situation where I needed to tap into an API, pull data into a theme as xml, then parse that xml into html. This was something that was completely outside of my skill set, but something that I feel a developer would be able to handle naturally.

    One of the questions that I struggled with earlier this year was whether or not I should know these things and whether or not I should be focusing on developer centric skills. I made the decision at one point to go all in with PHP development, in an attempt to be a better WordPress developer. I decided I was going to get Zend certified, I bought some books, and I started my deep dive.

    Eventually I realized that this wasn’t the best approach for me, and that this direction didn’t really leverage my core strengths and my 11 years of design experience.

    It’s not to say that something like a Zend certification would not have benefitted me, but I realized that one of my biggest difficulties has been trying to “be everything to everybody”, so to speak. As a freelancer / solo operator it’s been incredibly difficult at times to handle design, front end work, and development – in addition to all of the other stuff that comes along with trying to grow, and run a freelance business. I felt like I was pursuing like 9 different career paths.

    Bottom line, for me, is that I am still working all of this out, but things just got easier when I decided to recognize my limitations and focus and build on my strengths. I’m good at design, I’m comfortable with HTML, CSS, and preprocessors. I am comfortable with basic PHP, but I fall short with JS and more complex PHP.

    I guess my point is, I’m confident and have absolutely no doubt that I offer value to my clients, and I’m proud of that, but on the same token I’ve never been quite comfortable calling myself a developer because that’s not really what I am. I can accomplish a lot, but there’s definitely a threshold for me, and when I hit that threshold I contract with a developer. That threshold gets higher as each project brings me new knowledge and new experience.

    Looking at my own progress over the past 2.5 years in the WordPress space, and on my own for the past 11 months, I’m really proud of what I’ve learned and what I’ve accomplished. Eventually, as my understanding and knowledge grows, maybe I’ll reach a place where I will confidently refer to myself as a developer but, for now, I’m proud to be an implementor and happy for the distinction.

    • Great response, Jimmy.

      It’s totally valid to have the title “implementer” as part of your skill set. There are plenty of ways for you to partner with other talented people in the community to aide you on a project. It’s also refreshing to read your honesty regarding PHP development. So many people fail to recognize this, thus the issue of the problematic implementer. One who isn’t honest with their client about their own abilities — or lack thereof.

      You know, “let me hack core and that’ll do it!”

      Stay focused on helping the client build WP solutions the right way and success will surely find you.

    • Silly as it may sound, it helps me feel like I fit, without treading on the toes of those with different skill sets from mine.

      I think that’s the thing – we all (well, most, at least) want to be able to unique identify our skill set to prospective clients or employers in the most honest way possible.

      The lines can get really blurry, especially for the client, but I think the key is the level of understanding of programming languages and practices in general, not just as they relate to WordPress.

      I’d say that, for the client, it almost doesn’t matter. There’s probably some discussion that could be had around this and pricing and all of that fun stuff, but I’m not interested in that. The point is, I think for those of us who are providing for solutions to others, it’s nice to have a distinction, but for those who we’re working for, it doesn’t matter as much.

      It’s not to say that something like a Zend certification would not have benefitted me, but I realized that one of my biggest difficulties has been trying to “be everything to everybody”, so to speak.

      Ah, man. I know what you mean – I think that maybe that particular feeling is almost a rite of passage for those who want to go to self-employed route regardless of if it’s with a team or just on your own.

      You can’t be all things to all people, but you can be something really, really great for a type of person.

      Bottom line, for me, is that I am still working all of this out, but things just got easier when I decided to recognize my limitations and focus and build on my strengths.

      Welcome to the club ;).

      Looking at my own progress over the past 2.5 years in the WordPress space, and on my own for the past 11 months, I’m really proud of what I’ve learned and what I’ve accomplished. Eventually, as my understanding and knowledge grows, maybe I’ll reach a place where I will confidently refer to myself as a developer but, for now, I’m proud to be an implementor and happy for the distinction.

      That’s awesome. And, FWIW, this post was never meant to insight a “one is better than the other” type of idea. Not only would I want to treat someone else like that, I don’t even believe it to be true.

  2. What a great serie !

    I’ve done some “implementations” in the past and it was not very fun. I mean I’ve earned money, clients were happy, etc… but while implementers have skills (you have to have a minimum knowledge otherwise you could get some troubles) they can’t go further and when it comes to business the needs are very specials.

    The good news is you can be whatever you want if you decide to. Like you said the only thing that matters is to be good at what you do. But it depends on other criteria. I mean it’s not just about money. It can’t be. I like to know how things work and I like to make them work. Furthermore I like to find better ways to do the same tricks. Makes me happy, creating solutions is much cooler than find resources, by far :)

    However I do not think it’s about being smart it just requires hard work. Indeed you could say this one is better than this one, e.g developers are better than implementers but I doubt this would make any sense. It’s not better because you do it yourself. It’s better because you provide accurate and customized solutions that match specific needs..

    Being developer means being more free to me. I totally agree with you, it’s just another way to think. An implementer will say first “ok I’ll check if there’s some good plugins to do that” whereas a developer will say first “I’ll check if I can do it”.

    Both of them are good resources for project owners. Not all project need developers but there are project that should not be handled by implementers.

    • What a great series !

      Thank you :). One of those things that I wasn’t sure how it’d pan out but I’ve had a lot of fun chatting with other people about this.

      Indeed you could say this one is better than this one, e.g developers are better than implementers but I doubt this would make any sense.

      I don’t think it would make sense either. I think anyone who says that is letting their ego talk rather than letting the truth of the job make the point.

      One isn’t better than they either – they are different and they provide different solutions to different needs.

      Both of them are good resources for project owners. Not all project need developers but there are project that should not be handled by implementers.

      Exactly.

  3. Implementation/developing is a subset of the WordPress programmer’s skill set. The two aren’t necessarily interchangeable.

    I’m fairly fluent in PHP. In that respect I’m a programmer. But most of my work is in development which from time to time includes quite a bit of custom code. I can do that custom code because I’m very comfortable with a code-centric approach.

    An implementer or developer on the other hand is going to have a steep learning curve and possible failure if they find that a theme or a plugin doesn’t do what they need it to.

    See, between the two is a grey area. And a pure developer will often push the limits of their skills. This is the reason for low WP pay rates. You can kludge it in WP development for a long time.

    • Implementation/developing is a subset of the WordPress programmer’s skill set. The two aren’t necessarily interchangeable.

      Agreed. I’d say programmers can be – and, honestly, at certain times should be implementers, but I don’t think implementers are programmers.

      An implementer or developer on the other hand is going to have a steep learning curve and possible failure if they find that a theme or a plugin doesn’t do what they need it to.

      Ah, I didn’t mean to conflate the terms “developer” and “programmer.” I agree with you that programmers / developers are going to be able to create a solution to do whatever it is that they need done if the functionality doesn’t already exist.

  4. If you were an implementer would you have written this differently?

    What if you were a programmer that could write plugins, create a bespoke theme and think creatively about the business domain, but then chose, due to client budget or time constraints, to use and adapt a theme and add some plugins.

    I think that you’re describing two points on a scale, not necessarily two distinct approaches. By your definition I’d be an implementer, but mostly due to a pragmatic approach in not re-inventing the wheel every time.

    There are some implementations where the plugins that are available (like WordPress SEO and Gravity Forms) are far more suitable than anything the client would have budget for me to write from scratch.

    A programmer building sites for clients using WordPress in the way you describe is doing his clients a disservice. Why spend budget creating functionality that can be plugged in with a well tried and tested third party plugin?

    A good WordPress developer will know which approach is best to follow in any given circumstance.

    • “A programmer building sites for clients using WordPress in the way you describe is doing his clients a disservice. Why spend budget creating functionality that can be plugged in with a well tried and tested third party plugin?”

      Okay, you did say “either use a premium plugin, a high-rated plugin, or build the functionality themselves”. excuse my knee-jerkiness.

      But sometimes programmers are implementers…

      :o)

    • If you were an implementer would you have written this differently?

      Perhaps. I’d like to think that “some developers are implementers (at least the pragmatic ones :), but implementers aren’t developers.” Of course, that isn’t meant to be an insult to anyone.

      As I’ve mentioned in other comments, I don’t think any one is better than the other – I just think they solve different needs.

      By your definition I’d be an implementer, but mostly due to a pragmatic approach in not re-inventing the wheel every time.

      Generally speaking, I agree with you. If what you got from my article was that developers never use pre-existing code or plugins, then I did a more job of communication and that falls on me. Pragmatic developers know where the line exists and will implement their own solution if one doesn’t exist, or if one that does exist doesn’t work the way they need it to for their solution.

      There are some implementations where the plugins that are available (like WordPress SEO and Gravity Forms) are far more suitable than anything the client would have budget for me to write from scratch.

      Amen to that.

      A programmer building sites for clients using WordPress in the way you describe is doing his clients a disservice. Why spend budget creating functionality that can be plugged in with a well tried and tested third party plugin?

      That’s a fault of mine on poor writing. The idea is that if “well tried and tested third party plugin” doesn’t exist, they can still find a solution for it.

      No experience, pragmatic developer would try to rewrite something that someone has already done that’s better and that solves the problem exactly as needed.

      A good WordPress developer will know which approach is best to follow in any given circumstance.

      Agreed.

    • What if you were a programmer that could write plugins, create a bespoke theme and think creatively about the business domain, but then chose, due to client budget or time constraints, to use and adapt a theme and add some plugins.

      I’d say that this is one of the best ways to differentiate implementers from developers.

      Implementers have no skills to build a complete solution, hence they only adapt and adjust existing ones.

      Developers are technically capable of building anything from scratch, but they’re (should be) also adequate enough to decide when to customize an existing solution and when to build something from ground zero.

  5. It’s often the case that attempting to put labels on things, people or practices provokes a good debate. For this reason, labels are useful ways of exposing opinions, biases and exceptions – all of which helps us to move closer to a definition of just what the heck it is that we all do.

    Also, as has been said, in attempting to define labels we also recognise the scope and size of the ‘grey areas’ which exist between them.

    If I had to choose a label for myself it would have to be ‘implementor’. Yes, I can write CSS, modify PHP, cause a white screen, fix a white screen, etc. but my focus as a freelancer is building and delivering websites for clients to an agreed budget.

    Yes, I could agree a to take on a project and then spend 6 months coding all the functionality from scratch but do you think my client will be happy to pay me for that time I took (badly) re-inventing the wheel? If they found out later that I’d been recoding my own version of Gravity Forms which I could have just purchased, do you think they’d put repeat business my way?

    A great implementor knows WordPress. He/she knows and keeps current with news and developments within the community, what themes and plugins are available and what differentiates one from another.

    A good implementor is also client-facing and knows how to talk to clients about their business, understanding their needs and translating those into a brief, project scope and quotation.

    A good implementor might also be a developer – if they’re not then they should certainly know how and, more importantly, ‘when’ to get one onboard for a project.

    If you’re running a business, you learn very quickly to play to your strengths. It’s what puts food on the table. I could take a year off and learn PHP but honestly, the ROI just doesn’t justify it.

    Debates like this expose a whiff of snobbery too. Fact is, one label isn’t better than the other – they are both dependent on each other. Great implementors need great developers to be able to do what they do. Great developers need great implementors to take the functionality they have crafted and build something awesome with it – something that a client will be delighted with and willing to pay money for.

    End result: the WordPress community builds more solutions for happy paying clients. That’s the focus. Let’s be wary of too much navel-gazing here – I won’t be explaining the difference between implementor and developer to my clients anytime soon, because they don’t care!

    • It’s often the case that attempting to put labels on things, people or practices provokes a good debate. For this reason, labels are useful ways of exposing opinions, biases and exceptions – all of which helps us to move closer to a definition of just what the heck it is that we all do.

      It can be a touchy subject because whenever you’re trying to clarify what it is that we all do, we have the potential to insult others (or to boast ourselves up) neither of which is what I’m aiming to do or want to do.

      It’s just a matter of, like you said, trying to “move closer to a definition of just what the heck it is that we all do.”

      Yes, I could agree a to take on a project and then spend 6 months coding all the functionality from scratch but do you think my client will be happy to pay me for that time I took (badly) re-inventing the wheel? If they found out later that I’d been recoding my own version of Gravity Forms which I could have just purchased, do you think they’d put repeat business my way?

      Of course not. Then again, you’re not the first to bring up this particular example, so I must have done a poor job of explaining my sentiments in the post.

      I don’t think that developers should build everything thing from the ground up. They need to be able to use a variety of tools at their disposal to assemble something. Sometimes this means creating something on their own, sometimes this is hooking up a third-party utility to some custom code, and sometimes it means just playing implementer.

      Debates like this expose a whiff of snobbery too. Fact is, one label isn’t better than the other – they are both dependent on each other. Great implementors need great developers to be able to do what they do. Great developers need great implementors to take the functionality they have crafted and build something awesome with it – something that a client will be delighted with and willing to pay money for.

      No disagreement from me here, but I do want to say if this post came off as snobby then that was never the intent.

      I don’t hold any one title higher than the other. That’s lame and I don’t really think it can be justified.

      Let’s be wary of too much navel-gazing here – I won’t be explaining the difference between implementor and developer to my clients anytime soon, because they don’t care!

      Ah, this was certainly never meant to be navel-gazing. If anything, it’s just a conversation among peers. It’s like mechanics talking about their specialities on the type of work they do on cars, or musicians talking about the genre of music in which they’re most skilled at playing, or photographers talking about what type of photography is their forte.

      It’s not meant to put anyone down or level anyone up. It’s just talking about segments that exist within our industry. That’s all.

      • if this post came off as snobby then that was never the intent

        It certainly didn’t, Tom. In fact quite the opposite. As always, you raise an interesting topic and promote interesting discussion.

  6. Hey Tom, I like the distinction (and the series of related posts on the same general topic)!

    But maybe the example wasn’t quite right. It seems to me it isn’t so much that implementors and programmers approach the same problem differently, but rather that they approach entirely different problems.

    Those who need a standard WP site with standard functionality already covered by plugins probably need an implementor. Those who need a design or functionality that doesn’t already exist, or want to build their own WordPress themes/plugins/solutions for sale on the market, need a developer.

    • But maybe the example wasn’t quite right. It seems to me it isn’t so much that implementors and programmers approach the same problem differently, but rather that they approach entirely different problems.

      Based on the comments, I think I could have done a better job at differentiating the roles.

      The developer role has a much more to do with a background in software development, they know about things like patterns, architecture, analysis, design, and pragmatism (of course). Their approach is a bit different than how an implementer would approach a problem.

      This isn’t to say one’s better than the other (because I don’t believe that at all), but I do think you’re right on the money with this:

      Those who need a standard WP site with standard functionality already covered by plugins probably need an implementor. Those who need a design or functionality that doesn’t already exist, or want to build their own WordPress themes/plugins/solutions for sale on the market, need a developer.

      Going a step further, I’d say those who have a background in building web applications in other frameworks and then become very, very, familiar with the WordPress API could go about building full-fledged applications on it.

  7. I really like this distinction, and am going to use it. I’ve never been comfortable using the term ‘developer’ to describe myself, but for my particular client base it got the message across that I did more than just design. I’ll take designer and implementer, because even though I’m getting more and more comfortable with PHP I’m nowhere near being a dev.

    Actually, something like ‘implementation consultant’ might be closer to it (though kind of a meaningless mouthful); so much of what I do for clients falls under consulting, really.

    Anyway, good food for thought!

    • Actually, something like ‘implementation consultant’ might be closer to it (though kind of a meaningless mouthful); so much of what I do for clients falls under consulting, really.

      For sure! There’s such a variety of work that people do within the context of WordPress that I think there’s far more to it than just designers, developers, and implementers. This was just an idea, as you said, as food for thought :).

  8. Nice post Tom. Well, if you ask me, it all starts with implementation.
    Instead of being disrespectful to anyone, I’d like to suggest another perspective here.

    Stage #1 : Implement it and find harmony with your goals and clients in the long run.
    Stage#2 : Program it and Start learning what others are doing. You might be using other’s work to save yourself a chunk of time, but it ain’t doing any good to you. You need to step up and go for the bigger & better cause. Be it reduce your earnings for a while.

  9. Excellent post. These terms are definitely specific to people within our industry, though. I’d say 90% of my clients think of a “web designer” as someone who designs, develops, AND implements. We all know this isn’t true but I’ve found it to be the most effective general term for new client work (even though I’m totally a designer/implementer). My job for the client is to hire a developer when I need help and hit my own limitations. But, when referencing myself to other web geeks, I’ll certainly use the “implementer” term :)

    • I think that’s fair. I mean, it’s not worth getting into semantics with those who just need a problem solved, you know?

      It’s all about the context and the crowd as far as I’m concerned; otherwise, you’re going to have to sit down and have a conversation about the whole thing when it doesn’t even really matter to the person who needs the work done.

  10. I’d like to pose a couple questions to all the WordPress implementors out there: How do you go about finding gigs appropriate to your skill set? And when you find a project you think may be a good fit, what kind of questions do you ask to be sure the client’s expectations are within the range of what’s achievable with prefab themes and plugins? I mean, there’s a lot of great stuff out there, but it can only take you so far. Don’t most clients want a website unique to them?

    I ask because I have a friend who’s trying to get into doing WordPress implementations, and I’m trying to help, but I work primarily on the development side of things. Since most of my experience is with clients looking for custom solutions, I’d love to be able to pass on some knowledge that would help my friend get into implementation work.

  11. “And when you find a project you think may be a good fit, what kind of questions do you ask to be sure the client’s expectations are within the range of what’s achievable with prefab themes and plugins? I mean, there’s a lot of great stuff out there, but it can only take you so far. Don’t most clients want a website unique to them?”

    In my experience, clients ALWAYS want something extra done to their site. They want various tweaks that plugins or themes don’t quite delivery. Sure, you can get 99% of the way with off the shelf components but at some point the client will ask about something that the component can’t do.

    It’s just occurred to me that many implementers might be getting away with simply saying, “it can’t be done”, relying upon the trust that most clients place in them as “experts”.

    If I was posed such a question, I’d either modify the plugin or write my own code. I assume we’re talking about people who can’t do that. These are the people who are shown a code snippet on a support forum and immediately come back with, “where do I put this?”

    Frankly, I think there’s very little purely implementation work. Most sites need something tweaked outside of what the plugins or theme offers. These tweaks are usually solved on the support forum for the plugin or theme. That’s why it probably appears that off the shelf components can do 100% of the job.

    Maybe I’m wrong.

  12. Interesting post and comments. I call myself a WordPress wrangler. Somewhere midway across that fuzzy line.

  13. I discovered this post early, as a result of a reference to it from Mario Peshev’s post on 16th Feb 2015. I would add a link, but I’m not sure if that is allowed.

    I said ‘early’, because I’m reading every single post on this blog, as far back as it goes, and enjoying it.

    In any case, Mario took the time to discuss WordPress job titles and skills, in his post entitled: “WordPress Job Titles and Skills – Where Do We Stand?”, and eventually made a reference to this post. Mario’s post is a highly recommended, thought provoking read.

    I like the approach that you’ve taken in this particular post, and I appreciate the way you’ve handled the distinction between skill sets.

    A few things that I got from your post is that:

    It’s more about roles rather than about the people involved. So, a developer might play the role of an implementer.

    It’s more about skill-sets than about roles, specifically. This is why an implementer can never take on the role of a developer or engineer.

    Personality and interests play a part in which skill-sets we choose to nurture, and therefore, in which roles we are then able to execute to perfection.

    So rather than see the roles as a differentiators, we can begin to see them as unique identifiers, which helps to define the part that we individually play within the WordPress ecosystem and in the community at large.

    I get it, and I agree.

    The other point I wanted to mention is that sometimes, people may arrive at WordPress from other backgrounds, e.g. Joomla, or C#. They may be developers in those other communities, but that does not make them “WordPress developers”.

    Eventually, such new entrants might choose to apply themselves as WordPress implementers. This does not make them any less skilled, or less qualified than their higher brow WordPress developer peers.

    I mention this because it is easy for some to think that implementers are somehow lower down the rung of the ladder, have less value, or are less intelligent. Not necessarily.

    I know that was never the tone of this post, but I thought to mention it for any visiting readers who work with or hire WordPress professionals.

    Out of interest, “practitioner” is a good alternative moniker for “implementer”, and it has a nicer ring with clients.

  14. I originally thought I would come away from this post as feeling like an Implementer, but when I read your criteria, I actually fit the Programmer almost perfectly. This surprised me because I would never call myself a Programmer. Developer, sure. Programmer, though, is a whole other skill set that I do not have yet. I don’t have any background in formal programming concepts and I’m only familiar with PHP and JS to write remedial functions and tasks that I’ve had to learn out of necessity to complete a job. I’m learning over time and I am planning on doing some formal training, but have a long way to go before I could refer to myself as a Programmer. I do, however, have a deep desire to want to do things custom. Use a pre-made solution when it makes sense (Gravity Forms, for example) but I try and use native functionality as much as possible to ensure extensibility, increase security and reduce overhead (for both code bloat and maintenance).

    I think the take away, as other posters mentioned, is that labels can be tricky and troublesome, since there are many gradients. But if I would absolutely be held to apply a term to myself, it would be Developer Becoming Programmer. :)

    • I originally thought I would come away from this post as feeling like an Implementer, but when I read your criteria, I actually fit the Programmer almost perfectly

      That’s awesome! Of course, I’m not the gate keeper to these terms, but these are just the criteria that I’ve personally used in the past.

      That isn’t meant to take the wind out of your sails – I’m just saying I wouldn’t parade around saying that because some random dude’s blog post said something that it’s representative of an entire industry ;).

      This surprised me because I would never call myself a Programmer. Developer, sure. Programmer, though, is a whole other skill set that I do not have yet.

      Keyword yet. You keep doing what you’re doing and you will.

      It’s a journey. I’m further than I was 10 years ago, but I don’t even feel “there” yet. You can to be comfortable with that and it can be really hard.

      I’m learning over time and I am planning on doing some formal training, but have a long way to go before I could refer to myself as a Programmer. I do, however, have a deep desire to want to do things custom.

      Props to you for that.

      But if I would absolutely be held to apply a term to myself, it would be Developer Becoming Programmer. :)

      I like that.

      • Thanks for the reply and words of encouragement, Tom! I definitely wouldn’t flaunt myself with a certain label just due to a blog post I resonated with! :) I don’t really care for labels overall, but they are necessary and I see why.

        Also, since this posting, I’ve started Javascript for Beginners and I’ve already made some headway in my understanding of programming concepts. Long way to go, but just like you said, 10 years ago I said the same thing. In fact, 10 years ago, I was doing junior network administration for a wireless ISP in San Diego with no plans to get into web development.

        Can’t wait to see what the next 10 have in store!

        Thanks again for the great blog, keep it up and I’ll keep reading.

  15. I find myself reading the article and always gave myself the official title of Designer. The way I see it is it’s like building a house. The Developer/Programmer gets the blueprints and approval from the client then builds the house to code with tweaks and feedback loops. After the house is built that the Designer/Implementer is the one that comes into the house to make it livable, adding “Plugins” and “core functions” to improve the overall experience. in a way its like the designer adding the sinks, beds, furniture (Plugins,pictures,and content) in order to make the website personalized to the clients.

    I do fit into the implementers skill set perfectly, and not so much into the programmers skill sets.

    At lest thats my take on it.

    • I like your take on it – and that’s the thing: I can’t necessarily (nor can many) tell you what you are. But based on your level of skills, what you love doing, and all that jazz, you’re able to identify what you are and then market yourself as such, you know?

      Good stuff, William.

  16. I love this article and it´s replies !

    I work as a graphic designer and most of my work this year is websites.

    I´m fairly new to wordpress still, but have been writing pure css and html based websites from 2005 and up till now (obviously that´s too much work now a days). So, I do know my css and html, and have used loads of costume css etc in my wp based sites – however, I built it from very basic themes and plugins. It is as mentioned both time saving and freeing for me to not have to hard code everything anymore. Does that make me an implementer/designer, or a developer? Even tho, as you say, the clients does´t really care most of the time, I would really like you guys opinion on it so that I can be honest when asked by someone who knows their stuff.

    Again, thanks a lot !

    • Does that make me an implementer/designer, or a developer?

      Personally, I’d tend to classify this as a hybrid of an implementer and a front-end developer since you’re writing your own front-end code but you’re also using a foundation off of which to start rather than an empty project :).

      There’s nothing wrong with that at all, either.

  17. Thank you so much for your fast reply! This was very helpful, and I will definitely continue reading your articles.

  18. Tom

    Great post!

    I’ve had this discussion with colleagues many times and there are many varying opinions.

    One of the things I’ve pointed out to my friends that use the term developer is that it truley is a symbiotic relationship between implementors and developers.

    The example I give, as an implementor, is that there are developers that rearn their living creating and selling plugins that need implementors to purchase them and use them on projects.

    I don’t believe it’s a “without us developers wouldn’t exist” situation. I’ve simply used that example when a few of my developer friends have said some negative things about those of us that have a strong implementation skill set.

    There is plenty of room for us all to do what we are good at. I bring developers in on my projects when I know that a specific feature requires that treatment. It’s all about the context.

    I’d like to further add that I don’t personally believe that the difference between developer and implementor has to be a difference in pay either. I have friends that are full-stack developers that didn’t start using WordPress until recently and they happily hired me to provide my expertise about the WordPress platform, the architecture and best practices – without devaluing what I brought to the table.

    I was conflicted for many years and admittedly used the term developer not to confuse clients. I finally decided to be proud of my WordPress knowledge and be confident in my abilities as a WordPress implementor which plays to my strengths and reduced quite a bit of my job related stress.

    And regardless of the titles I think it’s all about using the right tool and not reinventing the wheel. There are some amazing plugins that I’ve introduced to my developer friends that where impressed that they didn’t have to write their own plugin each and every time.

    I really enjoy that we are having such a thought provoking discussion about this.

    • One of the things I’ve pointed out to my friends that use the term developer is that it truley is a symbiotic relationship between implementors and developers.

      I haven’t really thought about it this way before, but I like this and I agree.

      I don’t believe it’s a “without us developers wouldn’t exist” situation. I’ve simply used that example when a few of my developer friends have said some negative things about those of us that have a strong implementation skill set.

      Definitely. I don’t think it’s fair to treat developers like the centers of the technological universe (as much as some would love to believe that) because every developer is an implementor to someone else.

      For example, those of us who work with PHP may not be C programmers, either. Thus, we’re not working with a compiled language. On top of that, C programmers are not (or may be they are, but for purposes of this example) Assembly programmers, so they implement solutions that those programmers supply, you know?

      And down and down it goes.

      I have friends that are full-stack developers that didn’t start using WordPress until recently and they happily hired me to provide my expertise about the WordPress platform, the architecture and best practices – without devaluing what I brought to the table.

      Sadly, it’s rare to hear that kind of respect being given in the WordPress economy. There are far more people making a case for or against something with a sense of frustration than they are treating it with respect.

      I finally decided to be proud of my WordPress knowledge and be confident in my abilities as a WordPress implementor which plays to my strengths and reduced quite a bit of my job related stress.

      Love that!

      I really enjoy that we are having such a thought provoking discussion about this.

      Me too! I’m not interested in arguing or getting into some type of disrespectful conversation about it, but having discussions about it like this are far more fun and interesting to me.

      • “Every developer is an implementer to someone else”

        Truer words have never been spoken! Always a bigger fish. Tom, this made my day…perhaps week! We should all value where we are, ESPECIALLY if we are attempting to learn and grow as we garner more skills through experience.

        In fact, the “developer” I thought I was in the past is considered an “implementer” to me now. Funny how that works.

        • In fact, the “developer” I thought I was in the past is considered an “implementer” to me now. Funny how that works.

          Exactly — it’s just the, um, circle of life or something like that ;).

      • “Sadly, it’s rare to hear that kind of respect being given in the WordPress economy. There are far more people making a case for or against something with a sense of frustration than they are treating it with respect.”

        It is sad and rare. I still get flack from my developer and programmer friends that insist that I ditch “the little blogging platform” and get into some “real” programming. Funny though how these same folks are impressed at what I make with “the little blogging platform”

        I just laugh it off and keep going. I’ve learned a long time ago that it’s a waste to try and change someones mind.

        But, it is frustrating that there isn’t more respect for our chosen platforms and methods.

        • I still get flack from my developer and programmer friends that insist that I ditch “the little blogging platform” and get into some “real” programming

          Have them define real programming and then present them with a list of challenges that working with WordPress provides:

          • Various web servers
          • Page page caching
          • Load balancing to multiple databases (and thus replication)
          • Internationalized JavaScript
          • Testable, readable, standardized code
          • Components for templates, models (like CPTs), a categorization system (like taxonomies)
          • …and so on

          It’s not a little blogging platform. That’s misguided. Then again, does it even really matter? :)

          I’m just passionate about it because I feel your pain. I use to hear the same thing. Sometimes I still do. But I don’t sweat it because I know the work I’m doing with this “little blogging platform” is some of the most fun, some of the best work that I’ve done in my career.

          And it’s only getting better. Especially with the advent of new technologies like Calypso, etc.

  19. Designer/implementer to my fellow geek heads!

    Branding/Marketing/Graphic/Web Designer or Solutions Provider to my clients!

    I run my design studio as an offsite creative department to business’s that don’t need a full time team. This includes web design/implementation (WP sites) as one of the business’s marketing touch points to their core demographic!

    I am by far an implementer, and at one point early on called myself a WP tuner!

    I tell my clients this specifically about what I do for them when it comes to Websites- “there are amazing developers and programmers in the WordPress landscape that have already created amazing premium themes and plugins that I can customize to fulfill your goals/objectives and synergize all your other marketing efforts (that i’m a part of too) to leverage the site to deliver what ever your specific needs are.”

    Every single time I run into any type of problem I outsource a programmer to help me customize a solution (very rare) I’m charging $5k-$8k for E-commerce WP sites and $1.5k-$5k for non-ecommerce sites that I tune/customize/implement! If I never have to look at code it would be amazing but of course that’s not possible, so I do exactly what a previous commenter put, I go to the forums and find snippets, YouTube tutorials, phone a friend, whatever it takes to get it done! The client doesn’t care if I developed it or not they care it does what we discussed for the price paid by the date established. I don’t know any language or any coding, I know design, layouts, marketing, branding, visual communication and sales! I know hard work, I know I can teach myself exactly what I need to deliver above and beyond, I know what clients need to know and hear and only care to know and hear! I know that everything is possible and that I will get it done on my own or with someone’s help! To the client you can either deliver or you can’t!

    The real question is how badly do you want it? Titles don’t matter, what matters is success, and that comes from all of us being only one title -“Solutions Provider” anybody who wants to succeed on either end of the titles war just needs to provide viable 100% solutions to business’s problems in this case using WP and BoOm the rest don’t matter!

    Love the series by the way…

    Alex M.

    • Designer/implementer to my fellow geek heads!

      Love it!

      Branding/Marketing/Graphic/Web Designer or Solutions Provider to my clients!

      Well branded ;)

      I am by far an implementer, and at one point early on called myself a WP tuner!

      “Tuner.” I kinda dig that (but that’s the musician in me ;).

      I know hard work, I know I can teach myself exactly what I need to deliver above and beyond, I know what clients need to know and hear and only care to know and hear! I know that everything is possible and that I will get it done on my own or with someone’s help! To the client you can either deliver or you can’t!

      Bingo. No your niche, do the best work you can in said niche, work hard, and provide a solution. That’s what you gotta do.

      Love the series by the way…

      Thanks! I appreciate the comment, as well :).

    • “If I never have to look at code it would be amazing but of course that’s not possible, so I do exactly what a previous commenter put, I go to the forums and find snippets, YouTube tutorials, phone a friend, whatever it takes to get it done! The client doesn’t care if I developed it or not they care it does what we discussed for the price paid by the date established.”

      So, tiny soap box here and please know this is just commentary and not in any way directed at your personally!

      To me, this kind of approach is actually what creates the most frustration to developers and perhaps why there is contention in the field. Because when said client decides to go elsewhere and wants someone else to “work on their website”, it ends up being a case of looking under the hood and realizing it was put together by someone with little to no knowledge of the “proper” way to customize WordPress (or any CMS, for that matter). And what that means is they need to start all over again, with a proper configuration. So in the long run, it’s sort of a disservice to the client and they are always upset when I tell them how their current site is simply not easily extensible. So you’re totally right: the client does NOT care whether it’s custom developed or not…YET. But they very well might when they are told later that what they got isn’t really going to be easily customized and would be better to go custom to begin with.

      When we write custom sites for clients, we try to remember that we might not be the only company to work on it, so we ensure we put it together with the highest level of quality and understanding (and comments within the files) to ensure that if the client does go elsewhere, they can with the confidence that they won’t just need to start from scratch due to poor coding standards. And I think this is what creates the divide between “implementer” and “developer.” The implementer is a great place to be, but I think when it comes to the code, the developer needs to be involved if the site is going to stand the test of time. If that means going custom and getting the person with the proper understanding to do it, then so be it.

      As I’ve told prospective clients before who want to use just one-off themes (rather than say a trusted source like StudioPress) or want me to work on their highly “customized” pre-built theme: “There’s no right way to build a WordPress site…but there are plenty of wrong ways.”

      Let me repeat again that this isn’t personal, it just inspired some new thoughts about it all…

Leave a Reply