In a software org at a large tech company that has several services across small teams with various functionality and UIs. Have gotten direction from up above and been assigned the task of being responsible for concentrating all of the different services under a single web service and UI. Think AWS management console for the various AWS tools.
These services are all webservices with different communication protocols (REST, gRPC, etc) and different tech stacks internally, since they were all bootstrapped without a technical playbook in mind. What are some architectural or organizational patterns that I should look into in order to make this happen?
I would look at the patterns used by successful open source projects in this space, or actually use those projects directly.
https://github.com/Kong/kong works in this space, but there’s like a million of them. I’m not super familiar with the space, but I’d look through a list like this: https://dev.to/apisix/how-to-choose-the-right-api-gateway-3f9i
And decide if you’re open to a commercial solution, want to directly eval open source options, or if you think you’re genuinely resourced to create something bespoke that’s better and just want want to study the OSS options for inspiration. Nothing in this question makes me think you’ll arrive at a better result through custom code than you would through adopting a mature API gateway, but who knows.
Graphql federation could help unify these services behind a single API.