Firstly, I assume you're not using SCCM in your environment.
Basically, you want an "unattended" installation which includes the domain join as part of the process using Sysprep. This is a very nice walkthrough of how to do it using System Image Manager (SIM): https://win10.guru/windows-10-unattended-install-media-part-1-basics/.
This article reviews other options for device management in AD (for Windows 10) - I'm not familiar with these in a hybrid O365 environment, but they're worth investigating for Windows 10 if the scenario fits: https://docs.microsoft.com/en-us/windows/client-management/manage-windows-10-in-your-organization-modern-management.
There are other deployment tools that can be used from Microsoft - here is the reference for deployment in general: https://docs.microsoft.com/en-us/windows-hardware/customize/. This is a very technical reference, so it's got plenty of information but not necessarily easily accessible for beginners. Naturally other vendors provide deployment tools, some more intuitive than others.
Going back to basics, if you're going to do a build manually, join it to AD yourself. You should do some research about what is required for your "per-user" apps, because there should be workarounds for all of them unless they're very basic consumer rather than enterprise apps. If they are Microsoft Store apps, there are multiple ways to distribute to users: https://docs.microsoft.com/en-us/microsoft-store/distribute-apps-to-your-employees-microsoft-store-for-business.
Lastly, I highly recommend doing some training on Windows deployment (as well as Microsoft certifications, Lynda.com and similar training providers have more "user friendly" offerings). Or work for a large organisation where you can learn on the job with guidance.