Principal Software Engineer

Sorry, this particular job is closed. But feel free to fill out a General Application

Search Jobs

General Apply

  • As an Equal Employment Opportunity Employer, DAVIS has reporting requirements which require us to invite employees to voluntarily self-identify their race/ethnicity. Submission of this information is voluntary and refusal to provided it will not subject you to any adverse treatment. The information obtained will be kept confidential.
  • Accepted file types: pdf, doc, docx, txt, rtf.
  • By applying to this position and providing my contact information, I give The DAVIS Companies permission to provide me with email communications and information.

Principal Software Engineer

  • Specialty:

  • Title:

    Principal Software Engineer
    • City:

    • State:

    • Zip Code:

  • Start date:

  • Status:

  • Assignment Type:

  • Job Id:



Senior/Principal Software Engineer

Explore and leverage your career with one of the world's foremost leaders in defense and security robotics. We are constantly creating robotic products that improve, impact, and change lives. Come work with some of the most talented and influential people in the robotics field utilizing cutting edge technologies, in an exciting, fast-growing industry.

In this role, you will collaborate with other developers, designers, testers, and business managers. You will have the opportunity to contribute to all aspects of the product development lifecycle. The ideal candidate must be able to pick up new technologies quickly, be a strong team player, and rapidly adapt to changing business and customer demands. The ideal candidate will also have experience building applications that control real time systems and/or experience building embedded robotic applications.

As a member of an extraordinarily creative, motivated and talented team, you will:

  • Develop new products that are used by the military, state & local, and industrial markets; these are the robots that save lives and keep people out of harms way.
  • Design, implement, and test mobile and robotic applications.
  • Collaborate with technical architects, test engineers, and user interface designers.
  • Write high quality code that is well documented and unit tested.
  • Participate in and drive code reviews.
  • Proactively write software documentation.
  • Maintain and identify areas for improvement in established software.
  • BS in Computer Science, or equivalent.
  • 8+ years of experience developing applications in C++.
  • Experience with multi-threaded programming.
  • Solid understanding of object oriented programming, design patterns, and data structures.
  • Track record of performing at a high level, delivering robust solutions on schedule.
  • Excellent communication skills.
  • Able to explain and defend own work.


  • MS in Computer Science.
  • Experience with Python.
  • Experience working in an Agile/Scrum environment.
  • Experience with communications protocols, particularly UDP/TCP, and socket programming.
  • Experience with video codecs and relevant libraries, especially ffmpeg.
  • Experience with the ROS framework.
  • Knowledge and experience using automated testing frameworks for embedded applications.



More Info


Similar Positions