Skip to content

Instantly share code, notes, and snippets.

@craychee
Last active May 17, 2018 13:53
Show Gist options
  • Star 6 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
  • Save craychee/543389d35c4b766239e7 to your computer and use it in GitHub Desktop.
Save craychee/543389d35c4b766239e7 to your computer and use it in GitHub Desktop.
A plain English checklist to help non-technical people decide if the business is ready to engage the services of an engineer or a consulting firm. This checklist was made to accompany the following blog post: http://craychee.io/blog/2015/09/17/are-you-ready-to-hire-an-engineer/

Are you Ready to Hire an Engineer?

A plain English checklist


This checklist is intended to help non-technical people decide if the business is ready to engage the services of an engineer or a consulting firm. It is the goal of this checklist to give non-technical folks a leg up in these conversations so that they are less likely to get into lengthy (and very expensive) engagements.


###Content Content pertains to information that you already provide customers or plan to make available to anyone who comes to your site.

  • I have ___[number] types of content.
    Some common examples of content types include: news item, staff profile, event, and services. A good way to start to figure out what this number might be is to get a good sample of the content you provide (don't forget PDFs) and sort them into piles not of similar content but of similar components.

  • I have 5-10 examples of each of these types of content that I can hand over to an engineer right now.

  • The content currently lives inside (Circle all that apply. ):

    A. a database that I have access to
    B. a database that I do not have access to
    C. Static HTML
    D. Word documents
    E. The mind of a person on my staff whom you can talk to.
    F. The mind of an imaginary person.
    (If you circled F, go find that person and make them real before you start this project.)

  • I plan to get this content onto the site that you are building for me by (Circle only one.):

    A. Hiring you to write a migration the content from its current location
    B. Using my staff or someone I have already identified to manually add the content to the site as soon as possible

  • I have reviewed all of the content currently available to my customers and can say with a degree of certainty:

    • what content will be part of the new project
    • what content is no longer relevant to my business
  • I have talked with my current customers and I have done some testing of potential customers to determine what content they find valuable now and would find valuable in the future.

  • I have identified gaps in the content that I am expecting and I have assigned the task of writing the new content that I am anticipating to a member of my staff.

  • I understand that getting content onto the site must be part of the timeline to launch the project.

#####If you found this section difficult to answer: I suggest that you consider hiring a content strategist first. I highly recommend and have worked with Three Furies.


###Media Media is usually exciting visual and/auditory enrichment of content on your site. Communicating with your customers in a number of different ways is important but must be implemented strategically.

  • Please check all of the following types of media currently exist that you intend to put on the site:

    • video
    • slideshows
    • annotated slideshows
    • images
    • maps
  • I have access to all of the media checked above and can share them with you.

  • Please check all of the following types of media do not yet exist that you intend to put on the site:

    • video
    • slideshows
    • annotated slideshows
    • images
    • maps
  • I have assigned the task of creating this content to someone whose timeline is consistent with the launch of the site.

#####If you found this section difficult to answer: Do some user experience testing with designs with and without this enriched media and see if your customers actually want it. You may be surprised at how easy this sort of testing is. If you plan on hiring a consultancy agency, they can probably help. Let them know that this is information that you do not yet have.


###Users Here "visitors" pertains to your customers (the end user), whether you know who they are (they have logged in with their email, for example) or not (a google search led them to you). "Users" pertains to anyone, including you and your staff, who require access to the site to create and manage content.

The majority of visitors to my site will be:

  • anonymous users
  • authenticated users (users who log in with identifying information, such as a username)
  • 50/50

If you aren't sure, keep in mind that it is very difficult to get users to login to a site. Your business will generate more traffic if you ask very little of visitors to your site. If you need detailed information about your users in order to execute a transaction (for example, registering for an event), it is better to only ask that the users authenticate at the time of the transaction.

Check all that apply to you:

  • I do not want the people who create content on my site to have permission publish that content to visitors.
  • I want to allow people to be able to create some kinds of content but not others. For example, the people who can create news and events cannot create articles and services.
  • I have a workflow for getting content created and then published to my customers and I can share that with you.
  • My business requires that my customers be allowed to create content.

#####If you found this section difficult to answer: See if you can draw how much work you want/need each of your users to put into their visit to your site. If you find this task difficult, let your engineer know that you are struggling to describe this portion of your business right away.


###Using other services It is likely that your business does things that many other businesses do as well, such as asking users to sign up for a newsletter or an event. Where possible, your engineer will likely recommend that you utilize the specialized functionality provided by a third party.

Some common services provided by a third party include:

Mailchimp for creating email groups (such as event registration or newsletter signup), sending emails with your brand identity, creating newsletters, and other email needs.
Eventbrite for creating events and allowing customers to register for those events (including collecting payments)
Stripe for selling products and collecting payments
recurly for reoccuring subscription and billing

  • Provided that the customer does not need to leave my site and provided that the experience of visiting our site remains seamless, I would like to use specialized services where possible.

I have a compelling reason for opting out of using any of these services and those reasons are as follows:





###Best practice It is the engineer's responsibility to be up-to-date with best web development practices. You can and should expect that your engineer will implement these best practices and that your timeline will need to account for them.

  • I understand that the following are best practices and that time will be alloted in the execution of my project to ensure that best practices are met:
  • Web accessibility WCAG2.0 standards (These guidelines will make your content more usable to users in general.)
  • Responsive design (These guidelines ensure that your web page looks good and is easy to use regardless of the device.)
  • Google Analytics (You should at least track visitors to your site.)
  • Automated testing: your site will be tested for its ability to deploy and meet the requirements of your project.

I have a compelling reason for opting out of these best practices and those reasons are as follows:




###Getting Started

  • I can give you access to the codebase and database of our current site. (If applicable.)
  • I know where I plan to host the final project OR I understand that this is a decision that we should make together as soon as possible.
  • I am prepared to empower someone on my staff to make decisions about the project and to dedicate themselves at least 20 hours a week to work with an engineer on those decisions.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment