Chris the ticketed support recently moved to a new system at http://helpdesk.totaralms.com, I've asked for your account to be checked to make sure you have access, so you may receive an invitation email to set up your account on the new system shortly.
Have you checked in config.php or in mdl_config that you haven't disabled messaging? Check for any of these:
$CFG->messaging=0;
$CFG->noemailever=true;
$CFG->divertallemailsto='a@b.com';
Also check Site Admin->Advanced Features that messaging is turned on "Enable messaging system"
Records of Program messages sent are stored in mdl_prog_messagelog. Program messages are also an instance of totara_message alerts so will also have records in mdl_message and mdl_message_metatdata. If the messages are sent then there will be records in those tables and the problem is likely to be with your email server.
If the records do not exist then something else is going on and maybe your programmer could add some debugging/logging in places like totara/message/messagelib.php function tm_alert_send() and totara/program/program_message.class.php send_message() to see where the point of failure is. Also note a lot of the Program cron functions only run once daily - to change this temporarily look at totara/program/cron.php functions program_hourly_cron() and program_daily_cron() and change the lines
$hourlycron = 60 * 60; // one hour
$dailycron = 60 * 60 * 24; // one day
to
$hourlycron = 0;
$dailycron = 0;
while testing so the Program cron functions will run on every cron run - note this may have serious performance consequences on a production server as the program cron functions are very database-intensive