Within a codebase there's a arbitrary number mental models that that particular code base uses to solve problems. Perhaps it uses a calling convention, or a REST API or a C FFI API. Or Spring. The problem is ultimately how do I get data from here to there so that I understand it for doing an organised computation on it.
When you go outside that codebase, you switch mental models of how to solve and think of problems. It's similar to switching between writing in Python and then writing commands in bash shell.
It's similar to switching between HTML, CSS and Javascript as a frontend developer. Or embedded C programming or the code of a compiler.
I feel the logistical problem is space or position based, which can also be computed with numbers or vectors as with language models.
How many of the problems that people solve with programs are the same problem, said slightly differently? BSD sockets standardised communication but we have so many solutions to positional+placement logistics: systemd, sysv, Tomcat/application servers, kubernetes, package managers, docker, wasm runtimes, virtual machines, firecracker, OSGI, LXC, processes, threads, databases and so on. Said another way: what is where.