Logo
Synergy ECP

Senior Software Engineer

Synergy ECP, Fort George Meade, Maryland, United States

Save Job

Overview Synergy ECP is a leading provider of cybersecurity, software and systems engineering and IT services to the U.S. intelligence and defense communities. The company delivers critical and innovative capabilities to high-level decision makers that enhance national security.

Position: Software Engineer

The role involves designing, developing, testing, deploying, documenting, maintaining, and enhancing complex software systems based on documented requirements. Systems may include processing-intensive analytics, real-time systems, data repositories and transport services, and various software and systems development components. The engineer may work individually or as part of a team and will review and test software components for adherence to design requirements and document test results. Responsibilities also include resolving software problem reports, applying appropriate development methodologies, and contributing to system design through software component input, including trade-offs, reuse, OSS/COTS/GOTS considerations, and requirements analysis from system level to components. Experience developing in Unix and shell scripting is expected, along with working knowledge of configuration management tools and web services implementation.

Responsibilities

Analyze user requirements to derive software design and performance requirements

Debug existing software and correct defects

Design and code new software or modify existing software to add new features

Write or review software and system documentation

Integrate existing software into new or modified systems or operating environments

Develop simple data queries for existing or proposed databases or data repositories

Software development using languages such as C, C++, Python, Ruby, Perl, JavaScript, etc.

Experience with agile development processes

Experience with source code control systems (e.g., Git)

Lead project activities appropriate to the software development process

Design and development of relational and non-relational database applications

Use of orchestration frameworks (e.g., Spring) and message systems (e.g., Kafka, RabbitMQ)

Familiarization with queue management systems

Develop or implement algorithms to meet performance and functional standards

Develop and execute test procedures for software components

Analyze systems flow, data usage, and work processes to inform software design

Modify existing software to adapt to new hardware or improve performance

Design, develop, and modify software systems using scientific analysis and mathematical models

Java development using the Eclipse IDE; development of J2EE applications

Experience with collaboration tools (e.g., Atlassian) and CI practices

Experience with container technologies (e.g., Docker)

Unix shell scripting; development of event-driven or data-driven analytics

Development of cloud-based solutions and technologies

Design or implement complex algorithms with timing and resource constraints; ensure quality control

Recommend and implement improvements to documentation and software development processes

Coordinate and oversee software development teams as appropriate to the project

Collaborate with system and hardware engineers to derive software requirements and interfaces

Coordinate software installation and monitor performance to meet specifications

Recommend new technologies and processes for complex projects

Serve as technical lead of multiple software development teams

Select development process in coordination with customer and system engineering

Ensure quality control of all developed and modified software

Qualifications Master's degree in Computer Science or related discipline from an accredited college or university, plus five (5) years of SWE experience in programs of similar scope and complexity; OR Bachelor's degree in Computer Science or related discipline, plus seven (7) years of SWE experience; OR Nine (9) years of SWE experience in programs of similar scope and complexity.

Required Skills

Experience using the Linux CLI

Scripting experience with Bash/Python

Java development in a Linux environment

Experience with the Spring Framework (Spring Boot, Spring Data, Spring Integration)

Experience with messaging frameworks (RabbitMQ, Kafka)

Experience with NoSQL databases (e.g., MongoDB)

Experience with Apache NiFi

Containerization (Docker, containerd)

CI/CD experience (GitLab CI, Jenkins)

Infrastructure as Code (Ansible)

Source control systems (Git)

Desired Skills

Container orchestration (Kubernetes)

Atlassian tool suite (Jira, Confluence)

Clearance TS/SCI w/ Polygraph

Other Requirements U.S. Citizenship

Compensation and Benefits Compensation: Typical salary range starts at $180,000 to $250,000. The company highlights a complete rewards package, culture, and impact beyond salary.

Benefits include health and retirement plans, wellness resources, continuing education support, generous paid time off and holidays, flexible work options, philanthropy programs, and corporate facilities amenities. The company also offers a SkillBridge program for servicemembers.

Equal Opportunity Synergy ECP is an equal employment opportunity employer. Decisions are based on merit, qualifications, and business needs. No discrimination based on race, color, sex, national origin, religion, age, disability, or other protected status. We welcome candidates from all backgrounds.

Job Listings and Location Notes For context, the page includes several related job postings and location mentions (e.g., Fort Meade, Annapolis Junction, Columbia, and Washington, DC) and general company messaging. This refined description focuses on the Software Engineer role and excludes extraneous tracking or non-essential listings.

#J-18808-Ljbffr