Designs, develops, tests and implements application software including client, server and middleware. This includes designing and building algorithms and data structures and application performance monitoring and tuning.
Principal Duties and Responsibilities
1) Creates software design at the component level based on the application architecture and the detailed business requirements.
2) Develops algorithms and data structures
3) Develops strategies for the monitoring, preventive maintenance and disaster recovery of applications.
4) Serve as technical expert in at least one application within a portfolio.
5) Assures that solution designs meet requirements for scalability, performance and quality in accordance with negotiated service level agreements.
6) Participates in the assessment and resolution of software defects.
7) Assists project management with the development of work breakdown structures, project plans and skills required to develop and implement applications.
8) Participates in design reviews for implementation projects.
9) Conducts technical evaluations.
10) Participates in the review, business case development and implementation of software development tools, methodology and software development standards
11) Understands IS Security measures and current standards, practices and technology.
1) Serves as liaison with suppliers for sustaining activities.
2) Assists with evaluation and recommendations regarding purchased software packages, and supporting services.
3) Using knowledge of technology and existing systems, mentors junior staff on building and maintaining application systems.
4) Performs other duties as assigned
Experience developing complex applications in Java or .NET languages, VB.NET preferred. Experience developing SQL queries; Oracle Database experience preferred.
1) Expert in one or more software development languages.
2) IT Infrastructure Library (ITIL) exposure is desired.
3) Solid understanding of system lifecycle methodologies, software development tools and standards.
4) Experience working in teams.
5) Proficiency with an Integrated Development Environment (IDE) desired.
6) Proficiency with MS Office.
7) Ability to solve problems quickly and completely. Ability to identify tasks which require automation.
8) Strong inter-personal and communication skills; must be capable of explaining complex procedures in writing or verbally. Must be able to write proposals and make presentations to internal customers and professional peers.
9) Provides technical direction for application development teams.
10) A Masters degree may be used to offset one year of experience; PhD may offset two years of experience.
- Bachelors degree in Information Technology, Computer Science, Engineering or relevant curriculum; or equivalent combination of education and experience sufficient to successfully perform the essential functions of the job.(4) or more years experience as an IT professional with broad experience across multiple IT disciplines.