Software Engineer 2

Apply Now

Company: Jacobs

Location: Fort George G Meade, MD 20755

Description:

Are you interested in using your skills to help shape the Cyber, Security, & Intel space? If so, look no further. We are seeking a Software Engineer to join our team of passionate individuals. In this role you will support challenging, mission-critical projects that make a direct impact on the nation's security and intelligence mission.

The GoblinGlider (GG) C++ SWE is in an extremely customer facing role leading multi-faceted mission critical system development, deployment and evolution. The successful candidate will analyze user requirements, develop new software, and enhance existing systems to meet the demands of modern satellite communication technologies. This role will involve working on complex algorithms and ensuring software quality through automated testing and debugging.

Responsibilities:
  • The Software Engineer 2 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.

Primary functions of this position:
  • User Requirement Analysis:
    • Analyze user requirements to derive software designs for new applications or modifications to existing software, ensuring the addition of new features and capabilities aligns with project goals.
  • Software Development:
    • Write high-quality, maintainable C++ code for satellite communication applications, adhering to best practices and coding standards.
  • Debugging and Defect Correction:
    • Identify, debug, and correct defects in existing software, utilizing effective troubleshooting techniques to resolve issues efficiently.
  • Database and Data Repository Interfaces:
    • Design and implement database or data repository interfaces and queries to support the application's data management needs.
  • Algorithm Design:
    • Design and implement complex algorithms that adhere to strict timing, system resource, and interface constraints, ensuring high performance and reliability.
  • Automated Testing Integration:
    • Integrate automated testing as part of the development lifecycle, implementing unit tests and other testing methodologies to ensure software quality.
  • Collaboration:
    • Work closely with cross-functional teams, including system architects, QA engineers and project managers to ensure software meets user requirements and is delivered on schedule.
  • Documentation:
    • Maintain comprehensive documentation for software designs, processes, and interfaces to facilitate knowledge sharing and project continuity.

Desired Skills:
  • Proficiency in C++ development, with a solid understanding of real-time systems and performance optimization.
  • Experience with RF signals analysis or satellite communications system design and theory, with the ability to implement these concepts into software.
  • Familiarity with DevOps processes and tools, particularly in virtual (VMware) and containerized (Docker/Kubernetes) environments.
  • Experience with message queue implementation and communication protocols.
  • Knowledge of GPU/CUDA development for performance-critical applications.
  • Experience with MATLAB for algorithm development and simulation.
  • Understanding of Linux system programming and development environments.
  • Strong analytical and problem-solving abilities.
  • Excellent communication and collaboration skills.
  • Adaptability and a commitment to continuous learning and improvement.


Requirements:
  • 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 environment.
  • 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.
  • 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.

Clearance Required:
  • Active TS/SCI with Polygraph

Minimum Education:
  • A Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Applied Mathematics, Computer Science, Physics or a related discipline from an accredited college or university is required. Four (4) years of additional SWE experience may be substituted for a Bachelor's degree.

Minimum Years of Experience:
  • Fourteen (14) years experience as a SWE in programs and contracts of similar scope, type, and complexity is required.

#javelin #forthewin

Pay Transparency Verbiage
Amentum's health and welfare benefits are designed to invest in you and in the things you care about. Your health. Your well-being. Your security. Your future. Eligible employees and their dependents may elect medical, dental, vision, and basic life insurance. Employees are able to enroll in our company's 401k plan, and, if eligible, a deferred compensation plan and Executive Deferral Plan. Employees will also receive 17 days of vacation per year, seven paid holidays, plus floating holidays and caregiver leave. Hired applicants will be able to purchase company stock and have the opportunity to receive a performance discretionary bonus.

The base salary range for this position is $207,000 to $227,000. This range reflects the minimum and maximum target for new hire salaries for the position across all US locations. Within the range, individual pay is determined by work location and additional factors, including job-related skills, experience, and relevant education or training.

Similar Jobs