Programmer Analyst II - Advisor Technology
Play a key role in the development and testing of new software by utilizing methods of object oriented programming and service oriented architectural design. Modify, document, and maintain existing legacy software programs. Assist in the execution of performance analysis techniques to identify and re mediate root cause. Provide mentoring and guidance to Programmer Analyst I, while taking direction from Software Engineers and Managers of Software Development. Responsibilities
- Write new code using prescribed specifications and design documentation in accordance with current stands while driving improvements to existing standards. Utilize methods of object oriented programming and incorporate web service design when appropriate. Modify, test and troubleshoot existing programs/software utilizing the appropriate hardware, database, and development/programming technology. Analyze end user data and business needs and incorporate into designed solutions.
- Maintain and modify programs/software. Perform existing application changes that are large in scope with minimal supervision. Implement approved changes by amending flow charts, developing detailed programming logic, and making changes to code. Write and maintain development/programming/systems documentation, as well as operations and user guides (as required). Document development/programming problems and resolutions for future reference.
- Effectively unit test all code and programs prior to releasing them to the quality assurance (QA) team. Resolve all unit test issues in a timely manner. Collaborate with the QA team to identify test cases and create/mine test data to enable a thorough test of all development deliverables. Respond to all inquiries and issues in a timely manner as the developed code/program moves through the testing process and ultimately into production. Provide implementation/production support as required.
- Assist in performance analysis and monitoring of enterprise developed applications with consultation from Software Engineers. Assist in disaster recovery (DR) design, planning, and execution for enterprise developed applications with guidance and direction from Software Engineers and Enterprise Architects. Evaluate and understand the interrelationship between multiple enterprise applications and begin to account for dependencies when evaluating design solutions.
- Begin to introduce new technology solutions and ideas by staying current in the arena of software development best practices. Engage proactively in knowledge sharing and mentoring of more junior partners.
- Support the installation planning for application program requirements. Support the end-user and technical operations staff as required. Assist senior development staff with the integration of technology within and across the capability domains.
- Performs other duties as assigned
- Bachelors degree or equivalent (4-years) in Computer Science, Technology or related field; or equivalent work experience.
- 3-5 years of relevant experience required.
- 3+ years of experience coding in relevant programming languages (specific required languages will vary by position), providing a deep understanding of programming languages and procedures.
- 3+ years of experience developing and maintaining programming/systems documentation and technical instructions in the use of programs and/or program modifications.
- 3+ years of experience coding in multiple environments.
- 3+ years of a solid understanding of the Software Development Life Cycle (SDLC).
- Adept at development in .NET, MVC, C#, PL/SQL, WCF, or some combination thereof.
- Adept at processing computer data and formatting and generating reports.
- Proven ability to be successful in a multi-sourced, multi-vendor environment.
- Excellent oral and written communication skills along with logical, analytical and abstract thinking skills.