What you are trying to do is certainly possible and done in the development industry often. This makes it much easier to manager large amounts of users and keep them up to date and using the exact same development tools.
Usually the applications and associated libraries are installed on a network mounted filesystem. The directory containing the executables is then added to the user
PATH in their
These applications in this shared filesystem are hand built and installed in the specific shared location. I personally have not tried using a package manager for installations to a specific directory, it may be possible with some research.
Usually these tools are executed via the command line. If so inclined you could create shortcuts and application menu entries to get the full native experience.
I don't see why you couldn't use a local partition instead of a network mount. The overhead of all this might be a little over kill for just one user though. As previously mentioned, an application installation may not exist in one specific location with a single binary. You will have to carefully make sure all dependencies can be resolved from within that shared location.