Embedded Software Engineer
LeidosAbout the role
Today, Electronic Warfare is a growing enterprise - protecting the warfighter and our national security against ever-adapting threats. Our EW division currently has an exciting opportunity for an Embedded Software Engineer to perform design, development, and hardware/software integration in San Diego, CA for the Electronic Warfare Division.
Leidos is a DOD leader in electronic design and chiplet manufacture. Our division primarily focuses on research & development and advanced prototyping, transforming state-of-the-art processing algorithms into real-time software systems. Projects involve small multi-disciplinary teams of engineers working together in spiral or agile development environments to meet aggressive customer schedules aimed at near-term field demonstrations. Leidos utilizes its proprietary design methodology for hardware software co-design to manufacture custom SoC and IP for high performance applications.
In this role, the Embedded Software Engineer will build high-performance software to meet extreme system requirements. They will be responsible for designing and implementing components to support software development kits that are delivered directly to end users to support quick adoption and ease of use for novel SoC products. This role will require the ability to deeply understand hardware architectures to execute validation and verification testing, a crucial step to ensure hardware and software performance meets customer expectations.
Join a team of experts in implementing high-performance signal processing on custom system-on-chip (SoC) hardware and building the tools that enable analysis, rapid prototyping, and deployment of cutting-edge algorithms.
The successful candidate will be responsible for:
Contributing to the design and development of advanced embedded systems as a part of multidisciplinary teams. These teams are made up of other software team members and subject matter experts from the areas of systems engineering, hardware, firmware, RF front-end design, and signal processing.
Developing software for a variety of microarchitectures, including DSP, ARM, or RISC-V
Developing software for multi-core embedded systems ranging from bare metal to minimal real-time operating systems to Linux environments
Reading and comprehending datasheets to understand expected hardware operation
Building and documenting test plans, test procedures, and software requirements specifications
Writing low level code (e.g. C) to interface with Control Status Registers (CSRs) and hardware components
Writing software to validate hardware performance and operation under nominal and stress conditions
Building software using test driven development (TDD) methodologies
Documenting software performance results against key performance requirements for data-plane and control-plane processing
Understanding software use in high-level system design for real time software in operational systems
Clearly communicating technical details of software APIs and test results to internal and external engineers
At Leidos, we offer competitive benefits http://www.leidos.com/careers/pay-benefits, including 4 or more weeks Paid Time Off, 11 paid Holidays, 401K with a 6% company match and immediate vesting, Flexible Schedules, Discounted Stock Purchase Plans, Technical Upskilling, Education and Training Support, Parental Paid Leave, and much more. Join us and make a difference in Electronic Warfare Technology!
At Leidos we value passion for learning. If you believe you have what it takes to succeed in this role and are eager to learn, we encourage you to apply.
The successful candidate will have the following basic education/experience:
Bachelor’s Degree in Computer Engineering, Electrical Engineering, or Computer Science, or related discipline and 2 years of experience or a MS with relevant experience.
Strong software development experience, including experience in C/C++ software development for embedded systems
Experience using Integrated Development Environments (e.g. VS Code, Eclipse)
Experience with build tools (e.g. GCC, CMake, or Make)
Strong understanding of hardware-software interaction and basic computer architecture (e.g. Stack, Heap, Pointers)
Experience with version control systems (e.g. Git, Subversion) and continuous integration software tools (e.g. Jenkins)
Experience with software testing tools and methodologies
Experience in creating and maintaining technical documentation for developed software
Apply for this role
Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.
Apply Now →Generate Application KitFree account required — sign up in 30s