Senior .Net Developer position available with Deloitte Touche Tohmatsu Services, Inc. in Princeton, NJ. Responsible for design and implementation of various application components, using Microsoft .Net, Microsoft Office and SQL Server, and evaluating new technologies as needed. Create design artifacts of software development, including activity diagrams, use-case diagrams, component-model diagrams, sequence diagrams using Microsoft Visio and Unified Modeling Language (UML). Work closely with other members of team, including business analysts, team leads, quality assurance, infrastructure and project management to conduct knowledge transfer sessions across different teams and requirement gathering sessions to demonstrate technical aspects of business solutions. Create optimal designs to meet project objectives. Implement and design business solutions of software development using - object oriented programming, Microsoft SQL, and Microsoft .NET, including custom generic classes, ADO.NET, custom attributes, distributed transaction management, multi-threading, serialization, File I/0, LINQ, Lambda expressions, anonymous types, delegates, extension methods, and .NET Managed and Unmanaged Memory Profiling and Management, WCF and .NET Remoting. Develop applications using C #, Winforms, C#, ADO.NET, SQL Server, including stored procedures, TSQL and schema design, and Object-oriented analysis and design. Implement design principles of software development and user-interface design, including patterns of Abstract Factory, Factory, Singleton, Chain of responsibility, Adaptor, Facade, Microsoft Foundation Classes, Model-View-Controller and Model-View-Presenter design patterns using computer algorithms of sort, search, memory, and performance. Implement Agile and Water-fall methodology of software development, including development lifecycle of requirement analysis, application design, implementation and testing in form of multiple iterations and contribute towards improvement in software development processes, build, deployment, software internationalization, and customization of packaged products. Implement inter-process communication and enhancing application performance using Microsoft C# .NET, OLE manage compound documents and remote procedure calls. Integrate .NET applications with Microsoft office using Visual Studio Team Foundation Server and Visual Studio tools for Office version 3.5 and 4.0. Create, update, and analyze Microsoft Word and Excel documents using Open XML, providing additional features into Microsoft Word and Excel using Object Linking and Embedding automation and MFC ActiveX controls, providing interprocess communication for Component object models of Microsoft Word and Excel. Transfer different types of objects and securing data across wires and across application domain boundaries utilizing .NET serialization, .NET marshalling, XML web services, Transmission Control Protocol (TCP), Hypertext Transfer Protocol (HTTP) and .NET remoting concepts.Position requires a Bachelor's degree or foreign equivalent in Engineering (any), Computer Science, MIS, CIS or a related field plus three years of experience in the job offered or as a Programmer Analyst, Associate Technology, Assistant Systems Engineer or a related position. Must have three years of experience with: Creating design artifacts of software development, including activity diagrams, use-case diagrams, component-model diagrams, sequence diagrams using Microsoft Visio and Unified Modeling Language (UML); Implementing and designing business solutions of software development using - object oriented programming, Microsoft SQL, and Microsoft .NET, including custom generic classes, ADO.NET, custom attributes, distributed transaction management, multi-threading, serialization, File I/0, LINQ, Lambda expressions, anonymous types, delegates, extension methods, and .NET Managed and Unmanaged Memory Profiling and Management, WCF and .NET Remoting; Implementing design prin