This is a compilation of apps that I consider fundamental while doing Android Development. I'll try to keep this list updated, if you have any suggestions feel free to comment.
Android Studio - This is a no brainer. Don't you dare to use Eclipse.
No real debugging functions, just really fast editor to edit code and other text based files such as markdowns.
Visual Studio Code - I like the simplicity and speed of VS Code.
Atom - It's really good, but still prefer VS Code over it.
Debug and testing Tools
Tools that make debugging and testing easier.
Vysor - This little app lets you remote desktop to your phone and tablet and see their screen in your computer. You can also use your computer's keyboard to input data in your device, you can even copy & paste. Finally this allows you to share the screen and control of your connected devices to your teammates over the internet. Chrome is needed to run the app. It's so worth it.
scrcpy - From the guys that make Genymotion. This is a free alternative to Vysor. It's faster in some ways and buggier in other. Not as intuitive as the first one. Did I mention it's open source?
iTerm 2 - The best terminal replacement for Mac.
Zeplin - This makes communication between designers and developers easier. You can comment on issues with the design, download assets directly from the specs. Zeplin even generates the xml styles you will need while implementing the design.
Developers not only develop. Specially when you freelance.
Jira - Long time ago I HATED Jira. But recently I've been working in projects with a lot of members. PM, Product, Designers, Testers, Back-End Engineers, Mobile Engineers, Ad-ops, etc. I recommend Jira for projects with big teams and where decisions are more bureaucratic.
Trello - Perfect for simple projects and small to medium teams.