Moving to the Cloud: What I Thought vs. What I Know Now

Chris Dolan

9/20/20234 min read

cable network
cable network

When I stepped into the role of IT Director for my last organization, the first directive from my boss was simple but daunting: "Move everything to the cloud." Back then, I thought I understood exactly what that meant, but looking back, I realize ... I didn't.

The director I replaced had practically lived in the server room, focusing on physical machines and on-site infrastructure. I was told that when they hired me, they were making a deliberate shift away from that old-school IT approach. In fact, we didn’t even call it "IT" anymore; we transitioned to "Information Services" (IS) to reflect the true role of technology in our organization. Technology, after all, is not an end in itself but a means to providing services that help achieve broader goals—especially in the world of nonprofits and service-based organizations like ours.

Inherited Infrastructure and the Path Forward

Thankfully, the organization had already taken the step of moving our email servers to a cloud hosting service, saving me the hassle of tackling that essential task from the ground up. However, almost everything else—our file servers, application servers, and various business-critical tools—remained on physical machines in our server room.

Here’s a confession: before I assumed the role, I had never set foot in that server room, and I only vaguely knew where it was. My boss, the CFO, took this as a positive sign. "Don’t even bother going in there," he said with a smile. He saw me as someone who could take the organization toward a fresh, forward-looking direction, not someone who needed to get lost in the technical weeds of the physical infrastructure. Besides, I was lucky enough to lead a highly capable team that could handle the much more technical details.

Early Cloud Misconceptions

So what did I think "moving to the cloud" meant at that time? After consulting with peers and vendors, I concluded that there were basically two main options:

  1. Renting Hardware: Set up an account with AWS, Azure, or Google, and essentially renting their servers so that we could move our virtual applications onto their infrastructure.

  2. Co-locating: Pay a third-party company to host our physical servers in their data centers. They would maintain the hardware and ensure uptime while we continued to run our applications remotely.

Ultimately, we went with the first option: renting hardware in the cloud. Over the course of a few years, we methodically migrated many of our systems to this new model, drastically reducing our reliance on physical infrastructure. To further streamline, we adopted SaaS (Software as a Service) solutions wherever possible. These SaaS applications eliminated the need for servers entirely, allowing our users to access everything they needed through a web browser.

By the time I moved on to another role, our organization had significantly reduced its hardware footprint, cut costs, and dramatically improved the efficiency of our IT services. We had successfully "moved to the cloud,” but I soon found out that the cloud had so much more to offer.

A Deeper Understanding of the Cloud

It wasn’t until I later worked at a SaaS company that I truly grasped what cloud computing really entails. I had been operating under the assumption that "the cloud" simply meant renting someone else’s hardware rather than maintaining our own. In that model, when your application needed more capacity, you could simply spin up additional “rented” servers to accommodate increased demand.

While this is part of what the cloud can do, I learned that true cloud computing goes beyond this simplistic approach. While renting servers and running virtual machines is part of it, that model doesn’t take full advantage of the cloud’s most powerful capabilities. Spinning up virtual machines still takes time—minutes, even. And when legacy software vendors tell their customers, "You can host our on-premise software in the cloud," they are often misleading their clients into thinking this is fully embracing the cloud. In reality, it’s not.

The Difference: True Cloud Computing

True cloud computing requires a fundamental shift in how software is designed and deployed. It’s not just about running applications on a virtual machine in the cloud; it’s about breaking those applications down into different layers and functions, each optimized and hosted in cloud solutions tailored for that specific task.

For example, rather than spinning up an entire virtual server to handle more traffic, a true cloud application is built with microservices. These microservices allow specific functions—like making an API call or handling a database query—to scale up and down in milliseconds. This means that whether your application processes hundreds or millions of requests in a minute, the underlying cloud infrastructure adjusts instantly to meet the demand. There’s no need to wait for a new server to boot up, because only the specific service that needs more capacity scales up, and only for as long as necessary.

This granular approach to scaling improves performance, reduces costs, and offers a seamless user experience. However, it often requires re-architecting the entire software application. It’s a significant investment upfront, but the long-term benefits make it worthwhile—both for the end users who enjoy faster, more reliable service, and for the company, which only pays for the cloud resources it actually needs.

The Restaurant Analogy

To illustrate the difference, a traditional server hosting would be like a restaurant running with a full kitchen staff during all open hours. Whether there’s a rush of customers or just a few tables, you have everyone—cooks, dishwashers, waiters—sitting around, waiting for their turn to be busy. In a cloud-optimized restaurant, you’d only hire the dishwashers at the end of the night when all the plates come in, or bring in extra chefs for a short burst during the dinner rush. You optimize labor (or in this case, computing power) to match real-time demand, making the process far more efficient.

Looking Forward

Reflecting on that initial charge to "move everything to the cloud," I realize now how far my understanding has come. Back then, I equated the cloud with virtual machines and rented servers, but today, I recognize that true cloud computing is about designing applications that leverage the full power of scalable, on-demand resources.

The cloud is not just a place to park your servers; it's a whole new way of thinking about how we build, deliver, and scale software in the modern world. It was fun being a part of a SaaS organization that truly understood the full capabilities of the cloud and sought to maximize our technology to utilize its offerings in order to best serve our partners.