You will also find plenty of posts on the process of picking a right controller.
Which starts with determining your (current, future or desired) workflow. That leads to a choice for software. Then you should set a budget (it is just too easy to go overboard looking at all the gear and end up with a too-expensive controller you don’t need and not enough money left over for all the other bits and pieces you DO need). Then you go find controllers that fit your software, your workflow and your budget. Some hands on time will help and you pick what works best for you.
As for using NI gear with other software. It won’t work with Serato (not certified), not sure if VDJ has mapping support for it. I do know NI does things a little differently, so not sure. Personally I would not take the chance.