I am working in a small software company, which has grown from 4 to just over 50 employees (1 to 12 developers respectively) in the last 4 years with me being the lead developer/manager of the development team.
No developer has quit so far and during the last round of feedback interviews everyone emphasized that they like the environment, colleagues and their current tasks at hand. However, for the first time, a few people mentioned that they started to think about how to expand their horizon (beyond the component/team they are currently working on) or develop additional skill sets (in addition to "plain" programming), e.g., to look into technical pre-sales activities.
These issues were all raised by developers who have been with the company the longest and had seen the wild early days. Since then we've established processes to improve stability and quality which seem to work okay and a certain part of the daily work load has shifted from "new and exciting" to "routine and maintenance", so I can understand that they are looking for additional challenges.
I've read several questions on SO from developers concerning steps to improve their career, but I am now faced with the other side: What kind of career path can I offer a developer in a small company like ours?
Obviously, those people provide a lot of our specific domain knowledge and are very valuable to the team, so I want to make sure I can keep them happy. Given that business constraints and tight resources in a small company don't allow for a lot of extra projects on the side, any suggestions on what kind of options I can offer them?