Logging in as the DNN host account or admin, I'm welcomed by what appears to be the contractor welcome screen, which it first seems odd until I start scrolling down where I also see the employee welcome screen and the public facing welcome screen. So, all three sections built using the DNN and HTML module are all on the same homepage. However, all I had to do was modify the permissions of the contractor module to only be visible to the role contractors, then modify the public module to be visible to the public, but blocked to registered users, which means all logged in users. What this accomplished is that as soon as the contractor logs in, the public facing module disappears and the contractor welcome message appeared. Then I repeated this for the employee module, only assigning visibility to the employee role.
Then for the whole pages, you set the permissions at the page level instead of the module level, and the contractor page shows up for contractors and all the employee pages only show up for employees.
So, in summary, we installed an off-the-shelf DNN instance, added two additional HTML modules on the homepage, assigning visibility to the public contractors and employees to each module, customizing the login welcome experience, create a number of pages on the site, assigning page visibility to each role. Basically, giving us a single website that is a public facing marketing portal, which changes to a contractor portal when a contractor logs in, as well as our company or employee portal, when an employee logs in.