|
It's all about what you're interested in. If that's gaming or app development, C# is a fine language. Just don't be a "language guy", my love for C# has kinda boxed me into a lot of enterprise software roles, particularly in desktop legacy and Cloud ERP. If that's what you want, more power to you. People here love to rip on Java for a myriad of reasons, the ecosystem, boring enterprise roles. Well, Microsoft Java isn't too far out of that realm, don't let LINQ and fancy lambdas seduce you into thinking otherwise. When you look at ugly old enterprise legacy code, it doesn't really matter what C-like language it's written in. I know this wasn't asked, but last to say is, companies value employers who have a really good understanding of their products internal details and infrastructure. That's something you can't learn in a book or at school. They absolutely do not care about skills in these languages beyond expected competence. It certainly doesn't hurt, but there are a million other C# programmers who know advanced programming language features. |
I'm in a similar situation. I love the language but I hate overall community and environment being all about Microsoft in most cases. It's really hard to get out too since most people will see you as the 'MS .NET guy'. There aren't that many companies that want generalists and good devs, most will look at you through the prism of being '.NET Developer' and having '.NET experience', not just 'developer' and 'experience'. It's a pain point of mine, even though I quite like .NET overall and productivity it comes with.