Principal Software Engineer - MATLAB Data Visualization
Natick
**Summary** MathWorks has a hybrid work model that enables staff members to split their time between office and home. The hybrid model provides the advantage of having both in-person time with colleagues and flexible at-home life optimizations. Learn More: https://www.mathworks.com/company/jobs/resources/applying-and-interviewing.html#onboarding. The MATLAB Graphics and Data Visualization team is responsible for the core visualization experience in MATLAB. We develop a broad range of plotting and charting capabilities, from foundational line and scatter plots to extensible tools for building advanced interactive data visualizations. Our work forms a critical bridge between interactive graphics, rendering, and export within the MATLAB ecosystem, and plays a central role in shaping the evolution of MATLAB's data visualization capabilities. MathWorks nurtures growth, appreciates inclusivity, encourages initiative, values teamwork, shares success, and rewards excellence. **Responsibilities** As a member of the MATLAB Graphics and Data Visualization team, you will focus on developing web‑based solutions spanning client, server, and cloud-hosted components that enable customers to access, share, and interact with their data visualizations in new and innovative ways. * Own and evolve architectural direction for web‑based solutions that deliver MATLAB graphics to customers. * Drive cross-team modernization efforts, making informed tradeoffs around scalability, reliability, performance and consistency for interactive, data‑first visualizations. * Provide technical leadership by guiding design reviews, influencing system‑level decisions, and sharing best practices across teams. * Lead the development of shared, automated workflows for building, testing, and delivering web‑based graphics software. * Champion software quality, including the definition and application of functional and non‑functional testing strategies with a strong emphasis on automation. * Mentor and support other engineers through technical guidance, design feedback, and knowledge sharing. **Minimum Qualifications** * A bachelor's degree and 10 years of professional work experience (or equivalent experience) is required. **Additional Qualifications** * Experience designing and implementing web‑based data visualization systems in production web applications. * Proficiency in C++ and JavaScript, applied to large, complex, production‑quality software systems. * Experience designing, evolving, and maintaining large‑scale software architectures, including cloud‑based systems. * Demonstrated experience with automated testing strategies, including functional and non‑functional testing, to ensure system correctness, performance, and reliability. * Ability to define technical direction and make architectural decisions for complex, cross‑cutting systems. * Experience mentoring and developing engineers through technical guidance and design reviews. * Familiarity with web graphics or charting frameworks such as D3.js, Three.js, or similar technologies. * Experience with MATLAB or other scientific computing and data visualization software.