Description
Leidos is seeking a Senior Software Engineer to develop, integrate, and enhance complex software systems supporting critical mission needs.
You will solve challenging software and system problems, develop performance-driven solutions, integrate software into operational environments, and contribute technical leadership across the software development lifecycle.
At this level, you will also help ensure the quality of team products, implement improvements to engineering practices, collaborate with systems and hardware engineers, and oversee software-development activities as appropriate to the project.
Depending on assignment, the technical environment may emphasize Linux and Splunk engineering, cloud and distributed data platforms, or full-stack application development.
Software Design & Development
- Analyze user requirements to derive software design and performance requirements.
- Design and code new software and modify existing software to add capabilities.
- Debug software, correct defects, adapt applications to new hardware, and improve software performance.
- Develop and implement algorithms that meet or exceed system functional and performance standards.
- Design or implement complex algorithms subject to strict timing, system-resource, or interface constraints.
- Design, develop, and modify software systems using appropriate scientific analysis and mathematical models to evaluate design outcomes and consequences.
Integration, Data & System Engineering
- Integrate existing software into new or modified systems and operating environments.
- Develop data queries for existing or proposed databases and data repositories.
- Design and implement complex database and data-repository interfaces and queries.
- Develop software solutions by analyzing system performance standards, system flows, data usage, work processes, and technical problem areas.
- Confer with systems engineers and hardware engineers to derive software requirements and understand project limitations, capabilities, performance requirements, and interfaces.
- Contribute to system-design decisions involving hardware/software tradeoffs, software reuse, COTS/GOTS alternatives, and requirements allocation.
- Coordinate software-system installation and monitor equipment functioning to ensure operational specifications are met.
Testing, Quality & Engineering Practices
- Review and test software components for adherence to design requirements and document test results.
- Develop and execute test procedures for software components.
- Resolve software problem reports.
- Perform quality control on team products.
- Write and review software and system documentation.
- Recommend and implement improvements to documentation and software-development process standards.
- Apply software-development and software-design methodologies appropriate to the development environment.
Technical Leadership
- Serve as a team lead at the level appropriate to the software-development process and project.
- Oversee one or more software-development teams and help ensure work is completed within the constraints of the development process being used.
- Coordinate technical activities with users, systems engineers, hardware engineers, and other engineering disciplines.
Required Qualifications
- TS/SCI with Polygraph upon Application.
- Minimum of fourteen (14) years of experience as a Software Engineer supporting programs or contracts of similar scope, type, and complexity.
- Bachelor's degree in Computer Science or a related discipline from an accredited college or university.
- Four (4) additional years of Software Engineering experience on projects using similar software processes may be substituted for the bachelor's degree.
Assignment-Specific Technical Requirements
- Project 1 – Linux, Splunk & Platform Automation
+ 2+ years of experience with databases, Ansible, JSON, JavaScript, and Bash scripting. + 2+ years of experience with Splunk. + 10+ years of experience with Linux. + Familiarity with network protocols, hardware, virtualization, security architectures, and firewall technologies.
- Project 2 – Splunk, Cloud & Distributed Data Systems
+ 2+ years of experience with cloud technologies and Docker containerization. + 3+ years of experience with RESTful APIs and web services. + 5+ years of experience with Linux. + 6+ years of experience with Python, databases, JSON, Bash/Shell scripting, Java, XML, and Scala. + 6+ years of experience with Splunk, including query language, reporting, dashboards, applications, data ingestion, integration, administration, and data modeling. + Familiarity with Hadoop, Spark, or similar technologies.
- Project 3 – Full-Stack Application Development
+ 1+ years of experience designing and developing RESTful applications. + 1+ years of experience with MySQL databases. + 1+ years of relevant User Interface/User Experience (UI/UX) design experience. + 5+ years of relevant Java or JavaScript experience. + 6+ years of programming experience on Linux platforms. + 6+ years of experience with test-driven development. + 7+ years of experience using version-control applications such as Git or Subversion (SVN).
Pay Range: $131,300.00 - $237,350.00