API Gateway is a fully managed service to create, publish, maintain, monitor and secure APIs. Lambda is a function-as-a-service product. The two can be combined to create serverless, cost-efficient and infinitely scalable APIs.
Kubernetes is a software system that allows one to easily deploy and manage containerised application on top of it. Its aim is to provide best possible utilisation of your hardware (metal and virtual) resources while still maintaining complete isolation of hosted applications.
Docker is a platform for packaging, distributing and running applications. It allows you to package your application together with its whole environment.
When an application comprises a handful of large components only, it's completely acceptable to give a dedicated virtual machine (VM) to each component and isolate their environments by giving each their own operating system instance.
Monolithic applications consist of components that are all tightly coupled together and have to be developed, deployed and managed as one entity. Running a monolith typically requires a small number of powerful servers that can provide enough resources for running the application.
Algorithms are instructions on how to perform a task. Not all algorithms are created equal. Some are fast, some are excruciatingly slow. Most algorithms are affected by the size of the input (typically denoted by n). The first step to improve code performance is to measure it.
One thing you learn from spending time studying China is that the Chinese state has an asymmetric advantage in much better understanding the US than the US understands China and being very good at deliberately structuring their systems and policies in a way that consistently exploits the weaknesses in how Western liberal democracies are organised.