You can count your senior thesis as research if you choose - it's a bit of a stretch, but research nonetheless. Your lack of bench research makes top 20s a bit of a stretch. However, you've got a little research in the form of your senior thesis, and you've had to work full-time as an undergrad. That is impressive, and can cause more than a few things to be forgiven. You've got killer ECs, all things considered.