Principal Engineer Software
NEWNorthrop Grumman · United States-Colorado-Colorado Springs, United States
- Contract
- Full time
- Base
- United States-Colorado-Colorado Springs, United States
- Field
- IT & Digital
- Posted
Description
At Northrop Grumman, our employees have incredible opportunities to work on revolutionary systems that impact people's lives around the world today, and for generations to come. Our pioneering and inventive spirit has enabled us to be at the forefront of many technological advancements in our nation's history - from the first flight across the Atlantic Ocean, to stealth bombers, to landing on the moon. We look for people who have bold new ideas, courage and a pioneering spirit to join forces to invent the future, and have fun along the way. Our culture thrives on intellectual curiosity, cognitive diversity and bringing your whole self to work — and we have an insatiable drive to do what others think is impossible. Our employees are not only part of history, they're making history.Northrop Grumman Space Systems is seeking a Software Engineer to support a program developing and fielding a new ground-based radar performing Space Domain Awareness (SDA) missions. As a Software Engineer on this program, you will be a key member of the technical team and will contribute to the design, implementation, integration, and sustainment of software supporting mission execution, system control, data processing, and long-term sustainment of the radar system.
The ideal candidate will have a strong foundational knowledge of software engineering and be able to collaboratively apply systems engineering principles to define, develop, test, debug, and document software solutions across the program.
Basic Qualifications
- Experience developing software in Java
- Experience building services or microservices using Spring Boot
- Experience with containerization technologies such as Docker or Podman
- Experience with Kubernetes for container orchestration and deployment
- Experience with Bash or other scripting languages for automation
- Experience with Git for source control
- Experience with GitLab and CI/CD pipelines for automated build, test, and deployment
- Experience developing software in a Linux environment
- Experience with RESTful APIs and JSON-based interfaces
- Experience with unit testing and integration testing (e.g., JUnit, Mockito)
- Familiarity with relational databases (e.g., PostgreSQL, MySQL) and basic SQL
- Experience using debugging tools and techniques for Java and Linux (e.g., IDE debuggers, jstack, jmap, strace, gdb, log-based debugging)
- Experience troubleshooting containerized applications in Kubernetes (e.g., analyzing pod logs, events, health checks, and resource usage)
- Experience diagnosing performance issues (e.g., thread contention, memory leaks, inefficient queries, CPU/memory bottlenecks)
- Ability to systematically reproduce, isolate, and resolve defects from logs, metrics, and user-reported issues
- Ability to work collaboratively in a team environment and follow established software development processes
- Strong analytical, problem-solving, and debugging skills
- Effective written and verbal communication skills
- Must have an active U.S. Government Secret security clearance at time of application, current and within scope
Preferred Qualifications
- Experience with cloud-native or on-premise distributed systems
- Experience designing and implementing microservice architectures
- Experience with message-based or streaming systems (e.g., Kafka, RabbitMQ)
- Experience with API gateways and service discovery mechanisms
- Experience with infrastructure-as-code tools (e.g., Ansible, Terraform, Helm)
- Experience with monitoring, logging, and observability for containerized applications (e.g., Prometheus, Grafana, ELK/EFK stack)
- Experience performing root-cause analysis in distributed systems using logs, traces, and metrics
- Experience with profiling and performance tuning of Java applications (e.g., VisualVM, JFR, JMC, async profilers)
- Experience implementing robust logging and error-handling strategies to support production debugging
- Experience with secure coding practices and basic understanding of cybersecurity principles
- Experience with Agile/Scrum software development methodologies
- Experience integrating with C/C++ or other languages in mixed-technology systems
- Experience working on real-time or mission-critical systems, such as radar, command and control, or other defense-related applications
- Familiarity with DevSecOps practices and automated security/scanning in CI/CD (e.g., SAST/DAST tools)
