I absolutely agree, I re-read my post and meant to say the person should'nt be fired.Firing people for making mistakes is how you have a constant churn of new people making the same mistakes the old ones did.
Humans are wired to make mistakes. If you give an employee the task of copy and pasting names into the BCC field when the CC field is right next to it, there's always a chance that someone will accidentally put it in the wrong field. It's a repetitive task where a mistake is easy to be made.
The correct thing to do is figure out a mechanism to fix this process, such as moving to mailing list software that manages the list for you. Now you can't accidentally CC people on the list instead of BCC, you send a single email instead of multiple (unless you are testing multiple variations to test conversion rate), people can properly unsubscribe, etc.
Any time someone makes a mistake, your questions should be on the how and why of it, and very rarely on the person themselves. Sometimes, yeah, it is gross negligence, but most of the time, removing the person doesn't remove the problem, only forces you to spend time/money finding a replacement.
I have a fairly large number of people that report to me or report to managers that report to me and I have never, and will never will, terminate someone because of a mistake. Well actually, the sales guy that got drunk and wrecked his company car, yes, I terminated him.