My current employer about 60% of the employees are remote and my entire team is remote. Almost everyone has their own on-the-side consultancy and is very public about it. Team members swap stories about their after-hours clients. The after-hours work allows us to diversify into new stacks, experiment with tooling that might not be available to us during the day hours, and then bring a lot of this experience back. Since we're all on very flexible schedules, meetings during normal the normal 8-5 rarely conflict. As long as we don't compete in our employer's industry (which is a very niche industry), we're generally trusted to keep our client/employer work separate, prioritize our employers meetings over client meetings in scheduling, then really it's quite kosher.
I'm a little surprised more medium-to-large businesses aren't more encouraging of it. Free training, keeps the engineering team sharp, and definitely keeps a lot of the more ambitious engineers from getting bored with the pace of building boring business software.