Skip to main content
Tallo logoTallo logo

Find Jobs

Find Jobs Near You – Available Work in Your Location

Skip to job details

Back to Results

Apply for this opportunity

To apply for this job, you'll continue to an external website or email application.

The Copley Consulting Group

Principal Software Engineer (Embedded)

Career Insights for Software Developer / Engineer

See where this job fits in the broader career landscape. Knowing your career path helps you see what's possible from here.

Scorecard

Based on California data

Review key factors to help you decide if this role fits your goals. How is this calculated?

Were these scores useful?

What they do

A Software Developer or Engineer designs or improves computer software. Oversees the entire software development process. Analyzes customer or user needs, designs programs, writes code or instructs computer programmers, tests design, and documents programs. May assist with upgrades or maintenance. May specialize in the design of computer applications or computer systems.

$162,138 / year median in California

-13% projected decline

Explore Career

Job Description

The Judge Group is currently seeking a Principal Software Engineer (Embedded) to support a large Aerospace company. This is a full time, direct hire opportunity. The Principal Software Engineer (Embedded) has the opportunity to lead and develop a variety of innovative unmanned and robotic systems for multiple defense and commercial applications. The Embedded Software Engineer writes functional software for deployment on embedded devices and systems like aircraft and payloads and have the opportunity to test out those devices in flight test environments. This requires the engineer to design, develop, code, test and debug system software as well as analyze and enhance efficiency, stability and scalability of the software on particular devices. There is a mix of full life-cycle development as well as a need to use existing software code base to expand the capabilities to match specific program requirements. Position Responsibilities Writes and tests software to support integration of sensors and embedded processors into aircraft (such as autopilots, payloads, software defined radios or other functional components) or other robotic systems Designs and implements software for prototypes and products using established industry developed tools and practices. Ensure good configuration control and management of software Leads in writing of system requirements, system test plans, diagnostic tools, and in validation testing of software. Assist with hardware selection and recommend processing, memory and storage needs of systems Leads development of rapid prototyping and conceptual level testing and will require estimating time to develop software and scoping the depth of the development with project/program management to fit timeline and budget constraints Works closely with other engineering disciplines. Focused on getting the job done Leads and supports transition of development software to production environments and to certification. Participates in multi-disciplinary development teams Develops proof of concept capability demonstrations. Conducts and supports design reviews Works on significant and unique issues where analysis of situations or data requires evaluation of intangibles Other duties as assigned Basic Qualifications (Required Skills & Experience) A BS degree in Computer Science/Engineering, Electrical Engineering, Aerospace, Mechanical Engineering or related field is required or equivalent combination of education, training, and experience Minimum 12 - 15 years of experience years of relevant experience Experienced trouble-shooting systems is required and is proficient with Python, C, C++11,C++ STL and/or OpenCL Demonstrated knowledge of Visual Studio, Eclipse or similar IDE as well as defect tracking tools Experienced working with common protocols such as
RS-485, RS-232, CAN, I2C, SPI, USB
Demonstrated mathematical and analytical skills are required Periodic travel will likely be required in support of testing equipment at approved flying locations Periods of development may require long irregular hours around deadlines, weekends and some holidays and in field test environments Other Qualifications & Desired Competencies Advanced degree is preferred Demonstrates competency in contributing to the design, coding, documenting and testing software Experience with Test Driven Development (TDD) along with unit testing software Understanding of automated build environments along with automated test and deployment Demonstrated knowledge of object-oriented programming and multi-threaded design such as JIRA and source code control tools such as SVN, Bitbucket or GitLab Experience with STM32 family of processors and working with RTOS systems (such as µC/OS, freeRTOS) on those processors Experience using Video 4 Linux and modifying and compiling Embedded Linux systems Experience developing drivers for Linux/ARM is required, familiarity with Robot Operating System (ROS) is a plus Demonstrates electronics knowledge and use of lab equipment Demonstrates strong leadership, interpersonal and communication (written and verbal) skills Understanding of the design of the system that one is working on and understand the role that assigned tasks play in the system Demonstrates competency in researching and re-engineering to propose alternate solutions to issues Able to excel in a fast-paced, deadline-driven environment, where small teams share a broad variety of duties Displays strong initiative and drive to accomplish goals and meet company objectives Takes ownership and responsibility for current and past work products Is committed to learning from mistakes and driven to improve and enhance performance of oneself, others, and the company Has effective problem-solving, analytical, interpersonal and communication skills Focuses on teamwork, collaboration and puts the success of the team above one's own interests