Problem: The engine compiles every time we do changes to our project

I don’t understand why it even recompiles entire engine for every new project! Is not that enough compiling the engine once it’s updated?
Why not to build the game shared libraries and than link them with the engine?