Proficiency with Microsoft .NET technologies. Knowledge of estimation techniques. Proficiency in writing clean, readable, and easily maintainable code. Good knowledge of object-oriented programming, design patterns & principles. Industry trends awareness. Knowledge of unit testing methodologies and frameworks. Excellent written and communication skills. Excellent time management skills. Good ability to anticipate issues and formulate remedial actions. Sound interpersonal and team working skills. Sound ability to take on multiple assignments. Good problem solving skills.