Senior Principal Software Engineer

Northrop Grumman Northrop Grumman · Aerospace · McClellan Park, CA +1 · Software

Senior Principal Software Engineer role at Northrop Grumman focusing on designing, developing, testing, and debugging software applications and systems for national defense capabilities. The role involves multidisciplinary research, collaboration with hardware engineers, and implementation across various system components. Responsibilities include building and enhancing software, using container engines, adhering to development standards, and contributing to product lines. Requires strong object-oriented development skills in C++, C#, or Java, proficiency in scripting languages like Python, experience with REST APIs, databases, Linux, DevOps tools, and networking. A TS/SCI clearance is mandatory.

What you'd actually do

  1. The new team member will design, develop, document, test and debug software applications and systems that contain logical and mathematical solutions.
  2. Conduct multidisciplinary research and collaborates with equipment designers and/andor hardware engineers in the planning, design, development, and utilization of software solutions.
  3. Determine computer user needs; analyzes system capabilities to resolve problems on program intent, output requirements, input data acquisition, programming techniques and controls; prepares operating instructions; designs and develops compilers and assemblers, utility programs, and operating systems.
  4. Implement solutions in multiple components of the system, including storage, OS, network, application, database, and many more.
  5. Provide system analysis as an actual user, including onsite visits, and contribute to the next iteration of the system through feedback and development.

Skills

Required

  • Bachelor’s degree in STEM plus 8 years of relevant experience; Master’s degree in STEM plus 6 years of relevant experience; PhD in STEM with 4 years of relevant experience.
  • Strong object-oriented development in C++ and/or C# and/or Java
  • Proficiency in scripting and web: Python, JavaScript, HTML, CSS
  • Experience designing and consuming REST APIs and pub/sub (topics) architectures
  • Data and storage: SQL/relational databases; basic experience with NetApp
  • Virtualization: basic VM provisioning and management
  • Solid Linux experience: filesystems/mounts, cron, bash scripting, services, permissions, users/groups
  • DevOps: GitLab (repos, runners, pipelines), integration with artifact/binary storage, use of monitoring tools (e.g., Grafana)
  • Networking: practical troubleshooting with tools like ss, nc, netstat, tcpdump, ip addr; understanding of core protocols and debugging strategies
  • Understanding of containers, containerized development, and deployment
  • End-to-end software development lifecycle experience
  • US Citizenship is required
  • A current/active U.S. Government TS/SCI clearance

Nice to have

  • Hands-on design, deployment, and dynamic management of containerized systems
  • Experience with Kubernetes (K8s, k3s) and cloud-native OS environments
  • Experience with modern software factories and DevOps/DevSecOps practices
  • Familiarity with Atlassian and CI/CD tools: Bitbucket, JIRA, Jenkins, Confluence
  • Advanced scripting in Python, Bash, and related languages
  • Deep Linux/UNIX experience in production environments
  • Practical experience working in Agile and DevOps teams
  • Strong background in object-oriented software design and implementation

What the JD emphasized

  • TS/SCI clearance
  • US Citizenship is required