Skip to main contentSkip to footer
Podcast

Partner marketing is right at home in the cloud. Because above the clouds, freedom must surely be boundless

Siamak Haschemi (CEO, Ingenious Technologies) talks with Tobias Rast (Senior Customer Solutions Manager, Ingenious Technologies) about the mystery that is the cloud. They clarify what the cloud actually is and how the cloud environment has evolved. They also discuss the benefits for cloud users and Ingenious’s journey to the cloud. Siamak and Tobias also discuss whether Germans and Europeans can use American cloud providers without concern.

#Affiliate Marketing Podcast – PM.12 with Dr. Siamak Haschemi and Tobias Rast

This episode is about:

  • What is the cloud, and how has the cloud environment evolved? (01:10)
  • Features and Benefits of a Cloud Environment (2:41)
  • Complete migration of Ingenious to the cloud (7:47 PM)
  • What are modules, and what do they have to do with the cloud? (31:30)
  • As Germans or Europeans, do we have no problem using Google as a service provider? (44:15)
  • What are the cloud benefits for Ingenious customers—or, in turn, for their customers? (50:41)

What is the cloud, and how has the cloud environment evolved?

The "cloud" can be described as a data/computing cloud and, in colloquial terms, refers to everything that isn't on my computer and therefore doesn't take up any direct computing or storage capacity.

The shift toward using a cloud environment was initiated by Amazon. Amazon has transformed from a bookseller into an internet and software giant. Amazon’s infrastructure grew enormously, to the point where they had computing capacity left over (most of the time) that they had originally purchased because they needed it during periods of high demand. They then offered this excess computing capacity for rent. This is how AWS came into being: a service that rents out computing capacity, and Amazon transformed from an online store into a hosting provider.

What are the differences between a cloud environment and hosting?

Cost is a major factor. For example, large companies pay between €100,000 and millions of euros per month for server capacity when they store their data in their own data centers. In addition, startups can rent infrastructure from cloud providers rather than having to build it themselves. This not only saves them a tremendous amount of work and costs associated with hiring additional staff, but also reduces the risk of large investments. A cloud environment can be set up very quickly, booked in no time, and easily paid for with a credit card.

By the way, even Netflix uses the AWS cloud environment, even though they are competitors in the streaming sector. The partnership began as a hybrid model (Netflix’s internal data center and Amazon) before the full migration to Amazon took place in 2018. Netflix is now Amazon’s largest customer (after Amazon itself). This makes Amazon the market leader as a provider of cloud services, generating more revenue from this than from its online store and all other services combined.

Features and Benefits of a Cloud Environment

The cloud environment helps users develop faster, experiment more, and respond quickly to server loads. In addition, the cloud provider serves as an innovation partner, as it is constantly evolving—or must evolve—due to competitive pressure.

The supposed biggest advantage of a cloud environment appears to be cost. However, the cost benefit for businesses only materializes once (all) the features of the cloud environment are actually utilized. For example, Google, as a cloud provider, offers 150 different services, and Amazon offers as many as 500 different services.

These services can be broadly categorized into different functions:

  • Infrastructure as a Service: Administrative tasks such as database operations (backup, replication, monitoring), load balancing, and security against hacking are handled by the cloud-based database. This increases the company’s efficiency, as employees can focus on their core business. In addition, the customer benefits from the cloud provider’s expertise.
  • Platform as a Service: The cloud—or rather, the cloud provider—serves as a platform for other providers (a marketplace concept) who offer their software via the cloud (a new distribution model). The customer, however, maintains a single business relationship with the cloud provider, and the additional services provided by external vendors are bundled by the cloud provider.
  • Function as a Service: Instead of having to write, integrate, and execute new code, you simply need to write the logic in a programming language, and the cloud provider handles the processing and full implementation. This creates the ideal environment for machine learning.

Especially in this era of remote work, the cloud has become even more important. Employees need nothing more than a laptop and can start working from anywhere overnight, since they are no longer dependent on a server located in the office.

Even though a cloud environment seems to offer nothing but advantages, it is not necessary to make an all-or-nothing decision in favor of a single cloud provider. On the one hand, there is the option of a multicloud strategy, in which multiple cloud providers are used and data and functions are distributed among them. On the other hand, a hybrid strategy offers the option of keeping certain parts of the software in your own data center while storing other parts in the cloud.

Complete migration of Ingenious to the cloud

Ingenious Technologies has always operated in a cloud environment, but it wasn’t until 2016—with the migration from Microsoft Azure to Google Cloud—that the company fully moved to the cloud.

This migration involved making significant changes to Ingenious’s software architecture, combined with a shift in how the cloud is utilized. Microsoft Azure was used solely at the Infrastructure as a Service level: servers, storage, and computing power. Now, in the Google Cloud, the potential for cloud-native development is being leveraged. This means applications are adapted to run optimally in the cloud. However, this step is not directly related to renting servers in the cloud. Rather, it means that software can no longer be used as a monolith—that is, as a single, large, integrated product. Instead, the software is broken down into individual components so that new software applications can be written without affecting the rest. This promotes the independent work of individual teams and encourages them to be experimental, as each part of the software can be developed and improved independently within the cloud environment. In the specific case of Ingenious, the development looked like this: From 3 components (2017), our software evolved into approximately 220 (2020) different (mini-)applications. Of course, not all of these are core components of the Ingenious Partner Marketing Platform. Some of them, for example, involve monitoring or internal reporting. 

The migration to Google Cloud also involved a critical review of every component of our software. Each piece of software was evaluated, rewritten, and migrated. The advantage of switching to a different cloud is that it’s very easy to track how far along the process is. Therefore, the switch from Microsoft Azure to Google Cloud was not actually based on rational grounds, but rather stemmed from psychological factors.

What are modules, and what do they have to do with the cloud?

Modules are units that can be deployed and released. At Ingenious, there are no micromodules; not every feature corresponds to a module. Our six products (Finance, Creatives, Messaging, Integration, Trail, Insights) could, in principle, be deployed, but they are too large or too broad; therefore, they are broken down into individual processes, which then constitute modules—for example, the Relationship Explorer. Each module has its own complete lifecycle. Using the Relationship Explorer as an example, this means specifically: its own API calls to create and retrieve relationships, its own data structures within the database, its own events, and its own UI components. However, the individual modules are not visible to customers in the UI.

What happens to a module so that it can run in the cloud? Modules are packaged in a container format and launched in the cloud environment. The amount of server capacity a module requires varies greatly, depends heavily on usage, and is a fully automated process. Depending on how much traffic a module is handling, some modules scale up and down. For example, the module for generating an invoice PDF file is primarily used at the beginning of each month. When no one is currently generating an invoice PDF file, the module is shut down or put on standby and does not consume any computing resources—and therefore no money. On days like Black Friday, when high traffic is expected, there’s no need to manually add servers; instead, as traffic increases, so does the number of servers in use. This means that even unexpected traffic doesn’t pose a risk of overloading the system.

As Germans or Europeans, do we have no problem using Google as a service provider?

Due to data protection regulations and monopolistic positions, we must make our decisions carefully. But even as a participant in the affiliate marketing landscape, Google plays a special role as the largest platform for ad delivery. Every cloud provider must comply with European (data protection) laws. Through our contracts with our cloud provider, we know how data processing works, what technical and organizational measures are in place, where the data is stored, and how it is processed. The example of Amazon and Netflix shows that data protection regulations are strictly adhered to (and must be), otherwise Netflix would not rely on a direct competitor.

We have also contractually stipulated that all of our customers’ data is stored in data centers within the EU. In addition, we have implemented our own measures: The containers in which our modules reside adhere to a standard that is independent of Google or Amazon. This has allowed us to introduce an additional, cloud-independent layer (Kubernetes) for our applications, enabling us to flexibly adopt a multicloud strategy or switch entirely to a different cloud. If data protection measures for our customers are no longer sufficient, we can pull the plug and move.

What are the cloud benefits for Ingenious customers—or, in turn, for their customers?

The biggest advantage is fast loading speeds. Thanks to the cloud, a page’s loading speed isn’t affected just because the ad assets come from an external server. Another advantage is reporting. This allows us to give our clients access to an ever-expanding database. They don’t have to worry about scalability, capacity, launching additional servers, etc. In summary, we provide small to medium-sized advertisers and partners with opportunities they wouldn’t otherwise have (directly) due to their size, and we help them stay up to date with the latest technology.

More articles

More articles