L&T Technology Services
Responsibilities
Develop Embedded Control Software: Design and implement the core C++ control software that drives automated lab instruments, handling everything from device initialization to high-level coordination of subsystems to error handling.
Orchestration & Scheduling: Develop and maintain scheduling and orchestration logic to coordinate instrument operations (e.g. sample handling, reagent dispensing, measurements) at high throughput (100+ samples/hour). Ensure timed execution of workflows across multiple embedded controllers.
Error Handling & Recovery: Build robust error handling and fault recovery mechanisms. Anticipate error conditions (device faults, step loss, etc.) and implement recovery sequences that allow the instrument to safely continue or gracefully halt with minimal downtime.
Firmware/Hardware Integration: Interface with distributed firmware microcontroller boards over a CANopen bus (coordinating 10+ boards). Maintain communication protocols and data models for commands/status and ensure reliable real-time messaging between the main software and firmware subsystems.
Cross-Functional Collaboration: Work closely with systems engineering to align software with hardware design, with assay scientists to understand requirements, and with quality/regulatory teams to meet compliance and documentation standards. Coordinate integration activities and troubleshooting across mechanical, electronics, and assay domains.
Technical Leadership & Mentoring: Mentor junior and mid-level software engineers by sharing best practices in embedded development, performing design and code reviews, and guiding problem solving. Lead architectural discussions and contribute to design documentation for new features and systems.
Lab work: Triaging and troubleshooting hardware/software integration issues, and providing expert technical guidance to cross-functional teams.
Testing & Automation: Drive improvements in software quality by expanding integration testing and simulation. Lead the development of hardware simulation frameworks and automated test suites to validate instrument behavior in CI/CD pipelines. Champion the use of continuous integration, unit testing, and other modern DevOps practices to increase software reliability and maintainability.
Skills
Education & Work Experience: bachelor’s or master’s degree in computer science, electrical/computer engineering, related field, or the equivalent experience. Prior experience in an embedded software engineering role designing complex instrument or device software.
Embedded C++ Expertise: Extensive experience programming in modern C++ for embedded systems, with a minimum of five years. Strong understanding of object-oriented design, multi-threading, and memory management in constrained environments.
RTOS/Embedded Linux Experience: Hands-on experience developing for embedded Linux (e.g., Yocto) or on real-time operating systems (e.g., QNX). Comfortable with low-level OS concepts, device drivers, and optimizing performance on single-board computers.
High-Reliability Systems: Proven ability to design software for high uptime and reliability. Experience with fail-safe mechanisms, state machines for complex device control, and graceful degradation of functionality under fault conditions.
Testing & CI/CD for Embedded: Familiarity with automated testing frameworks and continuous integration in an embedded context. Experience writing unit and integration tests for embedded code, using hardware-in-loop or simulation, and using CI tools to catch issues early.
Collaborative Communication: Excellent cross-functional communication and teamwork skills. Ability to work closely with other engineering disciplines and to clearly articulate technical information to non-software stakeholders.
Preferred Experience
Industry Domain: Background in laboratory equipment, clinical diagnostics, or medical device development. Familiarity with the regulatory environment and standards for medical device software (e.g. IEC 62304, ISO 13485) is a plus.
Fieldbus Communication: Solid knowledge of industrial communication protocols. Familiarity with CAN/CANopen is a plus – including defining CANopen object dictionaries, PDO/SDO communication, and network management – or comparable experience with similar fieldbus protocols (e.g. Modbus, EtherCAT).
Legacy System Modernization: Experience modernizing legacy codebase and bringing in contemporary best practices. For example, migrating software to newer C++ standards, refactoring for good architectural patterns, or introducing CI/CD and test automation to legacy embedded projects.
Lab Automation & Robotics: Exposure to lab automation robotics, fluidics control, or high-throughput instrumentation. Understanding of timing and scheduling challenges in systems that process many samples in parallel.
Simulation and Modeling: Experience with creating simulation models of hardware or using tools to emulate instrument components for testing. This could include using frameworks to simulate sensors/actuators or modeling physical processes to test control algorithms.
Salary The expected salary range for this position is between $61,000 to $1,10,500 annually. The actual salary may vary based upon several factors including, but not limited to, relevant skills/experience, time in role, base salary of internal peers, prior performance, business line, and geographic/office location.
Seniority Level Mid-Senior level
Employment Type Full-time
Benefits
Medical insurance
Vision insurance
401(k)
Disability insurance
#J-18808-Ljbffr
Develop Embedded Control Software: Design and implement the core C++ control software that drives automated lab instruments, handling everything from device initialization to high-level coordination of subsystems to error handling.
Orchestration & Scheduling: Develop and maintain scheduling and orchestration logic to coordinate instrument operations (e.g. sample handling, reagent dispensing, measurements) at high throughput (100+ samples/hour). Ensure timed execution of workflows across multiple embedded controllers.
Error Handling & Recovery: Build robust error handling and fault recovery mechanisms. Anticipate error conditions (device faults, step loss, etc.) and implement recovery sequences that allow the instrument to safely continue or gracefully halt with minimal downtime.
Firmware/Hardware Integration: Interface with distributed firmware microcontroller boards over a CANopen bus (coordinating 10+ boards). Maintain communication protocols and data models for commands/status and ensure reliable real-time messaging between the main software and firmware subsystems.
Cross-Functional Collaboration: Work closely with systems engineering to align software with hardware design, with assay scientists to understand requirements, and with quality/regulatory teams to meet compliance and documentation standards. Coordinate integration activities and troubleshooting across mechanical, electronics, and assay domains.
Technical Leadership & Mentoring: Mentor junior and mid-level software engineers by sharing best practices in embedded development, performing design and code reviews, and guiding problem solving. Lead architectural discussions and contribute to design documentation for new features and systems.
Lab work: Triaging and troubleshooting hardware/software integration issues, and providing expert technical guidance to cross-functional teams.
Testing & Automation: Drive improvements in software quality by expanding integration testing and simulation. Lead the development of hardware simulation frameworks and automated test suites to validate instrument behavior in CI/CD pipelines. Champion the use of continuous integration, unit testing, and other modern DevOps practices to increase software reliability and maintainability.
Skills
Education & Work Experience: bachelor’s or master’s degree in computer science, electrical/computer engineering, related field, or the equivalent experience. Prior experience in an embedded software engineering role designing complex instrument or device software.
Embedded C++ Expertise: Extensive experience programming in modern C++ for embedded systems, with a minimum of five years. Strong understanding of object-oriented design, multi-threading, and memory management in constrained environments.
RTOS/Embedded Linux Experience: Hands-on experience developing for embedded Linux (e.g., Yocto) or on real-time operating systems (e.g., QNX). Comfortable with low-level OS concepts, device drivers, and optimizing performance on single-board computers.
High-Reliability Systems: Proven ability to design software for high uptime and reliability. Experience with fail-safe mechanisms, state machines for complex device control, and graceful degradation of functionality under fault conditions.
Testing & CI/CD for Embedded: Familiarity with automated testing frameworks and continuous integration in an embedded context. Experience writing unit and integration tests for embedded code, using hardware-in-loop or simulation, and using CI tools to catch issues early.
Collaborative Communication: Excellent cross-functional communication and teamwork skills. Ability to work closely with other engineering disciplines and to clearly articulate technical information to non-software stakeholders.
Preferred Experience
Industry Domain: Background in laboratory equipment, clinical diagnostics, or medical device development. Familiarity with the regulatory environment and standards for medical device software (e.g. IEC 62304, ISO 13485) is a plus.
Fieldbus Communication: Solid knowledge of industrial communication protocols. Familiarity with CAN/CANopen is a plus – including defining CANopen object dictionaries, PDO/SDO communication, and network management – or comparable experience with similar fieldbus protocols (e.g. Modbus, EtherCAT).
Legacy System Modernization: Experience modernizing legacy codebase and bringing in contemporary best practices. For example, migrating software to newer C++ standards, refactoring for good architectural patterns, or introducing CI/CD and test automation to legacy embedded projects.
Lab Automation & Robotics: Exposure to lab automation robotics, fluidics control, or high-throughput instrumentation. Understanding of timing and scheduling challenges in systems that process many samples in parallel.
Simulation and Modeling: Experience with creating simulation models of hardware or using tools to emulate instrument components for testing. This could include using frameworks to simulate sensors/actuators or modeling physical processes to test control algorithms.
Salary The expected salary range for this position is between $61,000 to $1,10,500 annually. The actual salary may vary based upon several factors including, but not limited to, relevant skills/experience, time in role, base salary of internal peers, prior performance, business line, and geographic/office location.
Seniority Level Mid-Senior level
Employment Type Full-time
Benefits
Medical insurance
Vision insurance
401(k)
Disability insurance
#J-18808-Ljbffr