Accelerate reliable, repeatable, traceable deployments across clouds and on-prem.

Recruit Wizard and Octopus Deploy

recruitwizard.com

"I still code 90-95% of the day. When I tried Octopus for the first time, I realized it’s a tool built for the job: we were able to deploy an app within a day of signing up for a trial."

- Ben Macpherson, CTO

Download Octopus Convert to PDF

Their Story

Recruit Wizard specialize in software for recruitment agencies. Their solutions facilitate end-to-end talent sourcing management and several integrations, such as payroll, timesheets, and job sites. Recruit Wizard operates in Australia and New Zealand but has plans to expand internationally in the future.

The team at Recruit Wizard is small and geographically dispersed, with people in Sydney, the Philippines, and Columbia. They use GitHub for source control and GitHub Actions as their build server. Octopus Deploy orchestrates all their deployments, primarily to Kubernetes clusters and some legacy virtual machines.

Challenge

Recruit Wizard was growing, and the team found themselves writing more code, but they couldn’t ship their software reliably. They started with manual deployments with stepby-step guides and then improved by automating some processes with customs scripts. Unfortunately, they had frequent problems deploying to production and deployed on Saturdays to reduce risk.

Recruit Wizard started its automation journey by using Jenkins to execute automated deployment scripts. The aim was to reduce human error, but it wasn’t successful enough. In their view, “that’s not what Jenkins was designed for.” The team still performed some processes manually, including editing config files, which introduced errors.

In 2017, Recruit Wizard started searching for a better solution to automate their .NET deployments. They researched several options, including Azure DevOps and Octopus Deploy.

Solution

When Recruit Wizard came across Octopus, they found it easy to start a trial. They deployed an app in one day, making their decision to proceed straightforward.

With Octopus designed specifically to deploy software, Recruit Wizard had the confidence to ship small changes often. And they didn’t have to worry about the deployment process breaking.

Recruit Wizard now uses Octopus to orchestrate all of its deployments. Their recruitment software integrates with many third-party services, and Octopus has supported them as they scale their product.

Recruit Wizard also uses built-in steps, like the ‘Deploy to Kubernetes’ step, to reduce the need for custom scripts and to work seamlessly with their containerized applications (built using Microsoft .NET 6 and React).

Since adopting Octopus, the feature Recruit Wizard uses the most is Runbooks. They use runbooks extensively for maintenance and emergency tasks.

They now have repeatability for every scheduled task, running scripts directly against infrastructure like SQL Server and other Azure resources. Runbook automation has enabled their support staff to self-service tasks without help from engineers, saving time and effort.

Config as Code

Recruit Wizard is an early adopter of Configuration as Code in Octopus. They were eager to branch their deployment processes alongside their software changes.

The biggest benefits to their development workflow are the ability to branch their deployment process alongside their application code, and to see changes side-by-side. It’s also improved the team’s code review process for deployment changes. Reviewing and approving GitHub pull requests allows them to find and fix typos or accidental changes that could affect customer data.

Config as Code is helping Recruit Wizard modernize and containerize older projects. Previously, the team cloned projects and made changes, but now they can branch a deployment process and use a template to bootstrap the process. With Config as Code, they have multiple versions of their deployment process. Recruit Wizard can keep their older process for hot fixing while building out the new process.

Ben from Recruit Wizard shared that he uses the Octopus UI 99% of the time to make changes to his deployment process but finds it helpful to make small changes in Visual Studio Code or GitHub CodeSpaces.

Results

Octopus solved many issues for Recruit Wizard:

  • Deployment frequency: They moved from deploying quarterly to multiple times per day.
  • Delivering more features to their customers: Recruit Wizard ship code to production faster, without spending a lot of time in QA.
  • Deployment repeatability: They saw a considerable reduction in errors when deploying to production.
  • Automation of maintenance and emergency tasks: Recruit Wizard use runbook automation for all operations processes. This is self-service and saves their engineering team time and effort.
  • Scalability: They’ve scaled their deployments as the company grows and their recruitment software becomes more complex. Octopus has helped them evolve their deployments to handle new integrations and services.
  • Security: Using Octopus Cloud, Recruit Wizard reported the satisfaction of not worrying about upgrading and maintaining Octopus. All updates are rolled out to their instance automatically, allowing them to focus on their expertise, recruitment software.

Looking to the future, Recruit Wizard plans to centralize templates for different project types to streamline their CI/CD pipelines further.

Shout out to @OctopusDeploy for making their software so easy to work with. Just upgraded a 2 year out of date instance and migrated it to a new server and it worked with no effort beyond what their documentation said to do.

Twitter user Alex Dent Alex Dent
@DevOpsDent

We've been overhauling our internal infrastructure and back-end systems over the past month, including a move back to full @OctopusDeploy deployments; rediscovering how nice it is to have a platform-agnostic orchestrator that can deploy practically anything, anywhere ❤

Twitter user Nicholas Blumhardt Nicholas Blumhardt
@nblumhardt

Tools like @OctopusDeploy can be great in enabling culture change, we've been able to scale and improve our configuration story since we started using it.

Twitter user Niel Chalk Niel Chalk
@_neilch