I've been a Mac user my entire life, and in that respect, it's a bit surprising that the tools most essential to my ‘productivity’ are in the terminal.
The core tools in my workflow are tmux and vim. Dr. Bunsen wrote about this sort of setup, The Text Triumvirate, of vim, tmux and ZSH (I use that too).
Tmux lets you take a single terminal window and multiplex it. You can have many sessions that you can switch between at-will. Each session can have multiple windows (full screens of stuff that, again, you can switch between at will). Then each window can be split into multiple panes (a pane contains a terminal shell). So with tmux, a single window of Terminal.app can give you access to literally hundreds of shells. I tend to run a single iTerm window full screen on my laptop that I work in all day.
Tmux is also great for working remotely with ssh; a single ssh session becomes a portal into many shells, and this workspace becomes persistent even if the ssh connection drops.
Vim pairs extremely well with tmux because it is at home in the terminal, and thus can be organized with tmux. In my science tmux sessions I usually reserve the first pane for shells to run git, and test the code with ipython. Then additional tmux windows are full-screen vim sessions dedicated to each python package I'm editing (my science pipelines are often split across many python packages). For writing tasks I often use MacVim so I can bump the font size and leading and use a nicer writing font like Nitti Light.
The thing about these tools is that they probably won't immediately click for anyone, or seem efficient. Vim is a particular example. I think I spend the first 6-12 months of my Vim life looking like a complete amateur. Just •navigating* around the screen seemed to require Jedi skills.
My recommendation for anyone wanting to adopting terminal tools like vim, tmux and zsh is to learn just one thing at a time, and be extremely impatient. If everyday you pick up a new skill, from splitting windows to some variant of search-and-replace, you'll have a chance to internalize the commands as if it were a natural language. Indeed, Steve Losh said that Vim is a grammar of text physics. Once you learn the grammar, you can put together sentences of text edits, and at that point you'll realize that all the study was worth it.
Two books I do heartily recommend are
Practical Vim by Drew Neil
tmux: Productive Mouse-Free Development by Brian P. Hogan