Key Responsibilities: Analyze user requirements and translate them into software design and performance specificationsDesign, develop, test, and maintain software solutionsDebug and resolve software defects and performance issuesModify and enhance existing software to add new features or improve functionalityIntegrate software into new or existing systems and environmentsDevelop algorithms and data processing solutions to meet system requirementsDesign and implement database queries and interfacesWrite, review, and maintain technical documentationContribute to system design, including hardware/software tradeoffs and reuse of existing componentsSupport testing activities and validate software performanceCollaborate with cross-functional teams to ensure successful solution deliveryRecommend improvements to development processes, tools, and technologiesProvide technical leadership as needed based on project scopeQualifications: 12+ years of experience as a Software Engineer supporting programs of similar scope and complexityBachelor's degree in Computer Science or a related field4 additional years of relevant experience may be substituted for the degreeExperience developing and maintaining complex software systems, analyzing requirements and implementing software solutions, debugging, testing, and maintaining codebases, and working within structured software development methodologies. Desired Qualifications:Experience with Angular and RxJS for front-end development Familiarity with the Spring Boot framework Experience with a subset of the following technologies: Java, Spring (MVC, Data, Security) Kafka, JMS Oracle, Elasticsearch Docker, Kubernetes (K8s) Maven, Gradle GitLab, CI/CD pipelinesRequirements: U.S. Citizenship is required for all applicants.