General Atomics Integrated Intelligence, Inc. (GA-I3) needs to maintain and deploy production solutions for users across the Intelligence Community, Department of Defense, and commercial industry. They aim to build and develop all-domain, globally focused situational awareness capabilities that process petabytes of data from numerous streaming data sources in near real time, applying state-of-the-art algorithms and machine learning techniques to extract features and fuse data from multiple phenomenologies to form a rich live view of objects. The Senior Software Engineer will contribute to this by designing, developing, and maintaining JVM-based applications for ingesting, processing, storing, analyzing, visualizing, and disseminating streaming data within Kubernetes environments.
Requirements
- Strong experience developing JVM-based applications (Java, Kotlin, or Scala).
- Hands-on experience with Kubernetes and cloud-native microservice architectures.
- Proficiency with CI/CD pipelines, ideally in GitLab.
- Experience working with streaming data technologies and visualization tools.
- Ability to test, troubleshoot, and deliver in classified or secure environments.
- Demonstrated expertise in cloud-native architectures, Kubernetes, CI/CD, and distributed data processing systems, with the ability to operate in secure environments.
- Background in distributed systems, data engineering, or DevSecOps.
Responsibilities
- Architect and implement applications on the JVM that ingest, process, store, analyze, visualize, and disseminate streaming data.
- Develop and operate containerized services in Kubernetes, ensuring scalability, resilience, and efficiency.
- Drive continuous integration and delivery pipelines using GitLab CI/CD to ensure frequent, reliable, and high-quality releases.
- Conduct thorough testing of software in classified environments to ensure compliance, security, and performance.
- Implement and maintain automated pipelines using GitLab CI/CD, with deployments validated in classified environments.
- Design, develop, and maintain JVM-based applications for ingesting, processing, storing, analyzing, visualizing, and disseminating streaming data within Kubernetes environments.
- Apply state-of-the-art algorithms and machine learning techniques to extract features and fuse data from multiple phenomenologies to form a rich live view of objects in the sky, on the sea, and on the ground.
Other
- Lead collaborative development practices such as mob programming and small team sprints.
- Provide coaching and guidance to junior developers to foster technical growth and team productivity.
- Travel periodically to customer sites to deploy updates, gather feedback, elicit requirements, and collaborate on planning future releases.
- Strong communication skills and willingness to interact directly with customers, including onsite visits.
- Ability to obtain and maintain DoD security clearance is required.