Project Lessons: WordPress site triage and migration

Project Overview

WordPress website triage and migration. This project was for a non profit I’ve worked with as a volunteer on and off for over 10 years. Having had many volunteers come and go, they’ve been in search of more stability and have now turned to me in a limited consulting role to help with the more significant and technical aspects of maintaining and improving their web presence.

For this first engagement, they wanted me to find and fix broken links and content ahead of a major event. They also wanted me to provide some specific training to the inside staff that are maintaining the website day to day. I requested some additional time in the budget to upgrade WordPress, clean up plugins and migrate to WP Engine.

Budget: 16 hours

Actual: 18.25 hours (14% over)

  1. 5 hours WP upgrade & plugin clean up
  2. 5 hours migration to WP Engine
  3. 3 hours fixing broken links, content and other content requests
  4. 2.25 hours training (one on-site visit and one screencast)
  5. 2 hours review of issues & communicating initial plan to client
  6. 2 hours general project management (updates to client and responses to emails, managing to-dos/priorites on Basecamp)

The upgrade and migration both took longer than I expected (I removed over 20 plugins, upon review; and ran into some database issues with the migration relating to a custom plugin), but everything else went about as expected. Project management tasks accounted for about 22% of the project.

Project Lessons

  1. Expect migrations to WP Engine to take a minimum 3 hours for a website that is already running the latest version of WordPress and has no plugins on WP Engine’s disallowed plugins list. Bill straight time otherwise and set comfortable, realistic expectations (better to cause dismay at the start than at the end).
  2. Make sure to include time for initial client meetings in your estimate. This is a critical way that value is provided – by gathering information about the clients needs and accurately prescribing a solution.
  3. When working with a client, I need to be sure I have a single decision maker. In this case, I’m communicating everything to the client’s admin group of 5 people. A single person is my unofficial primary contact, but I’m expected to communicate with the whole group (no problem) and the whole group must vote on any decisions. In this case, it actually is working OK, but whenever practical I need to push back and require a single decision maker. With this client, I could have asked the group to give the point person authorization to make budget and scope decisions within a certain range without consulting the group, beyond the original budget and scope.
  4. In terms of estimated time vs. actual time, I think considering my inexperience with WordPress, this turned out remarkably well. Had I not been sick / been thinking more clearly, I think I would have hit this right about on the head.

Closing thoughts

This was my first migration to WP Engine and overall I was very impressed by their helpful support and simple “just works” system with lots of powerful features under-the-hood. I’m running and on WP Engine and I plan to default to WP Engine going forward for any relevant sites. I’ve signed up as an affiliate and I appreciate their $150+ commissions for any referral that follows through with at least 2 months of hosting.

It’s a real pleasure working with clients that trust me and let me serve as a professional entrusted to prescribe an appropriate solution to their needs and to manage the implementation of that solution. I’m at the point in my life where I’m not excited about taking orders only, although it’s not beneath me in the right situations.

So … was this project review helpful to you? Or do you have questions? Either way, drop me a line or leave a comment here.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: