I am writing a formula that will execute a workflow action to change an ownership of an opportunity to the database. However, if the user making the change on the opportunity is one of three profiles and attempting to change the owner, I don't want to execute this action as it would switch back to database every time, so I am setting the formula explicitly to evaluate to false in this instance. I'm not very experienced in writing formulas and am getting the error in the title when I check my syntax. I matched up all of the parentheses in a code editor so I think I may be doing something else wrong. Here is my formula.
IF( $Profile.Name = 'Sales Manager' || $Profile.Name = 'Sales Operations || $Profile.Name = 'System Administrator' && ISCHANGED(OwnerId) ), false, ( ( CONTAINS(Account.Owner.UserRole.Name, 'Direct') ) && ( Stage_Duration__c > 60 ) && ( StageName = 'New Opportunity' ) && ( StageName <> 'Launched' ) && ( StageName = 'Post Launched' ) && ( StageName <> 'Lost' ) )