Earlier quoted context omitted.
So you have few options. Work on more? Pick up another stack. Do some weekend consulting in a new framework. Better yourself. By being stuck in the only 1 job you could possibly work for, you are just delaying the mess that happens when they close down / get bought / you get fired. The best part of programming is you can teach yourself almost anything, especially if you have previous experience to build on.
I can't really pick up any off-hours stuff since my wife works and I have to watch the kid. Maybe once they're older I'll have time.
Ask HN: How do you keep track of releases/deployments of dozens micro-services?
121–130 of 140 posts
Re: Ask HN: How do you keep track of releases/deployments of dozens micro-services?
#122Earlier quoted context omitted.
> Production issues are a part of life. Only if you accept them. The alternative is to do very few, rigorously tested releases per year. This way you don't have production issues. That's how industries like banking make sure bank transfers and card payments work and people's money is not randomly lost... It's a shame many other industries just accept their product failing for users as something normal/inevitable.
That's adorable. You know that no matter how much testing you do, that something WILL slip through the cracks? Always.
Re: Ask HN: How do you keep track of releases/deployments of dozens micro-services?
#123Earlier quoted context omitted.
I can't really pick up any off-hours stuff since my wife works and I have to watch the kid. Maybe once they're older I'll have time.
Lunch hour. After bedtime. Morning. You are responsible for making yourself better. Do it.
Re: Ask HN: How do you keep track of releases/deployments of dozens micro-services?
#124Earlier quoted context omitted.
The "Building Microservices" book, which used to be the goto book for microservices suggests on page 31 to page 38 that bounded domains are a good model for microservices. The main difference between SOA and microservices is dump pipes vs smart pipes. Not service size. As explained in that book. Most people trying to implement microservices seem to have not read much about them outside of blogs.
Quoting some book does not change the fact that most people understand SOA as being team or domain-bound and microservices as being much smaller.
Re: Ask HN: How do you keep track of releases/deployments of dozens micro-services?
#125Earlier quoted context omitted.
Lunch hour. After bedtime. Morning. You are responsible for making yourself better. Do it.
Nah, I've done everything right for years. No point in wasting my time if there's no reward.
Re: Ask HN: How do you keep track of releases/deployments of dozens micro-services?
#126Earlier quoted context omitted.
> Production issues are a part of life. Only if you accept them. The alternative is to do very few, rigorously tested releases per year. This way you don't have production issues. That's how industries like banking make sure bank transfers and card payments work and people's money is not randomly lost... It's a shame many other industries just accept their product failing for users as something normal/inevitable.
That's adorable. You know that no matter how much testing you do, that something WILL slip through the cracks? Always.
Re: Ask HN: How do you keep track of releases/deployments of dozens micro-services?
#127Earlier quoted context omitted.
That's adorable. You know that no matter how much testing you do, that something WILL slip through the cracks? Always.
Work in healthcare where we have heavily tested, quarterly releases. Well, we had a release today and some stuff was pretty horribly broken, despite being so heavily tested. We didn't adequately load test one piece of the new release under production-like conditions. Oops. Thankfully the fix was simple and a hotfix only took a couple of hours in total. Yet another lesson learned.
Re: Ask HN: How do you keep track of releases/deployments of dozens micro-services?
#128Earlier quoted context omitted.
The biggest difficulty I've experienced is "librification", where some common code ends up in a little library, and soon that library is not so little any more, and not long after starts to look like half of every service. I can maintain discipline when working on small systems alone, but on a team there will always be one lazy person or urgent need which means eventually some shared component gains enough gravity to…
These libraries already exist whether you write them or you use someone else's. In our case most of our micro services are node.js based so Koa is in every microservice and we use middleware for authentication -- and thus if the authentication system evolves (moving to JWT or a microservice gateway) we have to evolve that middleware everywhere. Same with our consistent logging system. Libraries are better than unique…
The problem is an not-ideal "the code which is in libraries shared by different services is tightly-coupled to particular services". e.g. changing the shared library might break some service which depends on it.
Obviously, you don't want code like that. But it's easy to write code which is slightly coupled; and then when you're in a hurry, to increase the coupling.
Re: Ask HN: How do you keep track of releases/deployments of dozens micro-services?
#129Re: Ask HN: How do you keep track of releases/deployments of dozens micro-services?
#130We just made all the microservices into one big monorepo and we deploy all at the same time. To be honest we tried to avoid the monorepo but it was hellish. Maybe if each microservices was larger and our team was larger but then are they microservices any more?
One "wisdom" I hear is that the benefit of microservices is organizational: One microservice per team, so you cut down on intra-team friction, and the team can manage their own releases.
(In other words, you're 100% spot on!)