1) Not preparing myself by reading on data structures and algorithms. Just relying on my solid experience to carry me.
2) Spending couple of hours evening before interview to quickly go through data structures (array, linked list, hashmap, stack, queue, binary trees), algorithms (searching binary search trees, merge sort etc) and writing quick implementations of couple of most common algorithms you get asked about during interviews (just to have fresh "muscle" memory to be able to quickly write an implementation on the whiteboard with confidence).
Approach 1) did not really work well for me. After I switched to 2) the interviews got much better for me and offers started coming.
So I'd suggest even if you are very experienced and have a decade of experience, don't rely on that being enough. Spend a day before interview refreshing your memory on computer science fundamentals, try to memorize Big O cheat sheet. And you will be much more likely to get offer.
I go from re-reading Skiena's Algorithm Design Manual (I prefer his writing style over more formal textbooks like CLRS or Sedgewick's) to a more easy to digest piece when I'm really not in the mood for formality (last one was this week with "A Common-Sense Guide to Data Structures and Algorithms").
It helps me to refresh it with different styles of writing as I can go from a very broad overview to the details if/when I want but I always have the basics in my head.
I hope I won't go for another interview soon though, it's really tiring, I have 12 years of experience now and I still dread just thinking about going through the process again.
How do you interview these people?
I agree, algo interviews are annoying and I wish it wasn't there. If it wasn't it would make switching jobs a lot faster. But thats what it is. The suggested alternative of portfolio work has it's own problems, the same with homework problems.
Unfortunately, even places that have you write code with the internet still have an algo inteview or two.
I am not a fierce critic of BigCo. interviewing practises but it seems a little disappointing that coding side-projects, contributing to open source, and writing mean so little in getting hired.
[1]: https://medium.com/we-are-yammer/how-i-negotiated-for-an-add...