Software Engineer
Company | CACI |
---|---|
Location | Annapolis Junction, MD, USA |
Salary | $60600 – $121200 |
Type | Full-Time |
Degrees | Bachelor’s |
Experience Level | Entry Level/New Grad, Junior |
Requirements
- TS/SCI with Polygraph
- Applicable combination of Bachelor’s degree in Computer Science or related discipline from accredited college or university AND experience as a SWE in a program or contract of similar scope: Software Engineer 0 (T1): Bachelor’s degree and no demonstrated experience is required. Software Engineer 1 (T3): Bachelor’s degree and seven (7) years experience. Software Engineer 2 (T4): Bachelor’s degree and fourteen (14) years experience. Software Engineer 3 (T5): Bachelor’s degree and twenty (20) years experience.
- Four (4) years of additional SWE experience may be substituted for a bachelor’s degree
- C++, JAVA, Python and experience working in a Linux Development Environment
Responsibilities
- Analyze user requirements to derive software design and performance requirements
- Debug existing software and correct defects
- Provide recommendations for improving documentation and software development process standards
- Design and code new software or modify existing software to add new features
- Develop simple data queries for existing or proposed databases or data repositories
- Serve as a team lead at the level appropriate to the software development process being used on a project
- Develop and test software components
- Develop software solutions by analyzing system performance standards, confer with users or system engineers; analyze systems flow, data usage and work processes; and investigate problem areas
- Modify existing software to correct errors, to adapt to new hardware, or to improve its performance
- Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design
- Design or implement complex algorithms requiring adherence to strict timing, system resource, or interface constraints; Perform quality control on team products
- Implement recommendations for improving documentation and software development process standards
- Oversee one or more software development teams and ensure the work in completed in accordance with the constraints of the software development process being used on any project
- Confer with system engineers and hardware engineers to derive software requirements and to obtain information on project limitations and capabilities, performance requirements and interfaces
- Coordinate software system installation and monitor equipment functioning to ensure operational specifications are met
Preferred Qualifications
-
No preferred qualifications provided.