RF Software Engineer 3 - (RF, C++, Linux)
Builds, maintains, and enhances complex RF/DSP software systems for government clients at Annapolis Junction, MD, working primarily in C++, Linux, and Python. Requires an active TS/SCI clearance with polygraph and 12 years of relevant experience; salary ranges from $256k to $313k annually.
- Compensation
- $256K–$313K / yr
- Location
- Annapolis Junction, Maryland
- Work setup
- Not specified
- Seniority
- Not specified
- Employment
- Not specified
- Experience
- 10+ years
- Category
- Software engineering
- Posted
Skills
Must have
- TS/SCI clearance with polygraph
- Twelve (12) years' experience as a DSP algorithm developer
- Twelve (12) years' experience with C++, Linux, Python, or similar development language
- C++ work must be in the last 10 years
- Bachelor of Science in Engineering, Computer Science, or related discipline (may substitute 4 years' experience; or 2 years' with MS in Engineering or CS)
Nice to have
- Active IAT II CWIP / DoD 8570 compliant cert (i.e., Security+)
Full description
RF Software Engineer 3 - (RF, C++, Linux)Clearance: TS/SCI - Polygraph required
Position ID: 11-8872-RFSWE3
Location: Annapolis Junction, Maryland
Description:
The Software Engineer develops, maintains, and enhances complex and diverse software 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.
- 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.
- Integrate existing software into new or modified systems or operating environments.
- Develop simple data queries for existing or proposed databases or data repositories.
- Write or review software and system documentation.
- Serve as team lead at the level appropriate to the software development process being used on any particular project.
- Design or implement complex database or data repository interfaces/queries.
- Develop or implement algorithms to meet or exceed system performance and functional standards.
- Assist with developing and executing test procedures for 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 is completed in accordance with the constraints of the software development process being used on any particular project.