Maybe they have a quota of new undergrad from a specific school per year (If they assume that every school they go to has at least X% of candidates) or an overall quota.
"no longer hiring fresh undergraduates for the Software Engineer position" might only be for your school for this year.
Also most companies would consider "fresh undergraduates" people graduating soon or who graduated less than 12 months ago so you still have time.
In general you don't want to spam a company for the same position, it's good to wait for 8-12 months before re-applying, so if your desired position usually accept fresh new-grad, you might want to retry before [your graduation date + 12 months] but after at least ~8 months.
> Given that this self-taught dev was given an interview
He isn't a fresh undegraduate, check out his linkedin, he seem to have around 2 years of Dev experience, and 3 of freelance. So he probably didn't fall in the "new grad" track.