Most answers, including mine, agree that the actual problem is the sub-par output.
Yes, being distracted (and potentially not working the promised 8 hours per day) is one possible reason. Even if one thinks that remote work is flexible, doesn't have to happen in a single 9-to-5 block etc., one could still bring up the online activity one noticed and suggest that staying focused would improve output. But this is essentially a problem of lacking motivation.
But spending time with Leetcode indicates lacking motivation. And that is not a one-dimensional problem.
Once we recognize this as the actual issue, we could do what any good boss would do: Ask whether there is anything you can do to help the developer. This question has multiple functions: It shows the developer that you care. It shows that you think it's not them to blame. It shows them that you think they are valuable because you are willing to invest in them.
Suggestions for trying to improve work satisfaction and motivation:
- Is there anything they'd rather do instead of the assigned tasks?
- Would they rather like to be teamed up with somebody else, or work in a team to begin with (instead of alone)? Missing the office work interaction is a common issue raised by remote workers.
- Do they need better equipment? Even contractors may appreciate financial support for a better machine or screen. Bad equipment is a major nuisance, and the actual cost of hardware pays off quickly if it leads to greater productivity because labor is expensive.
- Do they need more information, better documentation, or an assigned go-to person for any questions they have? Asking a person in the know often replaces hours of frustrating attempts.
- Do they need better software tools?