"First, I'd rather have someone my own grade tell me my uniform has something amiss, rather than a superior, or even worse, getting told I'm hosed up by an enlisted Marine."
As would I. But if you notice, he called him "Ensign" and not by his name, or "excuse me", or "hey". An O-1 is an O-1, I don't care who is better at shooting the grenade launcher or whether Marine officers get an "attention on deck" years before their Navy paygrade counterparts. For anyone who's seen "Zulu", it's like the officer of engineers and the infantry officer arguing about date of rank...except it's in a hallway, it doesn't make a shred of difference, and there aren't any Zulus. We Ensigns make a lot of assumptions about Second Lieutenants and sometimes we don't capitalize "sailors," whether referring to ourselves or our subordinates. But if the guy with his button undone was a jiujutsu instructor, five-time All Navy rifle shot, and had been in combat on a shore party, would the Marine dude staring at his ass still have made the same assumption? Nine times out of ten, yes. So don't call someone by their rank unless one of you is a "sir."