@squinney,
I don't know what is going on in your setup so here's my quick take on all that could be going on.
The heuristic (as opposed to blacklist) approaches to spam filtering usually use the following signals:
1) Email content. Things like having HTML (when was the last time you wrote a personal email in HTML?), links, certain words (free, viagra, humongous dong), and all can increase the spam score (remember, the automated approaches often don't just take one signal and say if it does this it is spam, they say if it does this add x amount of points and at x level we consider it spam).
2) User complaints. Many users will just use their inbox "mark as spam" feature instead of bothering to unsubscribe, even if you run an opt-in list and respect it. Many email providers will incorporate this data into their spam filters.
3) DNS configuration. Depending on how the domain is configured (Sender Policy Framework is the term to tell the geeks to make sure is not the issue) it may specify that only certain IP addresses can send email from that domain. Sometimes companies will do this and list their mail server but neglect to list their webserver, which may send out mails like in this case.
4) Email source. You may find yourself blacklisted not because you are but because you are sending email from a host that has seen spam from others or even to a destination URL that also hosts someone else who spams.
5) Last, but not least, the way the email is sent does matter. And yes hitting a host with volume at once is one thing that may certainly make a big difference. A key component to spam is
volume, that's basically what defines it as spam as we wouldn't even have a name for this if it were just the rare targeted email.
You ask whether programmers can make the mail go out more intelligently and the answer is always a yes, given the right time and resources but it may actually be a daunting task on your platform and they modifications to make it mail more intelligently may not be in the scope of their job.
If you find you can't really work it out you may consider exporting the emails and using a separate mail solution that is more amenable to mail delivery needs.