VB vs. C# @ Microsoft
I've been a programmer for 5 years now, and here is a list of technologies I've used in my on-the-job capacity:
- OOP: C, C++, C#, VB .NET
- Pseudo-OOP languages: VBA, VB5, VB6
- Web Technologies: ASP, ASP .NET
- Client-side scripting: javascript, vb script
- Client-side rendering: HTML, DHTML, css
- Databases: SQL Server, Access
- Reporting tools: SQL Server Reporting Services, ActiveReports
- Installers: Wise, InstallShield
- XML
Additionally, I've build custom server controls for ASP .NET, developed and deployed software for Pocket PC 2003, used SQL Server Merge Replication. Furthermore, I've been responsible for defining, implementing, and maintaining software development processes such as source-control.
I mention all of this because I want to make it clear that I have experience with a wide range of technologies and my preferences are based on experience and taste rather than lack of experience.
I prefer VB .NET to C#. I know that at root they're basically the same--that most of the differences are merely stylistic. I just like the slightly more verbose aspect of VB.
I've noticed however, that Microsoft, in their job postings, mention "x years of experience in C#" but not VB .NET. Is this deliberate? At Microsoft, are the C# and VB .NET experience substitutable? Are VB .NET developers not wanted as Microsoft? I don't mind coding in C# if that's the issue--what I'm getting at is this: does MS have a preference for C# over VB .NET in terms of the background experience that they're looking for in potential employees? If so, why?
One of my dreams is to work for MS in Redmond. Am I painting myself out of that dream because I code mainly in VB .NET?