I'd say that heavily depends on Software A and B.
If you want to actively push data from system A, you need to check for system-specific enhancement options for that system. E.g. is there a way foreseen to add custom plugins, call webhooks, etc.
If you want to actively want to pull data from system B instead, you have to do the same exercise as before but for the other system.
Such interfaces (if available at all) are often vendor specific, so one software may use Java for addons, another only Python etc.
In more complex integration scenarios, you often work with a so-called middleware that acts as a translator between different data formats, protocols etc. Such middleware software often already has pre-built triggers or prepared integration routines for very common software. A commercial example that is mostly meant for end users would be Microsoft Power Flow or if you are looking for FOSS you can check out Node Red.
I don't think there is a lot of 'integration knowledge' that is generally applicable independent of the software in use. If you want to start building a toolbox of skills, you could start looking at SOAP, REST, XML, maybe learn a scripting language such as Python etc.