Helpful hints for selecting a Concrete CMS developer

This is a community-contributed tutorial. This tutorial is over a year old and may not apply to your version of Concrete CMS.
Dec 30, 2016

1. Review the developer's portfolio and projects

  • When reviewing a portfolio, check specifically for projects created with Concrete CMS.
  • Do the projects demonstrate the skills you require for your project, such as:
    • experience with a specific technology
    • knowledge of a particular industry and standards
    • ecommerce
    • responsive design
    • designing for performance and with performance budgets in mind
    • security best practices
    • theme development
    • custom blocks
    • custom add-ons
    • integration of a third party library or service
    • experience with a specific version of concrete (5.6, 5.7, 8)
  • Look for:
    • live projects, avoid portfolios that consist of screenshots only
    • real projects done for real businesses
    • project case studies that explain how a project was planned, what it needed to accomplish, and how it was executed.

2. Avoid copy and paste job post replies

  • Be cautious of replies that are generic, repetitive, and ignore the requirements posted in the job description.
  • Does the developer post the same response to each job post?

3. Check the developer's profile for community involvement

  • Reviewing community involvement can be an effective way to gauge a developer's knowledge and skill with concrete.
  • Check how long the developer has been registered on concretecms.org.
  • Is the developer active in the concrete Slack team channels or IRC channel?
  • Is the developer active in the forums?
    • Does the developer demonstrate their knowledge by assisting others and answering questions?
    • Sample messages that the developer has posted:
      • Does the developer conduct themselves in a professional manner?
      • Does the developer only post to the forums to reply to job listings?
  • Look for concrete certifications:
    • They help to establish that the developer has knowledge in a particular area.
    • Check for certifications that cover topics that will be required in your project.
  • Is the developer a concrete certified agency partner?
  • Does the developer have add-ons or themes in the concrete marketplace?
    • Check if the add-on or theme is PRB (Peer Review Board) approved.
      • PRB approval requirements of an add-on/theme:
        • passes automated and PRB member testing
        • has basic documentation
        • installs/uninstalls correctly
        • does not interfere with other marketplace items or the dashboard
        • does not cause errors or breaks a site if mistakes are made in its use
        • has a minimum of usability
    • Review the support page for the add-on or theme:
      • Does the developer respond quickly to support tickets?
      • Are support tickets resolved in a timely manner?
  • Does the developer have a GitHub (github.com) account showing code contribution to concrete?
  • Has the developer written tutorials or documentation on documentation.concretecms.org?

4. Request customer testimonials

  • Ask for contact information of satisfied clients.
  • Make sure to follow up with these clients to discuss their experiences working with the developer.

5. Language proficiency

  • Consider language proficiency when a developer does not speak the same native language.
  • Look for limited working proficiency and full professional proficiency.

6. Long term projects

  • If you are hiring for a long term project, arrange an in person meeting or video interview to determine if this is someone you can see yourself working with.
  • You can get a much better idea of personality, temperment, and attitude through voice and video than email exchanges.

7. Project scope

  • A successful project will have clear requirements and goals that you and the developer can agree on.
  • Projects with changing goals and requirements will be hard to price, schedule, and execute.
  • Will the project require ongoing support and maintenance?
    • If so, how long will ongoing services be required?

8. Project budget and developer rates

  • Be cautious of developers working for far less than the market rate for their region of the world.
  • Consider the phrase "you get what you pay for" when setting your budget and evaluating developer rates.
  • Avoid the temptation to hire a developer based soley on them being the cheapest.

9. Project timeline

  • Communicate the desired start date and when you need the project finished.
  • Once a budget and scope have been determined, it can be helpful to set development milestones for when certain project tasks should be done.

10. Project communication

  • There should be regular updates with the developer.
    • Agree on the update frequency (daily, bi-weekly, weekly, etc.).
    • Agree on the method of update (Skype, Google Hangouts, telephone, e-mail, etc.).

11. Payment terms

  • Will the payment be based on an hourly rate or a fixed price?
  • What will the payment schedule be?
  • How will payment be made (PayPal, check, wire transfer, etc.)

12. Work that requires a design

  • Who is responsible for the design?
    • Will you provide a design for the developer?
    • Will the developer do the design work?
    • Will a third party create a design?

This guide does not cover contracts or dealing with offshore development agencies. Both are important topics and require specific legal advice from a lawyer. Consulting a lawyer adds to the cost of a project, but should be considered a required part of doing business, especially when dealing with medium to large projects.

Recent Tutorials
Using the Concrete Migration Tool Addon
Apr 27, 2023

How to use the Concrete CMS Migration Tool

How To Add Page Last Updated To Your Concrete CMS Pages
Mar 7, 2023

Concrete CMS has a page attribute you can add to a global area called "Page Date Modified." Here's how to add it

How To Exclude Subpages from Navigation
Dec 24, 2022

How to exclude subpages from navigation - useful for a news or blog link in your main navigation where you don't want all the subpages to appear in a drop down menu.

How Can I Change The Maximum Size Of Uploaded files
Dec 13, 2022

This tutorial explains how to update your php settings.

Updating Concrete Themes from Version 8 to Version 9
Nov 24, 2022

This tutorial covers commonly encountered issues when upgrading a Concrete CMS theme from version 8 to version 9

Transferring ownership of an add-on and a theme
Nov 15, 2022
By katzueno.

If you encounter a Concrete CMS add-on or theme that you love but not being maintained, you may want to ask the author to help or take over the add-on or theme. Here is the quick step-by-step guide of how to transfer the ownership.

Was this information useful?
Thank you for your feedback.