Responsibilities:
• Write code that is robust, secure, readable, tested, follows conventions, and is no more complex than necessary.
• Refactor legacy code to improve code quality while maintaining functionality.
• Stay up-to-date on recommended best practices in relevant frameworks and languages.
• Reason objectively with other engineers about the technical merit of individual solutions and prepare detailed specifications for programs.
• Responsible for program design, coding, testing, debugging and documentation.
• Formulate and develop detailed specifications, code, documentation, and related customer information required to complete program development maintenance activities.
• Create and/or modify complex programs to meet user requirements to include testing program and system changes ensuring product quality and timeliness.
• Confer with project manager and representatives of departments affected by program to resolve questions of program intent, output requirements, input data acquisition, extent of automatic programming and coding use and modification, and inclusion of internal checks and controls.
• Design and develop client applications; meet with clients/functional SMEs to determine program requirements.
• Test and correct program errors by altering program steps and sequence.
• Analyze, review, and rewrite programs to increase operating efficiency or adapt to new requirements.
• Actively participate in planning activities, artifact creation, full stack development, testing, and demonstrations.
• Analyze project-related problems and create innovative solutions involving, scheduling, technology, methodology, tools, and solution components.
• Develop application changes, test, and document changes.
• Assist with other program efforts (such as test automation, configuration management, etc.)