[eluser]sszynrae[/eluser]
With chained ->like() statements, you're intersecting your matches. Try ->or_like() on the 3 last like statements.
Also, unless im mistaken, that join will only give you at most one company and interest if it even works at all. Try ->from('companies c, interests i, user u') and
->where('c.user_id = u.id AND i.user_id = u.id') instead of the two joins