What is C# used for, and what are the responsibilities of freelance C# developers?