One (1) full time Software Engineer 2 to support integration of Java/C++ software components into development and production processing frameworks. Develop autotests, graphs, shell scripts, and datasets to simulate data flows. Test/troubleshoot and resolve discrepancies. Test, verify, and assess new and emerging capabilities to support high-volume, low latency, mission critical systems.
Description of team activities below:
- Participation in design, test, review, and release process for existing and new capabilities
- Develop and test digital network protocol processing systems
- Develop and test multiple technologies including enterprise messaging, streaming data processing, data storage, and retrieval
- Develop unit, component, and system tests via standard test packages
- Support analysis and resolution of bug fixes on lab, live/dev and operational systems
- Review and assess software for performance, reliability, and/or maintainability
- Identify and assess new tools, technologies or techniques to enhance test and integration
- Support full life cycle iterative development, requirements gathering, technical design, development, test, deployment, and sustainment
- Support open, constant, sharing of achievements with SCRUM and agile processing methods: standups, sprint planning, review, and retrospectives; backlog grooming and task definition sessions, planned and ad hoc design
- Support emergency call-in for high priority systems outside regular business hours (rare, but need to understand requirements exist for emergency support)
Technical Skills Required:
- Extensive and recent software integration and test experience C++ and/or Java developer
- Extensive and recent experience testing communication protocols
- Must be proficient in analyzing data processed in a test environment, ensuring results match expected outcomes, and resolving discrepancies
- Extensive and recent Linux experience
- Experience with shell scripting (bash preferred)
- Experience with Maven for building code and Git for version control
Special Technical Skills Desired:
- Linux certification
Minimum Experience Required:
- Bachelor’s degree in Computer Science or related discipline from an accredited college or university is required. Four (4) years of additional software engineering experience on projects with similar software processes may be substituted for a bachelor’s degree.
- Fourteen (14) years experience in programs and contracts of similar scope, type, and complexity is required.