Thank you for your response.
I think it could be a re-posh issue. I tried your code and it works fine. But when I run the same query using re-posh it acts very strange.
Your example returns: #{[1 "john" [2 "bill the admin]}
This workaround however seems to be doing it:
(re-posh/reg-query-sub
::user-admin
'[:find ?e ?name
:where
[?e :employee/admin? ?is-admin?]
[(= ?is-admin? false)]
[?e :employee/name ?name]])