I implemented a weekly technical training program that morphed into the 250 person org official onboarding. Weekly, I literally just get someone on a VC for 30 minutes and record having a conversation about a technical topic at a noobie level. 16 months later we have 50+ training videos on every topic.
We implement mentors and formal onboarding processes with screen sharing and remote whiteboating sessions, too.
It's not hard.
Frankly, this works better than any of the digital tools I tried, despite not being collaborative. (I tried a number of them, and have both a drawing tablet and a tablet pc)
As a junior, the most rewarding learning experiences I have had in my career took place during off-topic discussions at the desk of an engineer who was way smarter than me.
Structured training may be straightforward to implement, but it takes many more man-hours than just letting the new employees sponge up knowledge on their own.
That said, remote work is here to stay, and you're right to criticize companies for being extremely lazy with remote onboarding. Companies that can quickly ramp up fully-remote new-hires will probably have a huge competitive advantage in the coming years.
Better mentorship, not “here’s your mentor” and it’s some disinterested person who can fob you off to soak it in. The good news is that if people can “learn by osmosis” you probably have some strong informal mentors already. You need to identify who they were.
Better follow up and expectations setting, if there’s obvious stuff you expect people will just get because of team culture make that explicit and check in about it as you would other aspects of work. The big thing IMO in any on boarding situation is to get the new person asking lots of questions ASAP.
All of these will make your on boarding better back at the office as well. On boarding by Brownian motion isn’t really a plan after all.
If you're just getting started in your area (whether development, sales, marketing, devops) having immediate help and guidance from your peers and manager is really helpful - documentation helps, structured training helps but they're not the full solution. Those momentary 'quick' bits of guidance help, and whether we like it or not "face-to-face conversation" is the highest form of bandwidth we have.
The other element people don't talk about enough is that getting used to "working" is a journey in and of itself. There are lots of elements of being productive in the world of work - not just churning out code - and it's not obvious how it all works. In some areas I see a lot of "hollowing out" where we don't have as many entry roles.
Not sure what your org is like but ask to pair remotely if you can, ask to do code reviews over video call so you can talk through questions, ask your manager regularly to talk you through the trade offs involved in the decisions they are making, etc. If you hear about a weekly status call happening on some project, ask if you can be included “to learn.”
Your goal is to first increase your situational awareness and understanding of the domain, because that is upstream of the technical trade offs.
I think people graduating into this have to fight really hard for the mentorship and learning that would happen naturally 10 years ago.
People like me who graduated 10-15 years ago and would now naturally be your mentors don’t realise this because we never faced it.
Last week I decided to switch teams. My onboarding rate is glacial so far. Naturally I don't have a big workload, because I am new. However between tasks I can't just try and learn by osmosis, because there's nobody around. I have to go out of my way to schedule meetings with people and say "what are you working on? explain it to me."
Luckily I am in a fairly senior role so I am confident scheduling those meetings and asking those questions. If I was a new grad I'd be terrified to do that and instead probably just sit here and twiddle my thumbs half the day.