Controls Engineer – Model-Based Design (HVAC)
Job Description
This role focuses on designing, developing, and validating advanced control systems and embedded software for commercial and residential HVAC applications using model-based design methodologies. You will collaborate closely with cross-functional engineering and test teams to create robust control algorithms, define and trace requirements, and build automated verification workflows that ensure high-quality control software throughout the product lifecycle.
Responsibilities
- Design, develop, verify, and validate control systems and embedded software solutions for HVAC products using model-based design techniques.
- Develop controls-oriented models in MATLAB, Simulink, Stateflow, and Simscape to implement control and diagnostic strategies that meet performance requirements and system constraints.
- Select appropriate control and diagnostic strategies for system features based on system-level requirements, performance targets, and operating constraints.
- Analyze and interpret high-level system requirements and existing functional implementations in C/C++ codebases to guide model and software design.
- Create feature-specific model content, including model properties, input/output interfaces, and architecture design that align with system requirements.
- Validate developed models using tools such as Model Viewer, Advisor Checks, and Code Coverage analysis to ensure quality and compliance.
- Ensure all models and implementations comply with MAAB (MathWorks Automotive Advisory Board) modeling guidelines and best practices.
- Collaborate with multidisciplinary engineering teams to define and refine system and software requirements, ensuring they are properly scoped, testable, and traceable.
- Work closely with feature owners and stakeholders to clarify functional requirements and design intent, and maintain end-to-end requirement traceability using model-based development and verification tools.
- Develop test plans, test cases, and automated test scripts based on system and software requirements for model-based verification and validation.
- Perform Model-in-the-Loop, unit, functional, and integration testing to verify model and software behavior and ensure adequate test coverage.
- Generate and review test coverage reports to confirm sufficient verification of developed models and embedded control software.
- Utilize test automation tools such as MATLAB Unit Test, Simulink Test, Requirements Management Interface (RMI), or equivalent frameworks to streamline verification workflows.
- Support integration of modeled controls with handwritten C/C++ code and validate execution on embedded target hardware.
- Collaborate with controls, software, systems, validation, and product engineering teams to align design, implementation, and testing activities.
- Participate in Agile development activities, including planning, reviews, and continuous improvement initiatives, to enhance development processes and team effectiveness.
- Contribute to the development and refinement of automated verification workflows and testing infrastructure to improve efficiency and consistency.
- Support root cause analysis, debugging, and resolution of control software issues discovered during development, testing, or deployment.
- Apply strong analytical and problem-solving skills to diagnose complex control and software issues and propose effective solutions.
- Communicate clearly with cross-functional and customer-facing teams to explain design decisions, test results, and issue resolutions.
- Bachelor’s degree in Electrical Engineering, Computer Engineering, Electronics Engineering, Computer Science, or a related field with 5+ years of experience, or a Master’s degree in Electrical Engineering, Computer Science, or a related field with 3+ years of relevant experience.
- Minimum 3+ years of model-based software development experience using MATLAB and Simulink.
- Minimum 2+ years of controls software design and development experience.
- Strong experience with MATLAB, Simulink, Stateflow, Simscape, and model-based design methodologies.
- Working knowledge of embedded software development principles and practices.
- Understanding and hands-on experience with C/C++ programming and code integration into embedded systems.
- Experience with modeling, simulation, and testing techniques in Simulink, including configuration for auto-code generation.
- Familiarity with auto-code generation and modeling practices that affect software efficiency, memory usage, and code size.
- Experience using version control systems such as Git, GitHub, or ClearCase for managing source code and models.
- Experience developing and executing automated testing frameworks and verification workflows.
- Ability to interpret system and software requirements and translate them into comprehensive test cases and validation strategies.
- Experience generating and reviewing test coverage reports for control software and model-based implementations.
- Strong analytical and problem-solving skills with a detail-oriented and quality-focused mindset.
- Excellent verbal and written communication skills, with the ability to work effectively in cross-functional and customer-facing environments.
- Self-motivated and proactive approach to learning, problem solving, and continuous improvement.
Additional Skills & Qualifications
- Controls theory experience and strong understanding of control system concepts.
- Knowledge of HVAC control systems and prior experience working with HVAC controls or similar systems.
- Experience with Model-in-the-Loop (MIL), Software-in-the-Loop (SIL), or Hardware-in-the-Loop (HIL) testing environments.
- Experience with Python scripting for automation and testing of models and embedded software.
- Familiarity with requirements management and traceability tools for maintaining end-to-end linkage between requirements, models, and tests.
- Agile or Scrum development experience, including participation in planning, reviews, and continuous improvement activities.
- Experience contributing to or developing automated verification workflows and testing infrastructure.
- Demonstrated ability to support root cause analysis and debugging of control software issues across the development lifecycle.