Here's my situation. I work as a web developer at a fairly large tourism company. Our dev department is really small though, there's me, one colleague who's on the same level as myself, and another frontend developer (who's also expected to test work that we do and write manuals) and my boss (he's one of the directors of the company and he also does development).
Because our department is so small there's pretty much nothing in terms of protocol. So when it comes to developing new stuff there's no specs or anything, we're just told more or less what the thing we're developing has to do and then when it comes to specifics we have to ask our boss what he wants and he'll then figure it out on the spot and tell us. There's also no protocol around testing, and there's also no deadlines, we just carry on until we feel it's good and then after the frontend dev tests it and confirms that it's good we make it live.
Now to the problem at hand: The three of us (myself, the other developer and the frontend dev) feel that our boss is too ambiguous when communicating to us what to do and when we end up not doing something we get in trouble because, to quote our boss,
"I can't think of everything and you should've known [what the right thing to do was]"
as if it's common sense.So my question is how can I approach him about this? What I want to tell him is that he needs to work on his communication because several of the problems that arise is his own fault. I don't want to insult him though and I don't want to just hint at it (which I've done in the past) because that doesn't get the message through.
We don't hate him and generally he is really nice and approachable. He's a really good mentor when it comes to development and technology and we're "friends" outside of work, i.e. we game together online and sometimes go for dinners and do other social things.