Stumbled upon Tamer Saleh’s (VP Engineering of Engine Yard) post: Jobs are temporary, teams are for life - which I found worth reading. If I were in a management/leadership position, that’s how I would see my developers - by helping them reaching their long term goals.
But company is all about bottom line right? Focusing on the individuals want seem inappropriate. Not necessarily. Paraphrasing my previous manager’s statement on our first one on one session: we (you and the company) will get the best of each other where there is big intersection between what the company wants to achieve and what you personally want to achieve careerwise.
A quote from Tamer’s post:
People move on, and the team as a whole constantly grows and evolves with those changes. This is healthy, as long as it’s strongly embraced.Embraced is the keyword, do expect people to move on, help them to go where they want to. Have strategies in place to deal with changes. Avoid over reliance on your current developers.
Do it right - know what your developers aspire to, work out how you can help them in a way that is also bring benefit the company, look after them and keep them motivated and challenged, so that they will stay long and happy. But also always have a succession plan - employees are temporary.
A manager with this insight is worth hiring and working for.