Senior Controls Software Engineer - MBD
About the Role
Roles & Responsibilities : Model-Based Software Development & Power Systems SimulationDevelop and maintain BMS application/control software models using MATLAB/Simulink and Stateflow.Perform model-based software development and automatic code generation using MathWorks tools.Develop and integrate control algorithms for BMS applications – BESS Domain.Generate production-quality embedded code from Simulink models using appropriate code-generation workflows.Perform model reviews, model quality checks, and ensure compliance with defined development standards.Analyze generated code and support debugging of model-to-code issues.BMS Software Verification & ValidationDevelop and execute MIL, SIL, and PIL test strategies for BMS control software.Perform open-loop and closed-loop testing of BMS functions and features.Develop test cases, test scenarios, test harnesses, and automated test scripts.Use Simulink Test Manager for test execution and automation.Perform functional, regression, boundary-value, robustness, and requirement-based testing.Analyze test results, identify defects, perform root-cause analysis, and track issues through closure.Ensure adequate test coverage and traceability between requirements, models, code, and test cases.Requirements ManagementAnalyze and interpret system/software requirements for BMS functions.Manage requirements and maintain requirements-to-test traceability using tools such as IBM DOORS.Develop test cases based on requirements and ensure complete verification coverage.Support requirements reviews and identify ambiguity, gaps, and inconsistencies.Static Code & Model AnalysisPerform static code analysis of generated/embedded software using Polyspace and/or Parasoft.Analyze static-analysis findings and work with development teams to resolve issues.Perform model quality and compliance checks using Simulink Check.Support coding-standard compliance and software quality activities.Automation & ScriptingDevelop automation scripts and test utilities using MATLAB/M-Scripting.Use Python for test automation, data processing, reporting, and engineering utilities.Improve testing efficiency through automated test execution and result analysis.Experience: 5–10 yearsMandatory Technical SkillsMathWorks / Model-Based DevelopmentExtensive hands-on experience with:MATLABSimulinkStateflowSimulink Test ManagerSimulink CheckStrong understanding of model-based development and automatic code generation.Experience with Embedded Coder is highly desirable.BMSStrong understanding of:Battery Management System architectureCell voltage and temperature monitoringSOC / SOH estimationBattery balancingCharge/discharge controlOver-voltage / under-voltage protectionOver-current protectionThermal managementBMS control algorithmsBattery pack and cell-level behaviorVerification & ValidationMIL – Model-in-the-LoopSIL – Software-in-the-LoopPIL – Processor-in-the-LoopOpen-loop testingClosed-loop testingTest automationRequirement-based testingRegression testingTest coverage and traceabilityRequirements & Code QualityIBM DOORS or equivalent requirements-management toolsPolyspace / ParasoftSimulink model-quality and static-analysis toolsUnderstanding of software development and verification processesProgramming / ScriptingStrong MATLAB / M-Scripting skillsGood Python programming/scripting skillsUnderstanding of C/C++ and embedded software concepts is desirablePreferred SkillsExperience in automotive BMS, EV, hybrid vehicle, or energy-storage/BESS applications.Experience with Embedded Coder and production code generation.Knowledge of CAN/CAN FD and automotive communication protocols.Experience with HIL testing and real-time simulation platforms.Knowledge of ISO 26262 / functional safety.Familiarity with AUTOSAR concepts.Experience with CI/CD and automated testing pipelines.Experience with Git or other version-control systems.Knowledge of battery testing, battery characterization, and battery models.EducationBachelor's or Master's degree in Electrical Engineering, Electronics, Instrumentation, Control Systems, Mechatronics, Computer Science, or a related engineering discipline.