I have an HSBC account. The checks on said account have a routing number of 021001088. From what I found, this number has a location of Buffalo, Ny. That is a little weird since I live in NYC and the branch where I opened the account is in NYC. Is this normal?
This is normal. The routing numbers were used once long time ago to actually physically route the checks to your branch (or the main area branch). Then, the correct routing number was necessary for the check to physically reach you (the checks were eventually mailed back to the customers).
Now, it is all done electronically, and there's no need in area-bound routing numbers any more.