DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
The Latest "Software Integration: The Intersection of APIs, Microservices, and Cloud-Based Systems" Trend Report
Get the report
  1. DZone
  2. Testing, Deployment, and Maintenance
  3. Maintenance
  4. Styles of Software Infrastructure Management

Styles of Software Infrastructure Management

From the old to the modern, to the good, bad, and ugly, you're sure to have experienced a few of these.

David Karapetyan user avatar by
David Karapetyan
·
Dec. 17, 18 · Presentation
Like (4)
Save
Tweet
Share
7.73K Views

Join the DZone community and get the full member experience.

Join For Free

I've been in this game for a bit now and have observed a few patterns. What follows is a list of patterns about software infrastructure and how it can be managed or mismanaged depending on your perspective. The list is in no particular order or ranking.

"Enterprise" a.k.a. Beg IT for It

This style of management is all about risk mitigation. Ian Miel has a really good explanation of how this happens. In order to get anything done, you must "kiss the ring" of the IT department. After enough kisses they will create a ticket and follow through, but only after they clean up another porn-related virus from the laptop of some C-level executive.

"Not My Problem" a.k.a. Managed Services

This is what all the cool kids are doing. The most famous example is Heroku. If your requirements fit a specific template then this is the fastest and cheapest way to get things off the ground. You don't have to worry about provisioning anything other than your laptop. The managed provider will take care of the rest after you give them some YAML file. They'll provision the servers with the correct runtimes, deploy your software to it, reload the load balancer to point traffic to the new code, and scale things up and down according to traffic patterns.

It turns out that Heroku was the original serverless platform but they didn't market it that way so now they're playing second fiddle to the likes of AWS and friends with their serverless offerings.

"Totally Not My Problem" a.k.a. Serverless

This is the latest and greatest in software infrastructure. It is suspiciously like Heroku but more ghetto. This trend started with Kubernetes cannibalizing the cloud vendors so in order to stay relevant AWS by sheer force of will created an entire new way of shipping software. Honestly, it's still hard for me to make sense of this trend. It has all the downsides of managed services with none of the upsides. Serverless platforms are so bare bones that you can't help but be locked-in to whichever vendor is hosting your code. You have no choice because the template for serverless development is so restricted.

Since the lock-in is one of the biggest issues there are a few frameworks on the horizon that promise vendor neutrality. Of course, now you've moved up your level of lock-in. Write code for a specific serverless framework and be stuck with it for life.

"Somewhat My Problem" a.k.a. In-house Platform

Begging IT for everything all the time gets old pretty fast and most C-level executives don't know how programmers actually do work, all they can do is sense when they're unhappy. So after a few whiffs of disgruntlement the executives got together and brainstormed a solution: Kubernetes. Remember Kubernetes? This was the thing that gave birth to Serverless. There is a Greek tragedy somewhere in there.

This is the stuff with all the downsides of managed platforms and all the upsides of enterprise IT. The IT department continues to be relevant because they get to work in the coal mines of Kubernetes and programmers get to pretend they're shipping code. As usual the C-level folks are none the wiser as to how code actually gets made but they can tell the programmers are distracted instead of disgruntled and that's good enough for them.

Software Infrastructure

Published at DZone with permission of David Karapetyan, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Implementing PEG in Java
  • Using Swagger for Creating a PingFederate Admin API Java Wrapper
  • Getting a Private SSL Certificate Free of Cost
  • How To Best Use Java Records as DTOs in Spring Boot 3

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: