But is it that complex? Airplanes arrive in your sector, you write the number and destination on a slip of paper, and put it on your board. You tell the plane, if needed, where to fly, and then you tell it to talk to the next sector controller when it leaves your area.
It seems rather non-complex, and I think it has to be, so it can be robust and offer room for errors etc.
A lot of the complexity is the sheer volume of air traffic. Not so much at cruise, but as planes transit through populated areas. ATC over NorCal is a mess of overlapping zones, ~dozen airports, and hundreds of airplanes at any given time of day. NYC metro is similar.
Everything is simple at the highest levels of abstraction.
It is the details of actually making it work that raise the complexity levels and/or kill you if you don't get them right.
Remember: a decision that in the abstract with infinite thinking time is easy can be extremely stressful when it has to be made in seconds in real time and getting it slightly wrong will potentially cause a catastrophe. And ATC has to keep doing this throughout their entire work shift.
It seems rather non-complex, and I think it has to be, so it can be robust and offer room for errors etc.