Principal Software Engineer

Nabout Leidos
United States
2 days ago
Apply on jobs.military.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience required
1 year minimum
Compensation
$154,050.0 - $278,475.0
Working hours
Regular working hours

Tech stack

Java (Programming Language) JavaScript (Programming Language) Bash Shell Cloud Computing Computer Programming Databases Linux Data Flow Control Design of User Interfaces Apache Hadoop Web Servers Information Systems Security Architecture Professional
+24 more
JSON Python (Programming Language) MySQL Network Protocols Red Hat Enterprise Linux Ansible Scala (Programming Language) Server Supported Gaming Software Engineering Subversion Virtualization Technology Web Services Extensible Markup Language (XML) Scripting Test-Driven Development (TDD) Apache Spark Git Containerization Information Technology Puppet Restful APIs Splunk Software Version Control Docker

Requirements

  • Minimum of twenty (20) years of experience as a Software Engineer supporting programs or contracts of similar scope, type, and complexity.\n
  • Bachelor’s degree in Computer Science or a related discipline from an accredited college or university.\n
  • Four (4) additional years of Software Engineering experience on projects using similar software processes may be substituted for the bachelor’s degree.\n, * 4+ years of experience with databases, Ansible, JSON, JavaScript, and Bash scripting.\n
  • 2+ years of experience with Splunk.\n
  • 15+ years of experience with Linux.\n
  • Experience providing system/server support, including operating system and application installation, configuration, administration, and troubleshooting.\n, * Working knowledge of project data-flow technologies, including Niagrafiles, low-latency message transport, smart-collection systems, site-specific distribution management, and relevant protocols.\n
  • Working knowledge of Puppet.\n
  • Red Hat Certified System Administrator (RHCSA) or Red Hat Certified Engineer (RHCE).\n, * 4+ years of experience with cloud technologies and Docker containerization.\n
  • 5+ years of experience with RESTful APIs and web services.\n
  • 9+ years of experience with Python, databases, JSON, Bash/Shell scripting, Java, XML, Scala, and Pig.\n
  • 10+ years of experience with Splunk.\n
  • Experience with Hadoop, Spark, or similar technologies.\n
  • 10+ years of experience with Linux.\n, * 1+ years of experience designing and developing RESTful applications.\n
  • 1+ years of experience with MySQL databases.\n
  • 1+ years of relevant UI/UX design experience.\n
  • 5+ years of relevant Java or JavaScript experience.\n
  • Ability to create and deploy applications to a web server.\n
  • 6+ years of programming experience on Linux platforms.\n
  • 6+ years of experience with test-driven development.\n
  • 7+ years of experience using version-control applications such as Git or Subversion (SVN).\n
  • Familiarity with network protocols, hardware, virtualization, security architectures, and firewall technologies.\n, * 4+ years of experience with databases, JSON, JavaScript, Python, and Bash scripting.\n
  • 10+ years of relevant software-development experience.\n
  • 15+ years of experience with Linux.\n
  • Experience providing system/server support, including operating system and application installation, configuration, administration, and troubleshooting.\n
  • Familiarity with network protocols, hardware, virtualization, security architectures, and firewall technologies.\n

Benefits & conditions

n Leidos is a FORTUNE 500® company bringing a mix of innovative technology and sector expertise to customers in the national security, engineering, and health industries. We deliver innovative solutions through the efforts of our diverse and talented people who are dedicated to our customers’ success. Guided by our Mission, Vision, and Values, Leidos empowers its teams, contributes to its communities, and operates sustainably-always with a commitment to doing the right thing for our customers, our people, and our community. The Leidos \nIntel Sector combines technology-enabled services and mission software capabilities in the areas of cyber, logistics, security operations, and decision analytics to support Intelligence Community customers as they address evolving national security challenges.\n \n \nAbout the Opportunity\n \n Leidos is seeking a \nPrincipal Software Engineer to provide advanced software engineering and technical leadership for complex mission software systems. You will develop, maintain, integrate, and enhance software while helping establish the technical approaches, development processes, and quality standards used across software-development efforts. At this level, you will serve as a technical lead across multiple software-development teams, coordinate closely with customers and systems engineering, evaluate new technologies and processes, and help ensure developed and modified software meets demanding functional, performance, interface, and operational requirements.\n \n Depending on assignment, the technical environment may emphasize Linux and Splunk platforms, cloud and distributed data technologies, full-stack application development, Python/C++ development, or Linux-based mission data-processing systems.\n \n \nWhy This Role Matters\n \n Complex mission software requires more than strong individual development skills. It requires experienced technical leadership capable of making sound engineering decisions across teams while maintaining quality, performance, integration, and mission alignment. As a Principal Software Engineer, you will apply deep technical expertise while helping guide how software is designed, developed, tested, integrated, and delivered across complex engineering efforts.\n \n \nWhat You’ll Do\n \n \nAdvanced Software Design & Development\n \n \n

  • Analyze user requirements to derive software design and performance requirements.\n
  • Design and code new software and modify existing software to add capabilities.\n
  • Debug software, correct defects, adapt applications to new hardware, and improve performance.\n
  • Develop and implement algorithms that meet or exceed system functional and performance standards.\n
  • Design or implement complex algorithms subject to strict timing, system-resource, or interface constraints.\n
  • Design, develop, and modify software systems using scientific analysis and mathematical models to evaluate design outcomes and consequences.\n

\n \nIntegration, Data & Systems Engineering\n \n \n

  • Integrate existing software into new or modified systems and operating environments.\n
  • Develop data queries for existing or proposed databases and data repositories.\n
  • Design and implement complex database and data-repository interfaces and queries.\n
  • Develop software solutions by analyzing system performance standards, system flows, data usage, work processes, and technical problem areas.\n
  • Confer with systems engineers and hardware engineers to derive software requirements and understand project limitations, capabilities, performance requirements, and interfaces.\n
  • Contribute to system-design decisions involving hardware/software tradeoffs, software reuse, COTS/GOTS alternatives, and requirements allocation.\n
  • Coordinate software-system installation and monitor equipment functioning to ensure operational specifications are met.\n

\n \nTesting, Quality & Engineering Practices\n \n \n

  • Review and test software components for adherence to design requirements and document test results.\n
  • Develop and execute test procedures for software components.\n
  • Resolve software problem reports.\n
  • Perform quality control on team products and ensure quality control of developed and modified software.\n
  • Write and review software and system documentation.\n
  • Recommend and implement improvements to documentation and software-development process standards.\n
  • Apply software-development and design methodologies appropriate to the development environment.\n

\n \nTechnical Leadership & Engineering Direction\n \n \n

  • Serve as technical lead for multiple software-development teams.\n
  • Oversee software-development teams and ensure work is completed within the constraints of the development process being used.\n
  • Recommend new technologies and processes for complex software projects.\n
  • Select the software-development process in coordination with the customer and systems engineering.\n
  • Delegate programming and testing responsibilities to one or more teams and monitor team performance.\n
  • Provide technical leadership appropriate to the software-development process and project environment.\n
  • Coordinate engineering activities with customers, users, systems engineers, hardware engineers, and other technical stakeholders.\n

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on jobs.military.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

4:18 min

Prioritizing communication and structural awareness over strict tool mastery

Liam Hurrel +1 · World Congress 2021

6:21 min

Investigating push inefficiencies with upstream Git experts

Jonathan Creamer · Coffee With Developers

3:47 min

Exploring JSON, CBOR, and JOSE for data serialization

Aaron Russell · LIVE

2:18 min

Scaling MySQL databases for massive user growth

Johannes Nicolai Johannes Nicolai +1 · LIVE

1:20 min

Identifying multi-disciplinary talent for developer experience engineering roles

Hazal Mestci +1 · Coffee With Developers

56 sec

Favorite git commands and the importance of patch commits

Eileen Uchitelle Eileen Uchitelle +1 · Coffee With Developers

Videos

See all

Related articles

See all