The Software Engineer develops, maintains, and enhances complex and diverse software systems (e.g., processing-intensive analytics, novel algorithm development, manipulation of extremely large data sets, real-time systems, and business management information systems) based upon documented requirements. Works individually or as part of a team. Reviews and tests software components for adherence to the design requirements and documents test results. Resolves software problem reports. Utilizes software development and software design methodologies appropriate to the development environment. Provides specific input to the software components of system design to include hardware/software trade- offs, software reuse, use of Commercial Off-the-shelf (COTS)/Government Off-the-shelf (GOTS) in place of new development, and requirements analysis and synthesis from system level to individual software components.
The selected candidate needs to have a foundational understanding of end to end software development, system development life cycles and operational maintenance and support. The candidate needs to be able to attend meetings with the team and customer and provide basic technical input, capture meeting minutes, and answer questions with sound technical acumen supported by best practices and engineering rigor.
Day to day tasking:
- Assess tools for recommendations of new capabilities and features to meet and exceed mission needs
- Conduct routine Operational Maintenance to sustain system support and network compliance
- Analyze user requirements to derive software design and performance requirements.
- Debug existing software and accurate defects.
- Provide recommendations for improving documentation and software development process standards.
- Design and code new software or modify existing software to add new features.
- Integrate existing software into new or modified systems or operating environments.
- Develop simple data queries for existing or proposed databases or data repositories.
Required Skills/Experience:
- Familiar with Agile processes, methodologies and ceremonies
- Familiar with Syntactic and Semantic rules and processes
- Familiar with the fundamental principles of Object Oriented Programming
- Familiar with basic development tools (IDE, Git, Jenkins), skills (branching, merging, basic unit testing) and practices (best practices related to development)
- Willingness to learn and take initiative
- Able to adapt to new concepts, policies and procedures
**Limited Telework available, may be more later in time.
Qualifications:
No demonstrated experience is required. Bachelor’s degree in Computer Science or related discipline from an accredited college or university is required Four (4) years of SWE experience on projects with similar software processes may be substituted for a bachelor’s degree.
STRATUM NETWORKS OVERVIEW: