You sound like me. These days I’m C and Tcl w [ex]ctags and cscope in nvi (in-tree default, but vim available in pkgsrc/pkg), using dtrace, gdb, fossil/git, etc, etc, in tmux, either in the terminal or an xterm managed by dwm. Firefox and Rust (a dependency!) are available. I used to build them from scratch but recently Rust has turned into a real bear to build... like building Linux from Ye Olden Days where you set aside a few days and hoped... but I digress - [X|GNU]emacs are there for you too.
If OpenBSD seems attractive to you, jump in :)
Give it a fair few weeks and evaluate. They’ve got some neat architecture features to play with (e.g. unveil(2), pledge(2)[0]) to exercise your software design/implementation. NetBSD and FreeBSD have dtrace[1] (NetBSD impl. is incomplete but still interesting and useful) and virtualization like bhyve[2] and nvmm[3]. Jump in!
[0] https://news.ycombinator.com/item?id=17277067
[1] https://en.wikipedia.org/wiki/DTrace
[2] https://wiki.freebsd.org/bhyve
[3] https://www.phoronix.com/scan.php?page=news_item&px=NVMM-Net...
Good luck!
The issues show up because I'm a hyperpolyglot when it comes to programming languages. So for instance I'm thinking about trying J (which I've messed with in the past) and Idris. As you can probably guess, having a common OS is nice for this.