There are a number of things that a 'developer' could do to avoid bulk account creation in this manner - but it will depend on the appetite / budget for a client.
For example, a number of commercial WAFs are likely to spot the patterns in the end and start blocking these - even when they are coming from differing IPs. The WAF, if it uses cloud based learning / definitions, may have already seen issues from those IPs for other sites that it is being used to protect.
If you're just looking for a purely 'programmed' solution - then many have attempted to develop their own versions of CAPTCHA (sometimes you see things as simple as answer the question of 5+3 = X in a form field), but the reality is that it is going to take a lot of time / effort / expense to develop anything robust enough.
Why does the client in this case not want to use CAPTCHA?