Share this Job

Embedded Software Engineer

Date: Jun 20, 2022

Location: Lorton, Virginia, US

Company: QinetiQ

Who Are We?

We are a world-class team of professionals who deliver next generation technology and products in robotic and autonomous platforms, ground, soldier, and maritime systems in 50+ locations world-wide. Much of our work contributes to innovative research in the fields of sensor science, signal processing, data fusion, artificial intelligence (AI), machine learning (ML), and augmented reality (AR).

QinetiQ Inc.’s dedicated experts in defense, aerospace, security, and related fields all work together to explore new ways of protecting the American Warfighter, Security Forces, and Allies. Being a part of QinetiQ Inc. means being central to the safety and security of the world around us. Partnering with our customers, we help save lives; reduce risks to society; and maintain the global infrastructure on which we all depend. 

Why Join QinetiQ Inc.?

If you have the courage to take on a wide variety of complex challenges, then you will experience a unique working environment where innovative teams blend different perspectives, disciplines, and technologies to discover new ways of solving complex problems.  In our diverse and inclusive environment, you can be authentic, feel valued, be respected, and realize your full potential. QinetiQ Inc. will support you with workplace flexibility, a commitment to the health and well-being of you and your family and provide opportunities to work with a purpose. We are committed to supporting your success in both your professional and personal lives.

QinetiQ is seeking a highly motivated and accomplished Embedded Software Engineer who has skills in a myriad of software development disciplines to serve as a key member of our software engineering directorate.  Primary responsibilities will be leading/executing the design, development, and testing of solutions on Linux/Windows, MCUs (MicroController Unit) and FPGA platforms and working with a talented team of software and firmware engineers under such efforts. A successful candidate will be responsible for managing the development of efficient multi-threaded data acquisition, control, and processing software for sensor based / EO-IR systems, managing the execution of software development efforts utilizing industry standard software engineer DEVOPS tools/practices (e.g., Jira, Confluence, GitLab, GitFlow) and owning the overall software technical solutions. Such software requires working with a variety of interface technologies and protocols including TCP/IP, USB, GStreamer, CameraLink, GigE Vision, USB3 Vision, CoaXPress, RS-232/422/485, I2C, GPIO, embedded systems including MCUs (MicroController Unit) as well as optimized libraries such as CUDA, OpenCV and OpenCL. Software developed will be hosted on both general purpose and embedded computing platforms. A successful candidate must be able to communicate effectively and work closely with hardware and systems engineers in a multi-disciplinary team environment.


Your Contribution to Our Mission:


  • Participate in the architecture design of complex embedded sensor and signal processing functions hosted within COTS, GOTS and custom electronic hardware consisting of both CPU, MCU and FPGA hardware resources. Architectures must support very high bandwidth data ingest, data manipulation, storage and system housekeeping functions with deterministic performance
  • Actively design, develop and employ near real time algorithms using parallel programming and embedded technologies (e.g., GPUs, multi-core CPUs, FPGAs)
  • Evaluate algorithm performance and recommend the most appropriate parallel programming and embedded technologies for implementation
  • Develop software and firmware source code in C/C++ and other languages to instantiate the capabilities required of the chosen architecture
  • Perform both simulation and Hardware-In-The-Loop testing to validate designs and code for robust and reliable performance
  • Work closely with Software Engineers and Electrical Engineers to diagnose faults and rapidly identify/repair the root cause.
  • Develop presentation materials to summarize designs for both peer and general technical audiences


To Land This Job, You Need:


  • B.S. in Computer Science, Software Engineering, Electrical Engineering, Computer Engineering or applicable engineering or science field
  • Three or more years’ experience
  • Experience with FPGA Development (Xilinx & PetaLinux preferred)
  • Strong Object-Oriented design and development skills
  • Strong multi-threaded / multi-core / concurrent programming skills
  • Experience/expertise in video and image processing, preferably utilizing optimized libraries such as CUDA, OpenCV, OpenCL and GStreamer
  • Experience/expertise in designing, developing, and testing data acquisition and control software for sensor-based systems utilizing a variety of technologies and protocols (e.g., TCP/IP, USB, CameraLink, GigE Vision, USB3 Vision, CoaXPress, RS-232/422/485, I2C, and GPIO)
  • Experience in working with medium to high complexity hardware/software systems
  • Excellent written and verbal communication skills
  • The ability to obtain and maintain a SECRET security clearance, therefore U.S. Citizenship is required
  • To maintain a professional appearance and demeanor in an employee/customer environment
  • Strong problem-solving skills, including the ability to readily decompose complex problems into smaller, manageable tasks


Desired Skills:


  • Experience/expertise employing software engineering DEVOPS tools/practices (e.g., Jira, Confluence, GitLab, GitFlow)
  • Experience with Interface Control Documents (ICDs) and/or Interface Description Documents (IDDs)
  • Experience with US Army Ground Combat Vehicle System Electronics Hardware and Software
  • Experience with a variety of DoD (e.g., WMI, DSTAT, JAUS, CoT, ISA) and standard (UDP, Multicast, TCP, protobuf, XML, CAN) data transfer and network protocols/frameworks
  • Experience with HDL Code Development (VHDL, Verilog, System Verilog)
  • Experience/expertise employing complex data structures (e.g., queues, stacks, maps, dictionaries, lists, vectors, iterators, sets)
  • Experience/expertise employing industry accepted programming constructs/practices (e.g., thread pools, abstract class implementations, unit testing, concurrency)
  • Experience/expertise with various programming and scripting languages (e.g., C, C#/.NET, Python)
  • Experience/expertise designing and developing GUIs
  • Experience/expertise in Linux Systems & Network Administration
  • Cross platform (Linux, Windows) software development experience
  • Hardware and software system integration experience/expertise
  • Experience successfully leading a team of software engineers


Job Type:  Full Time

Clearance Level Must Be Able to Obtain:

DOD Secret




No One Has Time for Long Job Applications!

We completely understand, that is why we have made the application process easy. We promise. This will be simple.


If because of a medical condition or disability you need a reasonable accommodation for any part of the employment process, please send an e-mail to or call (540) 658-2720 Opt. 4 and let us know the nature of your request and contact information.

QinetiQ Inc. is an Equal Opportunity/Affirmative Action employer. All Qualified Applicants will receive equal consideration for employment without regard to race, age, color, religion, creed, sex, sexual orientation, gender identity, national origin, disability, or protected Veteran status.