I was split between using Emacs and Vim for last 2 years (I used Vim for last 6, and learned Emacs 2 years ago). But what made Vim my main editor is fzf and ag, and smooth workflow that I had in terminal. But I have to say, ivy and counsel made my Emacs experience much, much nicer. But I guess that I got too deep into Vim already that I kinda got used to it so much, that I appreciated more that "terminal" workflow.
A friend of mine is an avid Spacemacs user (which, as far as I understand, is a Vim distribution running on Emacs or something like that). He has both a Vim and an Emacs sticker on his notebook next to each other, and they've been carefully applied so that they overlap each other both ways.
I had tried spacemacs for a few months, it was nice overall, but everything seemed to be a little bit slower there than in vim, so I eventually switched back to vim.
I picked vim in the end because I already got really used to the workflow I previously mentioned.
But there are many nice things from Emacs that I really miss. For example magit, various REPL integrations and much better support for functional programming languages. Emacs felt cool and nerdy but I always felt like I was using 1% of it. Many things on the other hand felt much more clunky than I expected (terminals for example). And I don't like all in one philosophy of people reading emails, reading reddit, chatting on IRC all through emacs. I tried many of those things but didn't find it appealing at all.
But if I had to do some serious work in one of the functional languages I can see myself coming back to Emacs pretty easily.
I'm a vigorous vim user, and always want to incorporate emacs into my workflow or try to utilize its strength. So far, I just failed several times and the affection to vim grows stronger.
I tried helm, but it induced slight lag, bigger loading times, and I didn't like that. I had big ass emacs configuration, it felt heavy and sluggish. That was the moment where I declared bankruptcy and started from beginning where I created 250 LOC config, with no big plugins like helm.