What I look for in a job is autonomy, great co-workers and interesting work. The moment any of these decline, I leave. Why should I stick on to a dead end job because someday some fellow like the author might not like my cv?
Do what makes sense to you at each decision point. If you are any good technically you will never have a shortage of job offers. If you are really good you'll be drowning in them.
His article on the role of a CTO vs. VP of Engineering mentioned having an opinion on Ruby on Rails and familiarity with Hibernate as examples of description of a CTO. Compare this with a real technology company e.g., where the _CEO_ -- a "business guy" -- wrote lex as a his Thesis project.
I believe you've been in his world (enterprise software and consulting), so it's fairly clear to you that he neither needs -- nor is able to attract -- very strong technical people. That's fine: if you're building business software, hire people who are competent in writing software and who have understanding of business, but it does put perspective on the situation. He does not "get" what actual engineers (vs. business software developers) aim for a career: doing interesting work, continuously learning (thus becoming more valuable to present and future employers) rather than receiving a high salary and working for a successful company. That's why Calacanis didn't get why Evan left to join Yahoo (oh no, they're not cool according Techcrunch!), that people could be happy when they're doing interesting work even if their workplace is no longer considered hip and sexy.
Low compensation or feeling of an employer being a sinking ship will eventually get engineers to consider switching jobs (especially if they have a life goal that requires the additional money e.g., buying a house; this is especially true of those who started as "college hires" at companies with formulaic salary ranges and didn't think to negotiate), but it's never just about the money.