+ - B.E/B.Tech or M.E/M.Tech (ECE, Mechatronics)
+
Job Location:
+ - Chennai
+
:
+ - Thoroughly analyze existing MATLAB codebase, algorithms, data structures, and functionalities to gain a comprehensive understanding of their purpose, implementation details, and underlying mathematical/scientific principles.
- Document the intricacies of the MATLAB tools, identifying core logic, dependencies, and potential challenges for migration.
- Collaborate with end-users and domain experts of the current MATLAB tools to capture implicit requirements, usage patterns, and critical performance characteristics.
- Develop detailed migration plans, including phased approaches, risk assessments, and resource estimates for converting MATLAB components to Python.
- Design the architecture and data flow for the new Python-based tools, ensuring scalability, maintainability, and alignment with overall software engineering standards.
- Select appropriate Python libraries, frameworks, and methodologies for optimal translation of MATLAB functionalities (e.g., NumPy for matrix operations, SciPy for scientific functions, Pandas for data handling).
- Translate complex MATLAB algorithms and numerical methods into efficient, well-structured, and idiomatic Python code.
- Implement new features or enhancements as identified during the migration process, leveraging Python's ecosystem.
- Develop robust data processing pipelines and interfaces to integrate with existing or new data sources.
- Design and implement comprehensive test suites (unit, integration, regression tests) to ensure functional correctness and numerical fidelity of the Python tools against their MATLAB counterparts.
- Perform rigorous validation of results, comparing outputs from MATLAB and Python implementations to ensure accuracy and consistency.
- Identify and resolve performance bottlenecks in the Python code, optimizing algorithms and data structures for efficiency.
- Utilize profiling tools to benchmark and improve the execution speed of critical components.
- Create clear, concise, and comprehensive technical documentation for the new Python tools, including design specifications, API documentation, user guides, and migration reports.
- Provide training and mentorship to other team members on the new Python codebase and best practices for scientific computing in Python.
- Contribute to establishing coding standards and best practices for scientific Python development within the team.
- Work closely with cross-functional teams (e.g., software engineers, data scientists, domain experts) to ensure seamless integration of the migrated tools into existing systems and workflows.
- Participate in code reviews, architectural discussions, and agile development ceremonies.
- Manage version control (Git) for the Python codebase, ensuring proper branching, merging, and release management.
+
Skill set:
+ - MATLAB scripting, Python
+
Domain Knowledge:
+ - Expert-level knowledge of Python syntax, object-oriented programming, and common design patterns.
- Deep understanding and hands-on experience with core scientific Python libraries:
- NumPy, SciPy, Pandas,
- Matplotlib, Seaborn, Plotly/Bokeh: For data visualization and graphical output replication.
- Familiarity with other relevant libraries
- Ability to read, understand, and debug complex MATLAB code, including knowledge of MATLAB's specific data types, functions, and programming paradigms.
- Experience with MATLAB's toolboxes relevant to the existing tools
- Understanding of MATLAB's plotting capabilities and GUI development
- Solid understanding of common numerical algorithms, linear algebra, differential equations, optimization techniques, and statistical methods.
- Ability to identify and address potential numerical precision issues during migration.
- Proficiency with Git for version control.
- Experience with unit testing (e.g., pytest) and integration testing frameworks.
- Knowledge of code quality tools (linters like Flake8, Black) and static analysis.
- Understanding of software design principles (SOLID, DRY).
- Experience with various data formats (e.g., HDF5, CSV, Parquet, JSON, XML).
Beware of fraud agents! do not pay money to get a job
MNCJobsIndia.com will not be responsible for any payment made to a third-party. All Terms of Use are applicable.