Software Engineer I
Leidos
About the Role
The Undersea Systems Division at Leidos currently has an opening for a Software Engineer I in San Diego, CA. Candidate will join a fast-paced engineering group rapidly prototyping a variety of ocean systems. Collaborate across our medium-sized team holding complete technical responsibility for custom development and prototyping across many technical disciplines. Team prototyping efforts span from real-world problem-solving, all the way through concept development, followed by iterative design and testing, and conclude with product demonstrations. This position will require the candidate to maintain a Secret Clearance. This position will require the candidate to work an onsite 9/80B schedule (80 hours of work into nine days over a two-week period, allowing for every other Friday off) to align with the NIWC government team.
Key Responsibilities
- Collaborate with a small engineering team and customers to identify software requirements and evaluate candidate design approaches for solving wide-ranging technical problems.
- Work directly with customers to understand mission needs, translate operational objectives into technical requirements, demonstrate software capabilities, and incorporate feedback throughout development.
- Design and develop maintainable, robust, and performant software applications, services, data pipelines, and user interfaces.
- Develop Python-based software for data processing, analytics, hardware integration, automation, and test applications.
- Build and integrate web-based and desktop user interfaces that enable users to configure systems, visualize data, and monitor operational performance.
- Implement, test, integrate, and verify that software solutions satisfy project and customer requirements for functionality, reliability, performance, and usability.
- Develop and maintain engineering documentation, interface control documents, software requirements specifications, test procedures, and user documentation.
- Communicate regularly across the engineering team and with customers to coordinate development efforts, anticipate design changes, prioritize feature implementations and bug fixes, and solicit feedback.
- Support laboratory, field, and at-sea testing of prototype systems, including troubleshooting software, hardware interfaces, and operational data flows.
- Present technical concepts, development progress, test results, and product demonstrations directly to customers and other stakeholders.
Requirements & Tech Stack
- U.S. Citizen with an active SECRET security clearance or the ability to obtain one.
- Relevant professional, internship, academic, or project experience developing and integrating software applications.
- Proficiency in Python and experience using Python to develop applications, automation tools, data-processing solutions, or hardware-control software.
- Experience designing, developing, and integrating REST APIs.
- Proficiency in software version-control processes and tools such as Git and GitHub.
- Working knowledge of Linux command-line tools and shell scripting.
- Experience testing software and debugging applications that integrate multiple data sources, services, or hardware components.
- Ability to work effectively within a small, multidisciplinary team and contribute across multiple phases of the software-development lifecycle.
- Ability to interact directly and professionally with customers, including gathering requirements, communicating technical tradeoffs, presenting demonstrations, and responding to feedback.
- Ability to understand complex technical documents and communicate technical ideas effectively in writing, orally, and visually.
Qualifications
- Bachelor’s degree from an accredited institution in Computer Science, Software Engineering, Computer Engineering, or another related STEM field.
- Deep experience in firmware and software design and design processes.
Preferred Qualifications
- Experience with C++ and integrating software with purpose-built electro-mechanical or embedded systems.
- Experience developing modular test architectures that support live hardware, recorded data, simulation, or other test inputs.
- Experience integrating operational telemetry, environmental data, or external web services into software applications.
- Experience developing interactive dashboards, data visualizations, geospatial maps, or configurable filtering capabilities.
- Experience with test automation, build automation, static analysis, and continuous integration processes.
- Familiarity with common embedded or network communications protocols such as Ethernet, TCP/IP, or serial communications.
- Familiarity with embedded electronics test equipment, including power supplies, oscilloscopes, and hardware debuggers.
- Experience supporting laboratory, field, pier-side, or at-sea system integration and testing.
- Experience working directly with government, defense, or technical customers in a rapid-prototyping environment.
- Ability to operate independently, manage changing priorities, and assume broad technical responsibilities within a small team.