In our experience, the day-to-day mechanics aren't too terribly different, but it requires more planning and management commitment. All the things that everyone SAYS they do when the bring on grad/junior devs, matter more, because the spray-and-pray of "hire 10 juniors and throw them in the ring and hope for osmosis" fails pretty badly.
When we bring on a junior, it's typically targeting a specific effort, with a specific team/mentor structure, and a desired exit strategy - at the end of X months, we expect the person will be capable of Y and Z, at which point they can fill these rolls in this other planned effort.
The mainline developer track isn't too tough to negotiate (a Java Dev 1 can do X, a Java Dev 2 can do Y, and so forth), but the harder part of the journey is cultivating breadth. Getting them experience with setting up a build system, or alternate OS familiarity, or learning color theory, or how to interpret a security scan.
I'm a VP of an established remote-first company, 50+ developers, all US-based. For the most part, remote-first has been a great benefit for us, but there are no silver bullets.
Other than the issues mentioned elsewhere re: HR/Payroll complications, our biggest issue is finding junior talent and facilitating individual growth. For the most part we skew towards people who have some amount of remote work experience, which means skewing towards more experienced team members. That can have some knock-on effects that need to be managed: more experienced typically means greater salary, fewer juniors means less visible organizational structure around things like "I manage and mentor a team of 5" which can be disorienting for new hires, and can limit mentorship growth for senior team members.
For many senior developers, those knock-on effects could be viewed as positives, but we need to be sensitive to the overall composition of the team.
I haven't seen any greater motivational issues at remote-first vs a traditional management position. Like most any job, your motivation is largely a factor of your engagement. It's just as easy to drift on-site, with smoke breaks, lunch breaks, ping pong matches, chatting with your officemates about last night's NBA finals, etc etc.
Take a look at Uber's career's page. Even broken down to USA Engineering on the Engineering team hires, there are dozens and dozens of open positions. It's safe to say Uber thinks it's a > 20 person job.
When we bring on a junior, it's typically targeting a specific effort, with a specific team/mentor structure, and a desired exit strategy - at the end of X months, we expect the person will be capable of Y and Z, at which point they can fill these rolls in this other planned effort.
The mainline developer track isn't too tough to negotiate (a Java Dev 1 can do X, a Java Dev 2 can do Y, and so forth), but the harder part of the journey is cultivating breadth. Getting them experience with setting up a build system, or alternate OS familiarity, or learning color theory, or how to interpret a security scan.