Soju was never designed to be drunk on its own. In Korea the food is not an accompaniment to the drinking — the drinking is an accompaniment to the food. Get the pairing right and the whole thing makes sense.
Korean BBQ — classic soju
Grilled pork belly or short rib with a cold green bottle is the pairing everything else is measured against. The soju cuts the fat and resets your palate between bites. Do not use flavoured soju here; the sweetness fights the meat.
Korean fried chicken — fruit soju
Beer is the traditional match, but beer gets heavy fast against batter. Green grape or peach soju stays lighter through the whole basket.
Stews — classic soju
Kimchi jjigae, budae jjigae, sundubu. Hot, sour, deeply savoury food against a cold clean spirit is the entire point. This is the pairing most Koreans would name first.
Seafood — classic or craft soju
Raw fish, grilled mackerel, steamed clams. Choose a clean classic bottle or a rice-based craft soju; anything sweet will bury the fish.
Fried and salty snacks — anything
Jeon (savoury pancakes), tteokbokki, fried squid. This is where somaek belongs.
The rule underneath all of it
Classic soju goes with salt, fat and heat. Fruit soju goes with fried, spicy and sweet. When in doubt, order the classic bottle and one fruit bottle for the table and let people choose.