Because we’re hiring good candidates at various experience ranges.
If someone shows up with the most impressive resume and portfolio I’ve ever seen, I don’t want to lose them simply because our job description doesn’t have a salary high enough to convince them to join.
Likewise, if a college grad shows up with a potentially impressive but short resume then we might want to take a chance on them, but not if we’re forced to pay them senior engineer money because that’s what we put in the ad. If I have to pay senior engineer money, I’m going to wait until a senior engineer applies.