I have a junior developer that has become a drain on my time.
Several times a day, he either stops by my office, or grabs me as I pass by his (his office is centrally located, so that I'd have to walk through several other people's offices in order to avoid passing his), to "ask for my help". However, frequently there are no questions involved. Instead, he provides me with a detailed list of every task he's accomplished recently, every problem he has run into, and, if he's already resolved an issue, exactly what he did to solve it, including detailed descriptions of the syntax he used and explanations of how new language features he discovered work.
If I try to leave his office before he's done (e.g. when he finishes describing foo, but hasn't started talking about bar yet), he'll continue talking as I walk down the hall, or sometimes even get up to follow me into my office.
We do a code review on each other's code every time we check in to source control, so he knows I will take a look at his code even if he doesn't tell me about it.
I've talked with him several times about this, explaining that if he doesn't have a question, or a problem that he is uncertain how to address, he does not need to tell me about it. Each time, he has apologized, and said that he'd work on that, but within a few days he's right back to providing multiple detailed descriptions of everything he's already done.
I want to be an approachable resource for him, as part of my responsibility is to provide him guidance and help him grow, but the insistence on describing in detail tasks that he's already resolved is a significant drain on my time.
Aside from telling him that he only needs to talk to me about problems or questions (which, even with frequent reminders, simply doesn't work), I've taken to walking him out of my office to end conversations, which has been somewhat successful, but he still grabs me as I walk past his office several times a day, and it can be 5-10 minutes before I can even tell if he's got a question.
I've offered to give him a 15 minute daily stand-up meeting each morning to give me an update, but that didn't change his behavior at all; it just gave him a guaranteed platform in addition to whenever he decided to initiate other conversations.
Short of continually saying "is there a question coming up?", is there a professional way to approach this?
I'm the lead dev and project manager, in charge of the department.