Information Assurance Software Engineer

The Swift Group, LLCAnnapolis, MarylandOn-siteFull-timeMid level, 2–5 yearsListed 6 hours ago

Apply now

About this role

Swift is a privately held, mission-driven and employee-focused services and solutions company headquartered in Reston, VA. Our capabilities include Software Development, Engineering & IT, Data Science, Cyber Enablement, Logistics, and Training. Founded in 2019, Swift supports Civilian, Defense, and Intelligence Community customers across the country and around the globe.
We are looking for a Information Assurance Software Engineer in Annapolis Junction, MD . Seeking Level 1-4 engineers.
The IA 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.
Responsibilities:
- Levels 1-2 Analyze user requirements to derive software solutions and performance requirements
- Debug existing software and correct defects
- Assist with algorithms to meet or exceed system performance and functional standards
- Draft or review software and system documentation
- Assist with the modification of software systems using scientific analysis and mathematical models to predict and measure outcome and consequences of design
- Assist with complex algorithms requiring adherence to strict timing, system resource, or interface constraints and perform quality control on team products
- Assist with recommendations for improving documentation and software development process standards
- Integrate multiple operational platforms in an integrated environment
- Integrate software products, techniques, and management processes across a broad spectrum of systems, applications, and requirements
- Integrate existing software into new or modified systems or operating environments
- Recommend documentation improvement and software process standards
- Assist with developing and executing test procedures for software components
- Analyze system performance standards, systems flow, data usage, and work processes and investigate problem areas to assist with software solutions
- Assist with the modification of software to correct errors, adapt to new hardware, or improve performance
- Assist with complex database or data repository interfaces or queries
- Derive software requirements and 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
- Serve as the team lead at the level appropriate to the software development process being used on any particular project

- Levels 3-4: Map requirements to executed code
- Select the software in coordination with the customer and system engineering
- Recommend new technologies and processes for complex software projects
- Advise across large, complex systems to provide key leadership in a multi-vendor environment
- Serve as the technical lead of multiple software teams
- Assist in the solution design of commercial technologies
- Advise senior executives on effective utilization of information technology systems
- Oversee one or more software development teams and ensure the work is completed in accordance with the constraints of the software development process being used on any particular project
- Serve as the team lead at the level appropriate to the software development process being used on any particular project
- Delegate programming and testing responsibilities to one or more teams and monitor their progress
- Integrate across multiple information technology platforms and diverse architectures

Requirements:
- Level 1 : One (1) year of IA software development experience is required.
- Bachelor’s degree in Engineering or Computer Science is required.
- An additional four (4) years of experience may be substituted for the education requirement.

- Level 2: Four (4) years of IA software development experience is required.
- Bachelor’s degree in Engineering or Computer Science is required.
- An additional four (4) years of experience may be substituted for the education requirement.

- Level 3 : Ten (10) years of IA software development experience is required.
- Bachelor’s degree in Engineering or Computer Science is required.
- An additional four (4) years of experience may be substituted for the education requirement.

- Level 4 : Fifteen (15) years of IA software development experience is required.
- Bachelor’s degree in Engineering or Computer Science is required.
- An additional four (4) years of experience may be substituted for the education requirement.
- A Master’s degree in Engineering or Computer Science may be substituted for two (2) years of experience.
- A PhD in Engineering or Computer Science may be substituted for four (4) years of experience.

- US citizenship and an active TS/SCI with Polygraph security clearance required

#LI-KD1