As an "Insubordinate Employee" in the past, I would like to highlight the time and place to talk to an employee. Never criticize in front of their peers or the people they have direction over. It is ok to provide constructive criticizim to anyone, however it needs to be the correct time and place. Accept their opinion and realize when they are right, or at least aknowledge their idea. Do not come into a meeting with the feeling that you are the only correct person in the room, it never works out well.