The reason this is happening is that both calculations are done at a row level. Notice the result of the calculations at a row level when I login (my username is jmilligan)
Login Department Username User Check Department Check jmilligan R&D jmilligan TRUE R&D ksanders R&D jmilligan FALSE NULL jsmith HR jmilligan FALSE NULL aduncan HR jmilligan FALSE NULL
The only rows of data that will be available to me are where my Username matches the login. So when you filter by the Department Check, only rows for my user will be left.
Instead, you'll either want to create a user filter based on Department, or do a join to a user table based on Username to get rows matching on department. The later option is good when connected live.
Hopefully that helps a little!
Happy New Year!