|
Job Description:
|
Application Architect
POSITION SUMMARY The Application Architect designs enterprise and business line specific solutions and works in a highly process oriented yet swift and rapidly evolving environment. The Application Architect works with other team members from the beginning of the product cycle through its release and designs and implements sophisticated solutions using leading edge technologies. The Application Architect is a member of Application Development and Management division in the Information Technology department.
ESSENTIAL DUTIES AND RESPONSIBILITIES -Design, develop and implement software solutions. -Define system architecture, including architectural patterns, key mechanisms and modeling conventions. -Prioritize use cases based on architectural significance. -Create prototypes and perform technology evaluations. -Lead complex projects of major significance. . -Analyze and define interfaces, design classes and design subsystems. -Design components and subsystems. -Build and test solutions. -Develop technical specifications. -Act as a technical lead in the software development process. -Work closely with senior members of Applications Development Team, Enterprise Data Architect and other project participants in defining solutions. -Plan and conduct formal reviews of design models. -Create and develop design and programming guidelines and standards. -Ensure the quality of source code, conduct code reviews and provide feedback. -Create and manage software architecture documents. -Create or lead in creation of other technical documents as related to projects and initiatives. -Review and recommend products from multiple vendors as necessary. -Provide mentoring and technical guidance to the members of the Application Development team. -Participate in process and procedure definition and enforcement. -Participate in team building and resource planning. -Collaborate on project and tasks breakdown, planning and prioritization. -Coordinate activities with and provide feedback to management. -Ensure technical issues, design changes and scope changes are raised to the development manager. -Adhere to the highest degree of professional standards and strict confidentiality in matters that require discretion. -Attend professional development and training sessions on a regular basis. -Perform other job-related duties as required.
QUALIFICATIONS AND REQUIREMENTS -Bachelor’s degree in Computer Science, MIS, or related field required. Master’s degree in Computer Science or Computer Engineering preferred. -Active .NET MCSD or an equivalent preferred. -7+ years of software development experience in medium to large size corporate environments with increasing levels of responsibility and complexity of projects and applications. -5+ years of solid C# and ASP.NET experience and designing and developing with SQL Server 2000. -3+ years of .NET 2.0 Framework experience -Extensive programming experience with C#, ASP.NET, XML, XSL, AJAX, HTML, Java Script. -Extensive experience with Visual Studio Team System 2005. -Experience with SQL Server 2005. -Experience with .Net Framework 3.0 and 3.5, Team Foundation Server ( VSTS 2005 ), and Microsoft Office and Microsoft Office System 2007 preferred. -Experience with Visual Studio 2008 ( Orcas ), Windows Forms and Rich Clients a plus. -Practical experience with multiple development methodologies with emphasis on architecture modeling, metrics, unit testing and test-driven development preferred. -Full project life-cycle experience encompassing analysis, design, coding and implementation of large scale OO systems. -Solid large-project experience, having worked on projects whose duration was over a year and that encompassed the entire system life cycle. -Hands-on experience as a developer and lead designer/architect on large scale systems. -Extensive OOA, OOD and OOP experience. -Thorough understanding of systems development methodology best practices. -Collaborative approach to design issues, leadership and problem solving. -Excellent written and verbal communication skills, and customer facing skills. -Ability to prioritize, manage and execute on multiple tasks simultaneously. -Ability to quickly grasp on business problems and offer solutions proactively. -Strong business and requirements analysis skills. -Ability to mentor and direct more junior members of the team. -Strong training and presentation skills. -Strong attention to detail. -Ability to integrate procedural steps and processes with technical requirements and system functions to assure successful delivery of work. |