1) Keep your work computer at work to run windows and set it up as a ssh server, then use vnc type of program to remotely ssh back to your computer from home. This is probably one of the simplest way as long as your company network team allows you to do this. This is fairly easy to setup.
2) Run windows at home inside a VM machine as others have suggested. This is much more involved as option #1 since you will have to set up everything from scratch AND you have to install all programs that was needed at work. Probably not very doable.
3) If your company has a VDI environment set up, then you can actually use something like Citrix receiver to directly login to your windows computer at work, which will work better than option #1. But this option is only restricted to those company that already has VDI so probably not applicable to that many people. (The company that I work for does this and I login to windows directly in Ubuntu, works great).
4) If all 3 above options do not apply, then consider just get a laptop from work (most people already get work laptop) and setup a VPN client so you can work from work (again check with network team but most company allows this type of setup), and if you still want Linux you can always use a KVM program like Synergy so you can run windows and Ubuntu side-by-side.
PL/I -- "the fatal disease" -- belongs more to the problem set than to the solution set. -- Edsger W. Dijkstra, SIGPLAN Notices, Volume 17, Number 5