Software Engineer 3
Company: Synergy ECP
Location: Annapolis Junction
Posted on: April 1, 2026
|
|
|
Job Description:
The Software Engineer designs, develops, tests, deploys,
documents, maintains, and enhances complex and diverse software
systems based upon documented requirements. These systems might
include, but are not limited to, processing intensive analytics,
novel algorithm development, manipulation of extremely large data
sets, real-time systems, business management information systems,
and systems which incorporate data repositories, data transport
services, and application and systems development and monitoring.
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 Open Source Software (OSS)
and/or Commercial OffThe-Shelf (COTS) Government Off-The-Shelf
(GOTS) software in place of new development, and requirements
analysis and synthesis from system level to individual software
components. Experience developing in Unix. Ability to perform shell
scripting. Working knowledge of Configuration Management (CM) tools
and Web Services implementation. · 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. · Has experience with
agile development processes. · Has experience with source code
control systems, such as Git. · Serve as team lead at the level
appropriate to the software development process being used on any
particular project. · Design and development of relational and
non-relational database applications. · Use of orchestration
frameworks such as Spring and Kafka. · Familiarization with queue
management systems · Develop or implement algorithms to meet or
exceed system performance and functional standards. · Develop and
execute test procedures for software components. · Develop software
solutions by analyzing system perfonnance standards and conferring
with users or system engineers; analyzing systems flow, data usage
and work processes; and investigating problem areas. · Modify
existing software 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
outcomes and consequences of design decisions · Java development
using the Eclipse IDE (Integrated Development Environment). ·
Development of Java 2 Enterprise Edition (J2EE) applications ·
Experience using collaboration and software development tools (ie.
Atlassian). · Software development using continuous integration
practices · Experience with container technologies (ie. Docker). ·
Unix shell scripting · Development of event driven or data driven
analytics · Development of cloud-based solutions and technologies.
· Design or implement complex algorithms requiring adherence to
strict timing, system resource, or interface constraints. Perform
quality control on team products. · Recommend and implement
suggestions 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 installation on a system and
monitor performance to ensure operational specifications are
met.
Keywords: Synergy ECP, Catonsville , Software Engineer 3, IT / Software / Systems , Annapolis Junction, Maryland