Senior Embedded Software Engineer

IQ Inc. is dedicated to providing creative, high-quality software to our clients while supplying a rewarding, fun, collaborative, and flexible work environment to our team. We are currently in need of a Senior Embedded Software Engineer that will contribute to the design and development of distributed control software within a robotic device. This role will be responsible for ensuring that the design and implementation are robust, maintainable, and meet requirements.

The software architecture is component-based, using modern C++ features. This role works directly with other engineering disciplines to design, implement, and verify subsystems in a highly collaborative environment, following and contributing to best practices in engineering. Excellent communication skills are a must! 
 
Responsibilities: 
•    Works within the team to build product deliverables based on overall architecture direction
•    Works closely with business stakeholders to understand business requirements 
•    Works in an agile environment implementing software for specific requirements 
•    Develops clear and readable code 
•    Creates unit, functional, and integration testing environments or components and root cause analyses (replicate, debug) for simple to moderately complex features 
•    Meets the ‘Definition of Done’ and promotes coding standards 
•    Participates in team retrospectives to improve the software development process 
•    Works on business-critical products that operate with high reliability and are distributed nationwide to many clients 
•    Troubleshoots problems with existing or newly-developed software 
•    Mentors junior engineers to help with their careers and skill 

Basic Qualifications:
  • Bachelor’s degree in Computer Science, Software Engineering, Computer Engineering, Electrical Engineering, Electrical Engineering Technology, or other engineering field of study with programming course work
  • Minimum 10 years of experience in software engineering using one of more of the following: Java, C, C++ or C#

Preferred Qualifications:

  • Experience with machine automation
  • Experience developing software in a regulated industry
  • Experience with low-level embedded systems and “bare metal” coding
  • Experience with cross-functional engineering teams
  • Experience with Python, Lua, JavaScript, Perl, or other interpreted languages
  • Familiar with Agile practices 
 
We're also looking for someone who is an analytical thinker, motivated by working as part of a terrific team, is great with people, and doesn’t take themselves too seriously.   

IQ Inc. provides equal employment opportunities (EEO) to all employees and applicants for employment without regard to race, color, religion, sex, national origin, age, disability or genetics. In addition to federal law requirements, IQ Inc. complies with applicable state and local laws governing nondiscrimination in employment in every location in which the company has facilities. This policy applies to all terms and conditions of employment, including recruiting, hiring, placement, promotion, termination, layoff, recall, transfer, leaves of absence, compensation and training.

IQ Inc. expressly prohibits any form of workplace harassment based on race, color, religion, gender, sexual orientation, gender identity or expression, national origin, age, genetic information, disability, or veteran status. Improper interference with the ability of IQ Inc.’s employees to perform their job duties may result in discipline up to and including discharge.
 



Want to apply later?

Type your email address below to receive a reminder

ErrorRequired field

Apply to Job

ErrorRequired field
ErrorRequired field
ErrorRequired field
ErrorRequired field
Error
insert_drive_file
insert_drive_file
ErrorRequired field
ErrorRequired field