There are at least two criteria for a contact to appear:
- the contact needs to use signal
- they must not have disabled contact discovery (which I think is now disabled by default)
If you know they have signal, you can send a message request and they can accept it for you to be able to chat.