The Software Engineer IV develops, implements, and maintains software solutions that enable business operations to realize company goals & objectives. The incumbent performs analysis, design, coding, debugging, testing, and support of software applications. May be assigned to develop new applications/systems, enhance/upgrade existing systems or provide production support. He/she works independently on moderately complex projects, receiving only general direction. May provide assistance and direction to less experienced peers.
Essential RESPONSIBILITIES and ACCOUNTABILITIES
- Works with the Agile Program Manager (APM), Digital Product Manager (DPM), and Business Systems Analyst (BSA) to accurately capture stakeholder requests and system specifications and translate them into engineering artifacts, which typically include design specifications, source code, test scripts and test results.
- Coordinates with software architects and Software engineer IVs to ensure that the engineering realization is in accordance with Enterprise Architecture principles and software development best practices.
- As part of Agile teams, completes software development work which includes application design, coding, code review and testing. Keeps Agile team and APM apprised of project status.
- Offers suggestions to stakeholders on devising effective and efficient approaches to achieve project and program objectives.
- Manages engineering risks by proactively tracking and communicating issues, and devising methods to mitigating them.
- Liaises with other project and program areas to coordinate interdependencies and resolve issues.
- Supports business units in the resolution of in-depth user questions and issues following production support process and SLA’s.
- Maintains a working knowledge of new technology and software engineering standards, practices and tools.
- Provides input to APM/DPM in creation of Product Roadmap, High Level Estimates
- Collaborates with IT management to define and develop documentation & engineering artifact standards, guidelines, processes, and templates.
- Proficiency in the theoretical & practical application of software engineering best practices, methods and techniques.
- Experience in developing software applications on the assigned technology platform.
- Knowledge on source code change management and related tools.
- Knowledge and experience using Agile software development principles, process and tools.
- Good analytical, problem solving and organizational skills.
- Proficient interpersonal, and written and oral communication skills, in addition to customer service skills in order to provide end user/business owner systems support.
- Education & Experience:
- Required knowledge and skills would typically be acquired through a Bachelors degree in computer science, business, or related field plus 8 to 10 years of related experience.