Full Job Description
Catapult Consultants is seeking a Senior Software Engineer to support the engineering, analysis, design, development, programming, and maintenance of custom software programs according to the business specifications of each program. This software engineering position focuses on software development and goes beyond programming to include such things as eliciting customers' requirements, and designing and testing software solutions. The Senior Software Engineer is required to assess our business user's needs and develop usable software that meets those needs.
Specific Tasks Include:
• Engineering web-based, multi-tier business applications utilizing ASP.Net 4.0, C#, VB.NET, Silverlight, AJAX, Entity Framework, jQuery API, MVC, and JavaScript languages.
• Developing software applications using relational databases, in particular Microsoft SQL Server and SSRS.
• Assisting in the documentation of business requirements from user workshops and software design meetings.
• Assisting with application testing to create the appropriate application work products (programming, documentation, test plans).
• Analyzing and documenting user needs and software requirements to determine feasibility of design and translating these requirements into a set of specifications.
• Developing, maintaining and implementing new business applications, modules and features using scientific analysis and mathematical models to predict and measure outcome and system performance.
• Modifying and enhancing new and existing business applications to improve functionality and performance.
• Supporting code reviews and ensuring that specifications are met.
• Writing test cases and conducting audits.
• Carrying out software system installation and integration.
• Obtaining and evaluating information from users on factors such as reporting, cost, tracking, review and/or security needs to determine hardware configuration.
• Managing issues/problems related to business applications and data transfer.
• Providing support to diagnose and resolve medium to high complexity application problems of a business, management or technical nature.
• Performing data analysis to support internal and external business needs.
• Applying current technologies (hardware, software, packaged applications and tools) to support the delivery of the client's application solutions.
• Facilitating communication between multiple business teams and the applications team to support day-to-day application support activities.
• Supporting the established change management process and ensuring the consistency and quality of the source code control repository.
Qualifications
Minimum Requirements:
• Bachelor's degree in Computer Science, Software Engineering, MIS or Information Technology or equivalent combination of education and experience.
• High proficiency level with relevant programming/query languages and software platforms, including HTML, ASP.NET, C#, Ajax , WCF, MVC, SQL Server, Oracle, and/or other software development tools to perform various types of programming.
• Four or more years of software programming and testing experience.
• Demonstrated ability in one or more of the following technologies: .NET Framework, C#, Entity Framework, jQuery, MVC and MS SQL Server.
• Experience working with relational databases to facilitate software programming.
• Demonstrated analytical and problem solving skills for design, creation and testing of software programs. Must exhibit well-developed programming skills.
• Develop and maintain Web Services using WSDL, UDDI, DISCO and SOAP Protocol and .NET Remoting.
• Utilize Software Engineering Life Cycle best practices to include Agile Development Methodology practices.
• Able to capture and document business requirements.
• Good personal computer and business solutions software skills.
• Ability to work as part of team and independently when necessary.
• Strong interpersonal skills to interact with team members and functional business community.
• Excellent oral and written communication skills to work effectively with team members, support personnel, and end users.
• Able to capture and document business requirements.