Software Engineer I Application Development
Job DescriptionSALARY RANGE $120,000 - $180,000/yearDUTIES As a successful candidate for the Software Engineer I role, you will develop, maintain, and enhance complex and diverse software systems, including processing-intensive analytics, novel algorithm development, manipulation of extremely large data sets, real-time systems, and business management information systems based on documented requirements. You will work independently or as part of a team to review and test software components for adherence to design requirements and document test results. You will utilize software development and software design methodologies appropriate to the development environment and provide input to the software components of system design, including hardware and software trade-offs, software reuse, the use of Commercial Off-the-Shelf (COTS) and Government Off-the-Shelf (GOTS) solutions in place of new development, and requirements analysis and synthesis from the system level to individual software components.Required SkillsSKILLS Analyze user requirements to derive software design and performance requirementsDebug existing software and correct defectsProvide recommendations for improving documentation and software development process standardsDesign and code new software or modify existing software to add new featuresIntegrate existing software into new or modified systems or operating environmentsDevelop simple data queries for existing or proposed databases or data repositoriesWrite or review software and system documentationServe as team lead at the level appropriate to the software development process being used on a projectDesign or implement complex database or data repository interfaces and queriesDevelop or implement algorithms to meet or exceed system performance and functional standardsAssist with developing and executing test procedures for software componentsDevelop software solutions by analyzing system performance standards, conferring with users or system engineers, analyzing system flow, data usage, and work processes, and investigating problem areasModify existing software to correct errors, adapt to new hardware, or improve performanceDesign, develop, and modify software systems using scientific analysis and mathematical models to predict and measure outcomes and consequences of designQUALIFICATIONS Candidates must possess a Bachelor's degree in Computer Science or a related discipline from an accredited college or university and seven (7) years of experience as a Software Engineer on programs and contracts of similar scope, type, and complexity. In lieu of a Bachelor's degree, four (4) additional years of Software Engineering experience on projects with similar software processes may be substituted.