Backend services architecture

Just from my experience with,, and new unpublished projects...

What API Gateway to use?

Probably RapidAPI, because it's super simple to set up (already have it set up) and monetize. They probably fully support OpenAPI now.

What database to use?

Postgres for words/domains, because already have it working. Probably for other data as well.
For full-text search of news/data-mining/bible/quran/wikipedia, probably also Postgres, because I already know how to make efficient ILIKE search indexes, but ElasticSearch would be better.
For user accounts, interactions, settings, any kind of NoSQL data or cache where speed is not very important, try
Also JavaScript SDK looks very promising for connecting the front-end directly to the database.

Backend code quality...

How to make sure a code change doesn't break other logic?

Test all endpoints locally before pushing any new code. Re-test everything always, even for a tiny one line change! Install Git pre-commit hook.

How to make sure a configuration change or server reboot doesn't break the service?

This is a tough one. Sure we could test the service periodically from a 3rd party test suite, but that would catch it too late, after it's already been down for a while. Maybe just test one endpoint every few minutes? Going to have to test all/most endpoints every few minutes using ChecklyHQ, until figure out a better plan.
The trick here is for the test to access the endpoint same way as a client would. So, if using RapidAPI, then the test should request to RapidAPI, using their authentication/headers.

How to make sure a 3rd party service change doesn't break the service?

Use to periodically test each endpoint, without cache, to make sure the same data is returned each time.