I have studied computer science and am now working in a company as a single developer on a pretty agile Java-project for almost a year. The project will soon be successfully (at least I hope so!) finished.
The core functionality ... is functioning and even some other stuff that was not in the start-requirements. I even have a lot of ideas for new features that are not necessary, but would help with the usability and functionality of the program.
Some parts of the program work very well, while other parts have code I am not very proud of...
Since the start of the project I have learned a lot and therefore know now how to theoretically write better code in those parts - which makes you realize the mistakes you did that you did not notice before!
The problem: There won't be much time after the project to do anything, re-writing from scratch is simply not possible. And re-writing only the bad parts would require to go deep into the core functionality -> takes a lot of time!
Are there methods / strategies how to learn from my mistakes and make the next project even better?
Is there anything else I should do after completing the project, but before I move on to the next one?