| I think the term 'generalist' here is a bit unknown. If you're a developer working on web-based software, you are known as the web-developer guy (specialist). If you're a developer working on transactional, security, concurrency, you are known as the back-end guy (specialist). If you're a developer working on business-app, you are known as the enterprise developer (specialist). If you're working on product-based company developing virtualization, you're specializing. Developer who work at Google, while they might not used the varieties of framework out there, are specializing in Algorithms, Data Structure, Concurrency, and Large Scale development. If you're looking for work as an internal business-app developer writing JEE components, your recruiter might not want to accept Algorithm geniuses who used to work at Google. A Rails guy will look down on someone who has 7 years of Java experience whom tries to escape Java at the same time but wouldn't say something bad about his work experiences (not burning bridges). These days people shaped their mind and view pretty quick. |