Living in a part of the US that skews VERY heavily towards one party, I especially vote in primary elections, which are where it's actually determined which congresscritter or senator we'll be sending to Washington or the state capital. And yes, I will absolutely vote my heart rather than strategically in a primary. "Electable" too often isn't.
And I make sure to vote in off-year state and local elections too because those actually have more impact on my daily quality of life in the short-term than national ones do. (Whereas national elections have more impact on the long-term direction of the country, especially when there are Supreme Court vacancies likely).
My state allows a candidate to run for office on multiple parties' slates, and will aggregate those votes for the candidate. I dislike one party much more than the other, but there are third-parties far closer to my actual positions. I'll often vote for a major-party candidate on a third-party slate, which both helps ensure that the third party remains on the ballot for the next election cycle and hopefully helps send a message to the major party in question.
(Edited for typos.)
This is exactly the case in NYC, which is heavily Democratic: the winner of the Democratic primary is the most likely winner of the general election (where they sometimes even run unopposed). In the recent primary in my district, the vote for City Council member was won by a margin of a few hundred votes, since the voter turnouts for primaries are pretty sparse compared with the general election. One person's vote really makes a difference in this situation.
Voting has a bit of a free-rider problem. To a first approximation, one vote never makes a difference; but an attitude that voting doesn't make a difference (especially when unevenly distributed) definitely makes a difference.