The one bad character develop decision I think they made in DS9 was Bashir's genetic engineering. For two major reasons. First, no matter how much they try to explain it by 'Pretending', no, it didn't make sense with his previous behavior. Second, I get that DS9 is the anti-Trek Trek, but it still doesn't make sense in the Starfleet universe to treat people as second class citizens and prisoners based on being genetically engineered.
Now, here's the genetically engineered kid story they should have told in DS9. Starfleet has rules against genetically engineered kids being part of Starfleet. Ok. Romulans/some other bad guy race say "Hey, we like genetically engineered people! Join us and live in luxury in exchange for your services."