I recently found WinDock (https://www.ivanyu.ca/windock) for windows and just love it. It is scriptable so you can define how windows get tiled in any part of the monitor, and you can make each of your monitors different if you want. You can also set different profiles, which could be used say during work ours, and after work hours.