Do you often see the need to change source code in real game development?

Game modules or plugins are the way to go then you can take your code to other projects. Also when a new version of the engine comes out you’re not having to redo your changes if you wish to upgrade to that new version.

Feature request is also a good option in some cases. Then you will have experienced programmers working on your feature if it is taken up by Epic.