Principal Software Engineer
Role Overview
The successful candidate will be the lead developer for embedded software within DTECH, as well as supporting other projects.
It involves designing embedded software for new products (e.g. microcontroller firmware), as well as maintaining software for the existing devices.
The role will suit a self-starting individual with experience debugging low level issues through software and hardware analysis.
The development will largely be in C and C++, but experience with other languages would be beneficial.
The role requires close coordination with the electrical and systems engineering teams to ensure the software is robust and effective.
Key Skills for This Role
Full Job Posting
Job Details:
Job Summary:
The successful candidate will be the lead developer for embedded software within DTECH, as well as supporting other projects. It involves designing embedded software for new products (e.g. microcontroller firmware), as well as maintaining software for the existing devices. The role will suit a self-starting individual with experience debugging low level issues through software and hardware analysis. The development will largely be in C and C++, but experience with other languages would be beneficial. The role requires close coordination with the electrical and systems engineering teams to ensure the software is robust and effective.
Essential Job Duties And Responsibilities
Lead software projects, ensuring delivery of high-quality, reliable software
Liaise with the wider business to determine requirements for new projects and features, clearly communicating the resources required and potential risks involved
Drive usage of software development best practices to ensure code is well structured, unit tested and easy to maintain
Integrate and troubleshoot firmware on a target platform in the lab environment using hardware analysis tools
Provide guidance on design and implementation to other projects within adjacent software teams
Identify new ideas and tools for continuous improvement of development practices
Mentor junior engineers, providing help and training suggestions for their ongoing development
Education and Qualifications
Four-year college degree in computer engineering or other related technical discipline, plus a minimum of eight years of related experience or a master’s degree with at least six years of related experience.
Must be eligible for a DOD Security Clearence
Skills Knowledge and Experience
- Essential:
- Strong C/C++ experience
- Comprehensive understanding of embedded systems, including hardware-software interactions, real-time constraints, and low-level programming concepts
- Experience debugging in an embedded environment
- Experience using Unix commands and Linux based operating systems
- Able to analyse and solve complex software engineering problems
- Experience writing unit tests and using unit test frameworks
- Desirable:
- Experience using yocto
- Experience with tools & applications such as JIRA, Confluence and Git
- Personal Qualities
- A driven and self-starting individual, with a desire to write quality, effective software
- Good analytical skills, with a passion for finding simple solutions to complex problems
- Able to prioritize work and complete tasks to a deadline
- Good communication skills and ability to clearly convey complex ideas
- The description provided above is not intended to be an exhaustive list of all job duties, responsibilities and requirements. Duties, responsibilities and requirements may change over time and according to business need.
- #LI-Hybrid
- Worker Type:
- Employee
- Cubic Pay Range:
- The Cubic pay range for this job level is a general guideline only and not a guarantee of compensation or salary. Additional factors considered in extending an offer include (but are not limited to) responsibilities of the job, education, experience, knowledge, skills, and abilities, as well as internal equity, alignment with market data, applicable bargaining agreement (if any), or other law.
Worker Type:
We are committed to creating an inclusive workplace and welcome applications from people of all backgrounds. We do not discriminate based on any protected characteristic under applicable law.
Qualifications
- Strong C/C++ experience
- Comprehensive understanding of embedded systems, including hardware-software interactions, real-time constraints, and low-level programming concepts
- Experience debugging in an embedded environment
- Experience using Unix commands and Linux based operating systems
- Able to analyse and solve complex software engineering problems
- Experience writing unit tests and using unit test frameworks
- Experience using yocto
- Experience with tools & applications such as JIRA, Confluence and Git
- Personal Qualities
- A driven and self-starting individual, with a desire to write quality, effective software
- Good analytical skills, with a passion for finding simple solutions to complex problems
- Able to prioritize work and complete tasks to a deadline
- Good communication skills and ability to clearly convey complex ideas
- The description provided above is not intended to be an exhaustive list of all job duties, responsibilities and requirements. Duties, responsibilities and requirements may change over time and according to business need.
- #LI-Hybrid
- Employee
- The Cubic pay range for this job level is a general guideline only and not a guarantee of compensation or salary. Additional factors considered in extending an offer include (but are not limited to) responsibilities of the job, education, experience, knowledge, skills, and abilities, as well as internal equity, alignment with market data, applicable bargaining agreement (if any), or other law.
- We are committed to creating an inclusive workplace and welcome applications from people of all backgrounds. We do not discriminate based on any protected characteristic under applicable law.
About Cubic Corporation
Private American defense and public-transportation technology company serving governments, military forces, transit agencies, and commercial customers.
Visit company websiteJobs and hiring trendsApply for this job in 1 click
Skip the repetitive application forms
Install the Base Career Chrome Extension and autofill job applications across major job boards with your profile.
Trusted by over 500,000 job seekers on Base Career
More from this employer
More jobs at Cubic Corporation
Subcontracts Manager
, USA
Growth and Strategy Lead
Home, USA
Customer Service Representative
Fort Washington, USA
Quality controller inspector 2
Tullahoma, USA
Customer Service Representative
Burnaby, CAN
Manager Subcontracts
, USA
Program Manager
Concord, USA
Product Application Engineer
Durham, USA