While you are absolutely correct, you will find no shortage of experienced employees at large companies that will disagree. In fact, they will insist that the only purpose of volatile is a primitive for synchronization. I actually had a conversation where a developer insisted that by declaring a variable volatile all operations on it were atomic.
Of course at this same company a developer insisted that if you use the mongoDB client libraries in your software, your software can never have data consistency problems.
Of course at this same company a developer insisted that if you use the mongoDB client libraries in your software, your software can never have data consistency problems.