I'd recommend using the conversion engine that ships with LibreOffice - unlike OpenOffice you can push through multi-threaded conversions. It supports both the main flavours of Word docs (i.e. .doc and .docx) with pretty good fidelity and is under active development.
Working out the right incantation to use from the command line can be tricky, so to make life easier you can use unoconv which acts as a wrapper and does (some) of the heavy lifting for you. It needs some hand holding from time to time, so is not completely unattended.
Alternatively if you want an even easier life you could use a commercial grade API such as https://developers.zamzar.com. This service has been around for 10+ years, provides an API for file conversion from any language (PHP, Python, Ruby, Java, .NET etc) and has bells and whistles to allow you to import and export files to and from Amazon S3, FTP servers etc.
Full disclosure: I'm the lead developer for the Zamzar API.