As far as I'm aware, fixtures are not completely random nor are purported to be. Have you noticed that we tend to always play Liverpool away around December/January time? There is a reason for that which escapes my mind.
The EFL work with a company that uses a fixture generation algorithm that takes into account stuff like holiday periods, stadium sharing, derby avoidance etc.