The Embedded Software Engineer will be responsible for the development of embedded software applications and the modification/maintenance of existing embedded software.

Experience/Education Requirements: 

  • Bachelor's degree in Electrical Engineering, Computer Engineering or Computer Science
  • 5+ years of experience in embedded systems
  • Experience with FPGA logic design, synthesis and layout
  • Experience with VHDL or Verilog coding and programming
  • Experience with C and/or C++ program design, development, and troubleshooting
  • Experience in the development of scientific software preferred
  • Experience with digital image processing and digital signal processing preferred
  • Experience leading a team preferred

Knowledge, Skills & Abilities:

  • Experience with Nvidia CUDA a plus
  • Experience with OpenCV a plus
  • Experience with Nvidia CUDA optimization and OpenCV is a plus.
  • Linux development experience

Principal (Essential Duties):

  • Evaluates and creates specifications, architecture and design of software products independently and in collaboration with the Software team
  • Participate in the development, debugging, testing, deployment, maintenance and all phases of the Software Development Lifecycle (SDLC)
  • Provides technical guidance and support to all software development team members
  • Provides guidance in developing solutions to complex software programming problems, which requires the knowledge from past software experiences and creativity.
  • Participate in all facets of agile software development initiatives including iteration/sprint planning, scheduling, retrospect's, troubleshooting, paired programming, debugging, unit testing, code reviews and support software process improvements
  • Accurately scopes project time and resources required to complete programming projects
  • Plays a core role in team based creation of requirements, specifications, architecture and design of software products
  • Produce high-quality, documented, reusable and testable code both independently and in a team environment
  • Investigates components of new tools and techniques
  • Maintains current knowledge on the latest technologies relevant to the role regarding algorithms, language, design methodology, third-party development tools, application platforms, hardware compatibility and operating systems.


Attach a resume file. Accepted file types are DOC, DOCX, PDF, HTML, and TXT.

We are uploading your application. It may take a few moments to read your resume. Please wait!

Embedded Software Engineer