> C# projects tend to have a level of abstractions
Such as? I think it really depends on the kind of company you are at (big enterprise, medium size, small company) and the field (web agency, startup, tech company, non-tech company, conglomerate etc). You can have abstractions in Java too.
If you read the test of the sentence you cut off, I specifically mentioned "Enterprise" development. I'm not a fan of most Java shops either.
It's not that you cannot use C# in a relatively light handed way, it's not that it often isn't.
Probably the most painful example in practice was The Enterprise Library Data Access Application Block... Which at the time was all the more painful in early VS were go to definition took you to an interface and never the implementation. There was always a single implementation and never any tests so it was layers of misdirection for absolutely no benefit whatsoever in practice.
I like C#... I don't like a lot of places that use C#. In particular large companies and banking in my experience.
Such as? I think it really depends on the kind of company you are at (big enterprise, medium size, small company) and the field (web agency, startup, tech company, non-tech company, conglomerate etc). You can have abstractions in Java too.