I have one file per year, I write one entry per day, mostly what happened during the day, in the "journal" part, and make notes in the "notes" section, notes can be writeups, code snippets etc. Each new year, I condense the best of the notes section into the next years new note section.
I do this in org-mode, using Spacemacs, its a bit of learning curve involved with Emacs/Org-mode but Spacemacs sets it up for you very neatly.
I store the files on dropbox.
Since its my journal, that I want to make sure that my kids still can read when the times come, this UTF8 text file format that Org-Mode is, is absolutely essential.