Programmer Analyst 3 – State of Michigan
In the analyst role, the Programmer Analyst is responsible for gathering and documenting clear, unambiguous, and testable business requirements from the client, understanding the business requirements thoroughly to communicate business need and system functionality to technical and non-technical stakeholders, project team members, and the user community. The resource will be responsible for working with the project team and stakeholders to examine existing and future-state business processes, data, and systems. This information is used to guide the gathering of business requirements as they relate to the desired system functionality.
In the programmer role, the Programmer Analyst is responsible for planning, developing, testing, and documenting computer programs, applying knowledge of programming techniques and computer systems.
Analyst Responsibilities
- Document business requirements that are clear, unambiguous, testable, and satisfy the business need in accordance with standard templates and adherence to DTMB and Treasury policies, standards, and guidelines.
- Facilitate requirement gathering meetings to identify impacted business processes and document the project business requirements. Attendees include relevant project team members and stakeholders as identified in the Communication Plan.
- Adhere to the project schedule by developing and maintaining the project backlog during Agile projects and working with the product owner to set priority throughout the duration of project.
- Understand project scope and actively monitor requirements process to maintain adherence to the objectives set for the project.
- Understand high-level information governance objectives and ensure appropriate Stakeholder inclusion and/or awareness regarding data requirements.
- Resolution of critical IT issues as it pertains to the BA role.
- Understand project specific benefits and related impact of changes to project scope or business requirements.
- Ensure SEM deliverables for the project that are a responsibility of the BA are completed, reviewed, and approved in alignment with area processes.
- Work directly with project team including user interface/user experience (UI/UX) designers, tech leads, solution architects, database administrators, developers, QA testers, and technical writers to ensure understanding of the requirements, functionality, size, and scalability of the IT solution.
- Work with security team to develop system security plans (SSPs).
Programmer Responsibilities
- Possess knowledge and experience of advanced principles, theories, techniques, and methods in the development and design of web applications.
- Work as a team and individually on projects and tasks using Agile and/or traditional project management methodologies.
- Participate in project review meetings and project workgroups.
- Presents the information gathered to the project review board and/or project sponsors during project review meetings, project workgroups and to the technical review board providing clarification and answers to questions.
- Create, update, and maintain systems and IT programs documentation, including but not limited to system and functional specifications.
- Draft technical models that capture requirements of data elements, and design data elements to best meet application needs.
- Design and develop software code based on reusability, approved architecture/design, and in compliance with security (SADLC) and other applicable State of Michigan standards, policies, and procedures including Americans with Disabilities (ADA) compliance.
- Mitigate application-level security risks, and remediate vulnerabilities as soon as identified.
- Participate and provide input for structured walk throughs, code reviews, and stage exits.
- Strictly follow configuration management procedures as defined by the development team.
- Follow change management procedures as defined by the State of Michigan Center for Excellence and provide input in execute change management.
- Support project documentation requirements by following System Engineering – SUITE standards for Agile and Traditional methodologies as applicable.
- Perform application unit, string, and integrated testing to ensure compliance with the business and technical requirements.
- Develop system/module level test scripts, test plans, and test cases required to support the execution of unit, string, and integrated system testing activities.
- Analyze and document identified problems to determine root cause and provide root cause analysis reports.
- Develop user manuals and conduct training for users.
- Evaluate requests for modifications and enhancements for impact on existing project and applications.
Requirements
- Experience working directly with customers to develop requirements for application development.
- Experience creating functional and technical designs and documentation.
- Experience developing applications using Microsoft Visual Studio/Azure DevOps/C#/.NET/MVC/JavaScript.
- Experience with data access and manipulation including queries/stored procedures/Entity Framework.
- Experience developing secure applications and system security plans.
- Experience developing and executing test plans/suites/cases. ADO test plans are a plus.