A couple weeks a go I put built a customer success job board for Trustfuel.

Our priority was to create the a place to find and post support, account and customer success jobs. Because I still needed to iron out a few features with the CRM application, my main constraint was time. I had to concept and build this thing in about three days.

For companies, job postings would be free. It would allow us to get warm leads on companies looking to expand their customer success team. If the company were already a prospect or customer, we could steer them to the board as a gesture of good will. For job searchers, we’d be introducing our brand to new CSMs and people in the field.

Choosing a Technology

One of the most difficult things to do was figure out what technology to build the job board with. Meteor, Rails, WordPress, a static site generator?

My initial thought was to build the application using Meteor. I mentioned trying to become a better JavaScript engineer in my yearly review. Plus, I had some experience working with Meteor from building Fantasy News.

Unfortunately, Meteor has a fatal drawback that makes it unsuitable for a job board—it’s nearly invisible to search engines. My primary way to build traffic for this job board was by targeting customer success jobs. The landscape for job keywords is competitive. Indeed, Monster and LinkedIn rank for almost every job type. Trying to rank with a JavaScript-based front-end is trying to do so with one hand tied behind your back.

How about building the job board with Rails? If you’re building lists, it’s hard to go wrong with Rails. Plus, I had some experience. I started building a rails-based job board during a cold weekend this winter.

Rails wasn’t going to work either, I only had a couple of days to put this thing together. Even with the progress I had made on my rails-based job board, I wasn’t comfortable enough committing with a short timeline.

The same was true for using a static site generator like Craft. I’ve been dying to work on a project with one, but had no idea how long it would take to get working.

Putting the Job board together

I wanted to learn something new, but I was less confident that I could build something functional with Rails or Meteor on a short timeline. A WordPress job board it was!

WordPress is something I know well, plus there are some strong benefits to using it. It’s excellent for SEO out of the box (which any job site needs). There is an excellent plugin ecosystem. Yoast adds finer control over post titles and meta information. Advanced Custom Fields (ACF) allows me to add extra fields into the CMS.

We collect job postings through Pardot, which is a marketing automation tool. We ask users for the Job Title, Company, City/State, Description, How to Apply and the poster’s work email.

This form sends me an email and adds the user’s information to our qualified leads list. Anyone posting a customer success job is part of growing company, right?

I was skeptical of Pardot initially. Like Salesforce (now, its parent company), Pardot is powerful, but difficult to use. One of it’s powers is being able to track customers across several web properties. This means if someone posts a job and then comes to trustfuel.com or downloads our guide to NPS, we know it’s the same person.

The CMS side is simple thanks to Advanced Custom Fields. Job posts are just WordPress posts. The post title is the keyword-dense job title and location. “Customer Success Manager in San Francisco, CA” for example. The post index is the homepage and contains the post title and the date of publication.

There’s an ACF field for the company name. The post content is the job description. There’s an additional ACF text area field for How to Apply. I belive most people will have links, but decided to go with the text area field incase someone had specific instructions. “Mail your resume to careers@initech.com” or something of the sort.

What else?

I found a WordPress plugin called Auto Prune Posts, which removes posts after a specific period of time. I didn’t want to manually check every single job posting to see if it is available. The plugin automatically removes posts after 30 days. It has some poor reviews, but I’ve had no issues with it so far.

Because of job listings always going up and coming down, I had to alter the 404 page. The key for a 404 page is to try and make it as useful as possible. I added the index to the 404 page and added, “Whoops! We cant find that page. That job has likely been filled. Here are the latest openings:”

Areas for improvement

If this job board works, there will be things I’ll need to add.

The primary one is filtering by location. I chose to leave this out, because I have no idea how many people will be posting their jobs. If we have a handful a week, it’s not worth it.

Another thing I should do is add an ACF checkbox for jobs that are remote. Maybe it adds some sort of label to the job post and index.

For a first pass, I’m quite happy with how this WordPress job board turned out. The design is a bit rough and it’s still a manual process, but I can’t think of a way to make it simpler.

6 thoughts on “ Building a WordPress Job Board ”

  1. Hey Sam,

    Thanks for the interesting post. If I understand correctly, at the moment if someone wants to post a job they fill out a form and this is emailed to the webmaster who then manually adds the job to WordPress?

    Do you have any plans to automate this in the future if the site becomes popular? For instance perhaps a login system with a front end job submission form?

    Thanks again for the insights.

    1. You’re correct. It’s a Pardot form. One of the completion actions sends me an email when someone posts a new job.

      I don’t have any plans for a different submission method right now. I think that would require a lot more development work and would complicate our lead capture process.

      If building a login/submission system were part of my requirements, I probably would have stuck with Rails. Then again, I bet there are probably a few paid WordPress themes that have all of those included—building a child theme from one of those might work.

      One of the main reasons for building the Trustfuel board was to capture leads for companies with growing customer success teams. When someone fills out that form, it gets added to our qualified leads list in Pardot. It then enters the sales workflow. I think that would be more difficult if sales had to login to the CMS to retrieve all that data.

      Plus, we been getting a few submissions each week. It’s an easy number to handle.

  2. Hello Sam, thanks for writing this, I’ve only just come across it, and have a similar goal in mind. My question is primarily…do these companies pay to post a job to this job board? I have a similar idea for my local area, but am struggling with how to make it profitable. I don’t want to do a bunch of advertising (I love how clean and quick this job board is), but I do want to actually make money off of it. Curious how you tackled this.

    1. We do not charge for job postings—it’s completely free as long as the position is related to customer success, support, account management or anything post-sales.

      I’m not sure I have good advice for making a profitable job board. You end up with a marketplace problem—you need both employers and people seeking employment for it to work.

      One thing you may want to try is having a posting be free and charge something like $10 for a featured or highlighted posting. Early on that’s what Basecamp did with https://weworkremotely.com/.

  3. Really interesting solution, thanks for sharing! Advanced Custom Fields is amazing as you can use it for so many different things.

    If anyone’s looking for a slightly different solution, I’ve just published a detailed tutorial with video about how to create a WordPress job board using the Posts Table Pro plugin with Pods (which is similar to Advanced Custom Fields, but can be used to create custom post types and taxonomies too). You can check it out at: barn2.co.uk/wordpress-job-board-plugin. Hopefully this will be of interest to some of your readers.

Leave a Reply

Your email address will not be published. Required fields are marked *