Chris Haas is the Director of Development at Vendi Advertising. Vendi is the largest ad agency in western Wisconsin. They’ve built a reputation for great work, measurable results and a culture of kindness and creativity. Part of having a great reputation involves providing a reliable service for their clients. Find out how SpinupWP was able to help Vendi overcome some of its operational challenges.
Chris, who has been building websites for 20+ years, oversees technology at Vendi. He manages hosting infrastructure, security and other technology requirements. He works with PHP, Nginx, MySQL among many other technologies.
Vendi switched to managing their servers themselves with DigitalOcean back in 2015. While the setup was customizable to their liking, they found it difficult for new employees to manage the infrastructure and set up servers. Although they did have internal documentation, processes and workflows in place, when a newer version PHP, Ubuntu etc. would come out they would need to redo all their documentation.
Given Chris’ pivotal role in the company, the necessity for all tasks to pass through him occasionally impeded workflow. When a server needed an update or reconfiguration, he had to log in to DigitalOcean himself and get everything set up, which often delayed the team on projects by several days.
Vendi needed another solution.
- A solution that offered enough control for their needs.
- A solution that was easy enough to use so that all the server-related tasks did not fall onto the shoulders of one person.
- A secure solution. Being an advertising agency working with client sites, security is top of mind.
These crucial needs had to be met.
After trying a few other
solutions options, they landed on SpinupWP. Using SpinupWP allowed the Vendi team to help with server management and freed up Chris to focus on other areas of the business besides just setting up and managing servers.
Here’s what else Chris appreciates in SpinupWP:
- Straightforward management.
- Aligns with our server setup ideology.
- Transparent about pricing and changes.
- Follows best practices without being overly complex.
- The interface is easy to use.
- Lots of options but not too many to be overwhelming.
- There’s a good balance of options and a strongly recommended path. SpinupWP’s recommendations save us the time and mental energy they might have otherwise expended researching the best way forward.
- Backups and restoring backups have been an important feature for us.
- Managing server issues – there aren’t many. The stack SpinupWP supports works well.
Read on for the challenges they were looking to solve, what they were looking for in a solution and why they chose SpinupWP.
With Chris overseeing technology at Vendi, it’s important that he knows what’s going on in areas like their client’s website hosting. To achieve this, he either had to manage the hosting of the websites himself or find a solution he could trust and was easy to manage. As a self-managed process was the only one they could trust at the time, Chris had to do the technical work himself – a position so many other managers and tech leads find themselves in.
“Me being a bottleneck became an issue operationally. With new team members being added, I was becoming more and more of a blocker. We needed to figure out a way to remove myself, the tech lead, as the blocker so we could move projects forward faster and keep clients happy.”
Not only was he a blocker for getting these server-related tasks done, he couldn’t complete them for a few days because of the other tasks he had to complete first.
What to Look For in a Solution
Of course, needs may vary for different companies but some things are crucial for a hosting DevOps solution:
You can easily waste time if you’re confused about the layout of a product. The interface needs to be easy to navigate and set clear expectations on what’s happening.
For Chris, it was important that the interface was straightforward and didn’t lead to a time sink. He said, “Our team needs to be able to get in and out as fast as possible with as few questions as possible.”
Transparent Changes, Pricing and Operations
When you’re performing such technical tasks on client infrastructure, you need to be able to do so confidently. You need to fully understand and trust what a product or service is doing for you. SpinupWP is clear on what’s installed on your server and any changes it makes to your server. This resonated with Chris, “We needed to understand all changes being made to the server.”
Regardless of whether you’re offering hosting as an add-on like they are at Vendi, or if that’s your main business focus, you need to have predictable pricing. Clients need consistency to be able to budget. This means you need to offer your clients an accurate estimate of their monthly fees.
Exploring WordPress Hosting Solutions With Vendi
When looking for a hosting solution, Vendi tried each of the three main options:
Vendi found that building their own server management tools was great for control but introduced nuisances like being responsible for security, backups, and other simple tasks that are often taken for granted. They later found that while managed WordPress hosting solved these problems, it also introduced more hurdles like vendor lock-in, inconsistent cost and poor optimization. They knew that a server control panel tends to be the best of both worlds but had to try another option (GridPane) before finding the right fit with SpinupWP.
Find out what they liked and disliked about each option and what made them choose SpinupWP…
Building Their Own Server Management Tools
Building your own server management tools is a fantastic option as far as cost, control, performance optimization and transparency go. But it comes at the cost of being more time-consuming and you need to have the know-how on how to manage a server.
Before switching to SpinupWP, Chris used DigitalOcean. They had a manual installation and built tools to deploy servers. This gave Chris and the team the full control they needed. But any time a new version of Ubuntu, PHP, etc came out, they had to redo everything. They were spending too much time managing their tools and documentation and often did not have an easy-to-follow process for the team.
Chris noted, “It was good in the early days when the team was smaller, it worked really well from a technical standpoint but we still had the issue of it being time-consuming and I was a blocker.”
The Vendi team then gave Roots Bedrock a try. They figured it had the potential to solve the problem of keeping tools and docs up-to-date while allowing them to manage their servers with their own tools – a win-win. But once they dug into it, it felt a bit anti-WordPress. Chris noted “Roots Bedrock is by no means bad, I love composer and I love ‘modern’ PHP development, but WordPress is its own beast, moves by the beat of its own drum, and I just think there’s a ‘WordPress way’ that a lot of these systems fight against, or ‘try to fix’.”.
They found through working on clients’ sites that the abstraction with containers, CI systems and environments were overkill.
Overall, while they felt Bedrock is doing a great job, it just wasn’t the right fit for them.
Vendi is now a team of about thirty. They’ve seen significant growth over the past year, having hired six new people. This made the need to find a workable solution for this DevOps requirement a priority.
If you’re working solo or a part of a small team, you may decide the control is worth the extra time investment. However, when your team grows, you’ll likely find yourself unable to spare that time anymore. Like Chris, you may consider trying a managed hosting provider.
Managed WordPress Hosting
A managed provider can seem like a happy middle ground if you simply don’t have the time to manage a manual solution. Or you don’t feel quite technical enough to manage a server yourself.
WP Engine and Pantheon are examples of managed providers. These are two that Chris and the team at Vendi tried out. They found the cost to be too much and they didn’t get enough value from them. Chris said “they feel and move slower”.
If you’re coming from a self-managed solution, you’re likely to find this too. While your approach would have been much more tedious to set up, chances are it was just to your liking. All the right software, none of the bloat, everything right where you want it.
A managed host configures the server in a way that will work best for them. And they won’t do customizations unless you’re paying them a ton of money each month. This can make things feel slower – both literally in how the site operates and from a process perspective.
It can also be difficult to predict pricing with managed hosting providers. There isn’t consistency across the industry in how to price the service and many of them choose seemingly arbitrary pricing metrics.
“They used pageviews as a pricing metric which we found to be a strange and unhelpful way of billing. At Vendi, we don’t host websites for profit, it’s a service that we offer our clients if needed. We use transparent pricing so we pass along the cost to the client. Using a provider that priced based on pageviews meant we couldn’t give our clients a simple, predictable fee each month.”
Chris also didn’t appreciate that it wasn’t clear what these providers were doing to their servers. “They do ‘magic’ (ie tasks behind the scene that you don’t get to see).” As mentioned earlier, it’s important to understand what’s going on with the servers your clients are trusting you to take care of.
To top it off, you don’t own the servers so if you want to leave, it’s not a simple process.
🤝 Cloud Server Control Panels
A cloud server control panel is the best of both worlds. You get the control of running your own server without the hassle. There are a few options out there. Chris and the Vendi team gave GridPane a try first before coming across SpinupWP.
He got the feeling that they weren’t using the latest software, “I didn’t feel confident that the product was ‘alive’. They were using an older version of Ubuntu. At the time I wasn’t sure if they’d be around long-term.”
Chris found GridPane had too many options eg. versions of MySQL, Linux versions. It’s great to have options but too many can be counter-productive, leading to another time sink as discussions are needed for each option about which to go with.
Chris moved on from GridPane and gave SpinupWP a try and almost immediately knew they could trust what it was doing. It’s essential when choosing a cloud server control panel that you’re maintaining that control.
“It aligned with how we think a server should be built. It is exactly what we would have done if we had done it by hand and spent several hours curating everything.”
Early on, when he was still getting to know SpinupWP, Chris took comfort in the fact that he could disconnect his servers from SpinupWP at any time and continue managing them manually: “SpinupWP doesn’t lock you in so if we wanted to try a different solution, we could shut down our SpinupWP account and access our servers directly through our VPS provider.”
Onboarding with SpinupWP
Everyone’s experienced the joy of finding what seems like the perfect solution only to be met with a confusing onboarding experience. Chris found getting started with SpinupWP to be smooth sailing. “We clicked a button and set it up and it was off to the races.”
It can be nerve-wracking trying a new solution. How soon do you go all in? Do you start with a smaller site? To get familiar, Chris set up a temporary server with SpinupWP. Getting acquainted with SpinupWP was super quick, within a week or two they had migrated their primary development server at DigitalOcean from their existing custom solution to SpinupWP.
What Vendi Would Like To See In SpinupWP
We asked Chris what he’d like to see improved in SpinupWP and we got some great suggestions.
Simplifying Backups Setup
Chris said that it’d be helpful if there was a way to either select the provider storage (space and region for DigitalOcean) for backups or just have a way to choose from a previously defined list, even if just per server.
We’ve been having lots of discussions about backups in our community and via email including having default settings and plan to implement that as well as many other things in the future. It’s clear that improving backups is high on our customers’ wishlist and so it is high on our roadmap.
Amazon SES Integration
“Email has been the most complicated thing for our team to implement, especially as we need to coordinate with client IT staff and deal with SPF, DKIM and DMARC. We’ve been using Amazon SES but it’s been a bit burdensome to set up. A 2-button click to set up Amazon SES would be helpful so it doesn’t become a forgotten part of the process.”
A prerequisite to this is DNS integration. Once SpinupWP can update the DNS for the domain verification needed by Amazon SES, then we can add a 1-click Amazon SES setup and it will be glorious! We’re very excited about getting to this milestone as well.
Support Non-WordPress Installs
Chris suggested we support non-WordPress installs like Drupal, Symfony and Laravel. This is currently possible with a workaround but we agree that having it as an interface option would be much better and plan to implement this in the future. In the short term, we plan on writing a more detailed how-to guide making it easier to get set up.
Who Should Use SpinupWP?
It’s helpful to hear how a product works for someone but you still may wonder if it’s right for your needs. Everyone’s business is unique afterall. We asked Chris who he would recommend SpinupWP to.
“I would recommend SpinupWP to anyone who wants to know how everything works, but doesn’t need or want to live in the server daily, weekly or even monthly. There’s a type of IT person that won’t trust something unless they can take it apart and put it back together again, and that’s where SpinupWP shines. At a very high level, SpinupWP is a Laravel application that orchestrates Ubuntu servers using Ansible at a cloud provider of my choice. These are my servers, my config, my sites, my backups. SpinupWP isn’t installed on my stuff, either, and I don’t need to worry about maintaining it, or keeping a Docker image updated, or anything like that. Behind the scenes I might not 100% know what SpinupWP is doing, but what it is doing to my servers is fully transparent.”
Far too many tech leads, founders or others in management roles are spending too much time with manual setups, they should be able to delegate those tasks to a tool they can trust. Chris and the Vendi team saw a huge improvement in productivity after switching to SpinupWP:
“I can’t tell you how many projects were blocked for development for days or weeks because server infrastructure either wasn’t provisioned, or wasn’t working as expected, or a developer didn’t have access. SpinupWP democratized our DevOps. It’s also taken some tasks completely off of my plate which opens me up to move projects forward even further.”
Chris also noted that SpinupWP allows more team members to do things faster which helps them meet deadlines faster and get more work through the agency. It takes five minutes to set up a site so they can make sites available for whatever is needed. Before, this used to take a half hour.
Whether you’re an agency or freelancer, you’ve likely dealt with similar challenges as Chris. Managed hosting and hosting a site yourself each solves parts of these challenges but neither solves all the problems without introducing new ones. A server control panel like SpinupWP is the best of both worlds. See for yourself with our 7-day free trial.
Do you think SpinupWP could fit into your company’s workflow? What would you like to see next in SpinupWP? Let us know in the comments.