I am working for a small but good software company with solid products in the US. I really like what we do here and my specialized education in one form of computer science is a very good fit for the company.
However, I was initially hired to work in a specific team inside the company and for about 4-5 years I've been stuck in the same team (since I joined) because the manager there doesn't want me to join any other team. He is keeping me as a special talent in the team to do specialized research etc -- but I get hardly any productive work to do.
Most of the time I have to invent things to work on. Also, I have to join a daily standup in the company and report what I did the previous day. I get very uncomfortable talking about my work because the work is most of the time something that is irrelevant or doesn't really fit in anywhere.
Meanwhile, because I don't get to work on real production code actively much of the time, my skill level has deteriorated and I am now finding it hard to move to a different company without making a serious time commitment to improving my skills first.
I am currently 34 and had to stay with the current company this long because they processed my green card.
I'm looking for suggestions on how to move on from this situation, possibly to another company.