Spotlight call- Thursday, 8/6/26 at 4pm (EST)
Location- Westbrook- Full Time in office- 5 days/week no hybrid). Please refrain from submitting non local candidates
Manager is looking to review candidate mid-next week (week of 8.10) in hopes to setup interviews/provide feedback the following week.
The project in question is porting the user space application of the CatDx instrument to an updated Linux platform. This system has a touch screen with a user interface written in QT. We have internal resources working out the embedded subsystems and kernel drivers. We are looking for someone to target a code to a new compiler and port all the sequencing, control and UI code to the updated platform.
Skill sets:
Embedded software experience with C++ on the ARM processor
Object oriented programming experience
Embedded Linux experience
QT GUI experience
Designs embedded software that controls operations of electromechanical subsystems in Company products, provides user interfaces, manages test results and allows product connectivity with other related systems. Develops real-time embedded programs to control motion-enabled subsystems, allowing these to move and perform various mechanical functions necessary to achieve their purpose of design. Builds applications that allow user operation of the Company products in a controlled manner. Coordinates with development project teams from prototype development, through the design phase, to production release. Participates in development of new product requirements, features and design. Ensures that end products meet specifications and quality requirements as defined by Company Quality Management System. Designs embedded software that controls operations of electromechanical subsystems in Company products, manages test results, provides user interfaces for these products and enables their connectivity with other related systems. Develops real-time embedded programs to control motion-enabled subsystems, allowing these to move and perform various mechanical functions necessary to achieve their purpose of design. Creates designs, configures and codes programs to the design specifications. Develops, designs, implements and tests algorithms to enable required functions to be performed, taking into account mechanical limitations, system constraints, workflow requirements and other variables. Builds applications that allow user operation and control of the machines. Develops tools or applications which allow efficient processing of large datasets for visualization and interpretation, estimating errors, statistical analysis and examining correlations, troubleshooting system behavior and testing algorithm changes or improvements. Tests final products to specifications and ensures that quality requirements are met. Coordinates with development project teams from design phase through to prototype development and production release. Participates in development of new product requirements, features and design. Evaluates field performance of existing software and systems and troubleshoots any problems by investigating root cause of software-related problems, diagnosing faults, reverse-engineering existing code Specifies, implements and tests modifications to existing software. Creates design, release and other related software/system documentation, utilizing vendor-supplied documentation as needed. Actively supports software engineering functional excellence objectives.
EDUCATION: Bachelors degree or equivalent combination of education and experience required.
REQUIRED SKILLS AND ABILITIES: Skills with mathematical and analytical techniques. Ability to understand complex electromechanical systems design and related issues. Ability to write macros and generate scripts for scientific visualization and analysis. Dedication to customer satisfaction in producing highest quality code, product and follow-through support. Familiar with source level software debugging techniques and related tools. Familiar with at least one flavor of Unix or Linux. Ability to code an Object-Oriented design in C++. Ability to read and understand existing C++ source code. Ability to understand UML specifications of software design elements. Working knowledge of Client desktop environment and analytical tools such as MATLAB, JMP and Structured Query Language (SQL). Fluency in the English language. Effective verbal and written communication skills, as both a listener and a speaker. Ability to work in a team environment as well as individually.
PHYSICAL DEMANDS: Extensive sitting, phone and computer use. Extend and reach with hands and arms and use hands and fingers. Occasionally required to climb, balance, bend, stoop, kneel or crouch. May be required to lift, move and carry up to 50 pounds. Specific vision abilities required include close vision, color vision, depth perception and the ability to adjust focus. Hearing acuity sufficient to effectively communicate with customers and Employees via telephone and in person. Ability to communicate verbally on phone and in person. Weekend hours and weekday overtime may be required.
WORK ENVIRONMENT: General office environment. Normal office noise level, with occasional moderate noise.