Currently Contacts can not be searched by Company except if the contact First Name/Last Name/Nickname are empty
There are two most common use cases for searching for a person using the company name.
Case 1: You want to send a message to group of people working for XYZ, filtering  by the company will allow you to multiselect them quickly one after the  other excluding whoever you do not want to include. That's a lot faster  and efficient than searching for every person with his name.
Case 2: You have a contact person working for XYZ that you only contact when  there is an issue and as issues do not occur regularly you forget his  name (or most probably his last or unique name). Searching by the  company is usually the best way to reach him because you can not  remember the name. I faced that a lot that I sometimes use the company name  as a prefix before a person first name but this is not the best way to  do it.
There are other cases but the above are the most useful.
Case 3: When you have many people sharing the same first name (which is common at least in my country), it is usually easier to search for Joe working for XYZ than searching Joe ABCDEFGHI. Specially when the unique part of the contact name is hard to spell accurately or when you do not have it.
XYZ: Example of company name
ABCDEFGHI: Example of a last name

 
                    


