'I work in a school' means physically in the school building.
'I work at a school' can mean that you work in the school, as a teacher, for example, or that you are responsible for the school grounds and you are outside not in the building.
Sorry, but I don't get it.
Does this mean that if you are, for example, a teacher, and you are in the school, you say "I work in a school", but if you are not in the school you say "I work at a school"?
The trouble I am having in explaining this is that, loosely speaking, both are said. I am looking for a "rule" to make this easy -- and I can't find one.
The best that I can come up with is: use 'in' for a specific department/area and 'at' for the general place.
Ex. She works in the German department at Village High School.
Joe is a custodian at Village High School. He works in the school in the Electrical Division/Department.
Mike is also a custodian at Village High School. He works outside and his job is to keep the grounds clean.
I am afraid I didn't explain this very well. Wait for more responses...
• You work in a city or area: He works in Manhattan.
• You work in a type of place such as a bank, shop, or factory: She works in a library.
• You work at a particular place or organization: She works at the Library of Congress.
• You work for a person, company, or organization that employs you: He works for his father.
We both work for the same company.
• You work in an industry or a type of job, for example education, advertising, or IT: He works in advertising.
• You work as a waiter, cashier, accountant etc: She works as a cook. ✗Don’t say: She works as cook.
• You work on a project or task: Several people worked on the report.