Hacker News new | ask | show | jobs
by beagledude 2767 days ago
or Do you?
1 comments

You don't.

EDIT: 99 times out of 100, you don't.

but what if? Imagine.
I imagine if you have an ops team, they're going to continue to pray every time you have to upgrade k8s or a supporting underlying service and the expectation is that everything will continue to function without dropping an inbound request. I imagine they are going to be less than impressed being on call for something that is essentially still in beta. And if you have no ops and your devs are responsible for it, god help you unless you're leaning heavily on a Kubernetes managed service (which is of course, as we recently saw with Google's outage [1], no guarantee everything will work flawlessly).

My hesitation and cautiousness doesn't come from being a greybeard curmudgeon, it comes from a healthy dose of skepticism that this is The One True Path that will Solve All The Problems. I am cautiously optimistic it might be a stable, proven ecosystem, eventually. But it isn't today.

When making technology decisions, imagine that you're the one with the pager at 3am and work backwards accordingly.

[1] https://news.ycombinator.com/item?id=18428497

on a Kubernetes managed service

Using GKE I am horrified by how many times I have to type

    gcloud beta ...
Man, I wish I could give you more upvotes for this sentiment. Making the decision to put the livelihood of a company on any platform is not to be taken lightly. As an SRE I feel like I have to take a slightly conservative approach to new technologies.
Do me a favor and pay it forward. When technology decisions are made, look at them with a conservative eye. Make absolutely sure the technology selected is being selected for the right reasons (ie not resume driven development, premature optimization, culture signaling, or because it's "new" it must be better). It'll pay dividends for whomever has to operate it, as well as the business.
But, maybe?
Maybe you'll become a billionaire. But probably not. Your monolith in a container will take you far, before we go down the treacherous path of microservices (for team demarcation, not technical scaling, but maybe technical scaling!), container lifecycle management, inbound load balancing, internal load balancing, service mesh and discovery, and all the fun that container orchestration at scale encompasses (are you ready to cry for a bit when you're running on no sleep and you can't determine why your orchestrator is unable to retrieve container images from your registry?).
How old are you?
Almost 40, 20+ years of tech experience.
Are you concerned that you're taking a stance here that's more reflective of your years of experience than of the changing trends in tech?

Experience can be a crutch too, especially in a field that gets upended by new concepts every 3-5 years. I hope you're cognizant of that.

What worked 5 years ago is a joke today, in many cases.