General Summary of Job Responsibilities
The Software Engineer performs analysis, design, configuration, development, testing, and debugging of computer software. They will work independently with users to define system scope and objectives and establish baselines as well as perform activities based upon established standards and processes. The Software Engineer will determine and develop user requirements for systems in production to ensure maximum usability.
Essential Duties and Responsibilities
- Provide incident management and direct technical consulting to support specific applications/solutions within the business functional area
- Capture/evaluate requirements, consider alternatives, and establish timelines
- Create designs involving systems or components contained within one functional area that comply with regulatory requirements and are consistent with the current/planned infrastructure and data environments
- Prepare solution delivery artifacts such as: solution designs, test plans, security diagrams, etc. to support solutions and documents activities
- Provide technical expertise for enhancements and IT Projects in the areas of solution alternatives, design, configuration, testing and documentation
- Find/create test data, write test plans/scenarios and utilizes testing tools to execute testing including automated test configuration
- Utilize change and release tools and processes to coordinate and implement solutions across multiple teams and technologies
- Collaborate with other business and technical teams to ensure solutions meet requirements from various governance teams with support and guidance from senior software engineers or above
- Provide recommendations to introduce new technology including reasoning and integration with the systems landscape at the company
- Perform prototyping, design, development, testing, debugging, documentation and implementation of software applications in an agile environment
- Other duties as assigned or may be necessary
Knowledge/Skills/Abilities
- Excellent verbal and written communication skills and ability to work with all levels of the organization
- Knowledge of project planning/full lifecycle delivery using agile framework
- Understanding of software test methodologies, test scripting, and testing tools
- Understanding of database management principles and methodologies, including data structures, data modeling, data warehousing, and transaction processing
- Knowledge of software design principles, methods, and approaches
- Knowledge of change and release tools and processes utilized to implement solutions
- Proficient in establishing and maintaining good working relationships
- Ability to work effectively with contract employees and vendors
Education
- Bachelor's Degree in computer, engineering or related field with two (2) or more years of experience in software configuration management, software architecture/design, user requirements definition, software specification development, software development, coding and compilation, testing aptitude, and experience with software deployment processes and best practices
- [OR] Associate's Degree in computer, engineering or related field with four (4) or more years of experience in software configuration management, software architecture/design, user requirements definition, software specification development, software development, coding and compilation, testing aptitude, and experience with software deployment processes and best practices
- [OR] High School Diploma/GED with six (6) or more years of experience in software configuration management, software architecture/design, user requirements definition, software specification development, software development, coding and compilation, testing aptitude, and experience with software deployment processes and best practices
Consumers Energy
1 Energy Plz
Jackson
Michigan United States
www.consumersenergy.com