11-1189 Software Engineer
Identify, analyze, define, and coordinate user, customer and stakeholder needs and translate them into technical requirements.
Assist business units in expressing their needs in terms that can be used to generate valid requirements.
Help business units identify technology solutions with the potential to improve business processes.
Work with stakeholders as well as technical and analytical counterparts to define constraints, and develop requirements and concept of operations documentation.
Identify technical risks and develop mitigation strategies.
Provide assistance to project or program teams.
Provide conceptual design, prototype, and test cycles appropriate to a chosen technical solution.
Identify and manage dependencies with other systems and elements of the IT infrastructure.
Help the project or program team prepare for Project Management Framework.
Participate in project or program team activities.
Identify potential environmental impacts on systems.
Record lessons learned, processes and procedures, and other pertinent quality topics in appropriate formats.
Work with project personnel to resolve schedule problems and ensure developed applications and systems are transitioned to customers in a timely manner.
Validate system elements and requirements. Survey products and technical infrastructure as part of the system selection process.
Assess system designs to validate them against expected technical parameters.
Identify hardware and applications needed to complete the development process.
Develop and implement test plans for commercial off the shelf (COTS) and custom developed systems.
Ensure all product and administrative documentation is completed and maintained in order to ensure continuity and historical reference.
Ensure deliverables meet all relevant quality and security standards.
Desired skills: Additional Skills:
Experience with transition planning in agency environment
Experience with JMS, enterprise messaging systems, and/or Enterprise Service Bus
Experience with Apache/Tomcat and/or JBoss
Experience with ETL, Pentaho, and/or Drools
Experience with Oracle database designs
Knowledge of theories, principles, and practices in software development .
Knowledge of Software Integration patterns.
Knowledgeable in the software development life-cycle and various methodologies.
Experienced software developer with a focus on J2E, object-oriented design, and enterprise design patterns .
Demonstrated programming, troubleshooting, and debugging skills, using various languages and platforms.
Strong problem-solving skills and ability to comprehend database methodologies.
Knowledge of customer cabling systems, formats, ingestion
Experience with Eclipse, Plug-Ins, Subversion
Experience with developing servlets, web services, REST services
Experience with building applications that produce/consume XML