Getting nodes based on what the user has in their profile
One of the possible solution can be

Create a view to show the nodes with contextual filters as
taxonomy,remember to allow multiple taxonomy terms may be separated
by '+' in the contextual filters.

Create a custom menu item in your custom module and in the page callback of which grab the taxonomy terms in the global user object
and call the above created view programmatically.

Here is a snippet showing how you can call your view programmatically
with contextual filters.
views_embed_view(&quot;your_view_name&quot;, &quot;your_view_dsiplay&quot;, $taxonomy_terms_+_separated)



See the following screenshots.
In my test installation, I created the following taxonomy terms:  test1,test2,test3,and test4. I created 4 nodes too, each of them using one of those taxonomy terms (node1 =&gt; test1, node2 =&gt; test2, etc.).
The following is the screenshot of a view page showing the nodes using the taxonomy IDs passed as contextual filters.



These are the screenshots of the view configuration for those for contextual filters.