Hour 0-0.5: get back to whatever I left the previous day... most productive 0.5 hour of the day with a fresh mind.
Hour 0.5-1.5: meetings, status updates, syncing with others...
Hour 1.5-3.0: more intense coding. May be bug hunting, new feature, more testing...
Hour 3.0-4.0: lunch.
Hour 4.0-5.0: typically helping other team members or discussing bugs/new features etc. Or doing "research", keeping up-to-date reading whatever (software related), including HN.
Hour 5.0-5.5: coffee break, thinking about personal stuff usually, have a little snack or something.
Hour 5.5-7.0: more coding. Much lower productivity though, typically leave things to finish in the 0.5 hour I am most productive the next day. Might read news and non-work related things to give my brain a little break every now and then.
I have the similar schedule like you do. I even plan a short 0.5 - 1h training between morning and lunch. And like you, I am more productive in the afternoon, at the end of the day.
My average day looks something like:
Hour 0-0.5: Get ready for the workday - messages, email, write standup report, take a shower.
Hour 0.5-1: standup meeting + offline meetings.
Hour 1-2: meetings or brain work
Hour 2-3: mealtime, active availability
Hour 3-5: active availability, light work, meetings
Hour 5-7: brain work (I do my best brain work at the end of the day typcially)
I'd be curious what others schedules look like.