Thought Experiment: Automation in Big Corporate

| Created | Modified

Thought Experiment: Automation in a Big Corporate Environment

Goal: We want to transition from owning our own fleet of cars to using a taxi service as a utility (service provider).

However, we don’t know enough about the taxi business and feel uncertain. Therefore, our first step is to hire drivers to operate our existing cars as makeshift taxis. These drivers, however, are not trained taxi drivers, they don’t know the routes, and the navigation system is a proprietary product with outdated maps. It comes from a reputable manufacturer, which is useless in practice. To keep them awake and encourage them to learn the routes, we also provide our drivers with coffee from a well-known, premium coffee chain.

Sounds pretty absurd, right?

In this analogy:

And because a provider like Amazon/Uber can inherently do it better, we then consider putting our “untrained, clueless taxi drivers” into cars rented from Uber, hoping they will navigate the streets more efficiently.

Why ‘Baby Steps’ Migration is Often Nonsense

In plain terms: This demonstrates why migration in “baby steps” is sometimes complete nonsense. Automate whatever you can, and please refrain from using half-baked solutions. These compromises are often propagated by control freaks who are driven by FUD (Fear, Uncertainty, and Doubt).

The time spent on #reinventingthewheel or on proving the necessity of automation (“we want to understand it first” or “see that it works”) can instead be invested confidently in Development.

Infrastructure first. Hire DevOps engineers who can set up a robust Infrastructure and a CI/CD pipeline for you, and let them execute the vision. The sooner you do this, the sooner you’ll be riding in your own “taxis” (a reliable, automated system) and won’t have to worry about the path to the destination.

The better the automation runs, the fewer errors you will encounter. A checklist with numerous points that still must be processed manually remains prone to human error and simply drains human time and patience. Furthermore, developers learn nothing except how to repeat human errors. This leads to more frustration instead of working on a CI that would genuinely simplify things.

You want: Time to Rollback. Time to go live. Instant response. Time for tests and quality instead of the same old bullsh*t.

Oh yes, and then there were the massive limousines—the analogy for vertical bare-metal scaling. They proved impractical in rush-hour traffic. But they certainly look nice. Who needs them, anyway?