One of the things we found after moving the mail to Office 365 is that sometimes mail will get moved to the Junk mail folder even though the Exchange Online spam filter and Outlook configuration was modified in a way that would allow mail to arrive in the Inbox.
So what is happening?
Although we have changed the configuration in Outlook and Exchange Online, we still have a junk email rule per mailbox in Exchange. This behaviour has been present since Exchange 2010 but we are seeing this becoming an issue when mailboxes are being migrated from on-premises (where it have been disabled) to Exchange Online that have the junk email configuration enabled by default.
Therefore we need to connect to Exchange Online through powershell and use the Set-MailboxJunkEmailConfiguration cmdlet to change the settings for each mailbox.
The quick and dirty command is:
Set-MailboxJunkEmailConfiguration <user> -Enabled $false
Microsoft actually has a great writeup on the subject here: https://technet.microsoft.com/en-us/library/bb123559(v=exchg.160).aspx
It is worth mentioning that this setting can also be changed from the users web mail.