3 ms·
Oh God. This is what is happening at my work. We have an API that has 200 write users and a public front-end that can do reads. None of it is heavy though, with
by systematical 6y ago
Oh God. This is what is happening at my work. We have an API that has 200 write users and a public front-end that can do reads. None of it is heavy though, with most writes occurring for a month in the Winter and a month in the Fall. In the unlikely event of heavy write loads we could just scale up CPU/RAM for those two months. Any read load be solved with cache or spending time on the worst offenders in SQL. The Lead Dev is gung-ho that it MUST be a micro-service with K8, Kafka, and I'm sure a bunch of other shit we don't need for what is the same application that has been being written for half a century. Data in/out with business logic applied. The entire API has about 8 paths, with your basic HTTP methods for each. Its probably the smallest API I've ever worked on.
The positive for me is I am learning a bunch of stuff during the process. The negative for the project is he expects developers with no previous skillset in this space to design all this new (for us) tech without introducing technical debt. The downside for the client is...well guess.
It's sad. I am rewriting a problematic legacy application and creating a whole new one. I guess I can put K8 and the kitchen sink on my resume when I look for a new job just before this thing implodes on release though. I just wanted to write clean code man, thats all. There is a sadistic part of me that wants to grab some popcorn and see how this explodes in his face...there is also a part of me that wants to be proved wrong...I hate this job.
- harpratap 6y agoSo are you assuming that your service will never grow? Because vertical scaling up is nice and easy as long as you know the limits but once you cross a threshold, not matter how many CPUs you throw at a problem it just won't scale. Your senior lead seems to be anticipating that and preparing in advance.
- systematical 6y agoWho assumes a system will never grow? No one. I'm looking at the 10-year-old legacy system we are replacing. That tells me a lot. Where its been, why its that way, and a lot about where it's likely to go in the next 2-3 years. Its function is actually being reduced in this rewrite. I'm not against the microservice idea. I just rather focus on solving the problems the legacy system had. None of those had to do with scaling. They were related to a certain federal agency changing their mind every 2-4 years and really poor coding practices. A microservice with kafka and k8 don't really solve those issues.