Putting aside the fact you're considering firing perfectly competent devs because they're not solving the halting problem for you, hiring is in practice a random process and what you have is probably a better outcome than most, consider what skills your team missing and look to make a 'star' team rather wishing for single points of key failure, even to the extent of going out of a pure dev role to look at BAs and architecture hires.