I wanted to know your thoughts on what I should do at this point in my career. I've worked for the same startup for 4 years now. I am not a cofounder but I have been with the company from the start as the head of development/technology. We are a very small shop, and I don't foresee the company growing more than 10% a year from here on out. I'm also a bit unhappy with my manager's tendency to micro-manage. He is non-technical, and I feel he has little appreciation for how good of a developer I am (something like this: http://xkcd.com/664/).
I have some stock options but I doubt they will ever be worth anything as we will likely never IPO, and acquisition is possible but I don't have any reason to believe we are moving in that direction. The company is profitable.
I make ~100K, + 15%-20% bonus, but I want my base pay to be at least ~125K + bonus. I'm unhappy with the personal and career growth opportunities at this company. I have to go way out of my way to keep current with even relatively recent tech (most of the first 4 years was spent on legacy systems with 8+ year old tech, the past year was the 1st greenfield project and I knocked it out of the park with new stuff).
I'm looking around to see what the opportunities are, but I also have a performance review coming up in early Feb, so I wanted to know what I should be aiming for in case I decide to stay. What's the normal next step for a director level lead developer at a small, profitable startup after the first 4-5 years? Besides a salary increase is there anything else I should be asking for?
If the founders have a problem justifying the cost make the "hackathon" week around using any new technology but it must provide some feature/fix/optimization to the current products.
I feel like you're not totally filling the shoes of your title because what you're complaining about is the tech stack which is what you should be making the decisions for...
If you want new technologies, you, as the lead have to push the company towards it and instead of debating jumping ship you need to ask yourself, "How do I get us away from legacy code and move towards a more robust newer stack".