About this role
## At Cadence, we hire and develop leaders and innovators who want to make an impact on the world of technology.
Position Summary
We are seeking a Lead Software Engineer for Graphics to design, develop, and maintain graphics-related capabilities for MSC Apex and related engineering software platforms. This role is focused on hands-on implementation and technical ownership of graphics workflows, rendering integration, visualization components, and performance improvements. The successful candidate will collaborate with senior engineers, architects, product teams, and QA to deliver reliable, maintainable, and user-friendly graphics functionality for engineering desktop applications.
Key Responsibilities
• Design, develop, and maintain graphics and visualization capabilities for engineering desktop applications, with emphasis on reliability, usability, performance, and maintainability.
• Implement graphics features related to rendering, model display, selection, interaction, view manipulation, annotation, color mapping, and visualization workflows.
• Work with graphics frameworks, rendering pipelines, and visualization libraries to support product requirements and improve user workflows.
• Analyze and resolve graphics defects, rendering issues, performance bottlenecks, memory problems, and platform-specific visualization behavior.
• Collaborate with architects and principal engineers on design direction while taking ownership of assigned components and feature implementation.
• Support code reviews, technical discussions, test planning, and integration activities for graphics-related features.
• Provide technical guidance to junior engineers when needed, while continuing to contribute as a hands-on developer.
Required Qualifications
Education
• Bachelor’s or Master’s degree in Computer Science, Mechanical Engineering, Computational Engineering, Computer-Aided Engineering, Applied Mathematics, or a related engineering discipline.
Experience
• 10+ years of software engineering experience delivering commercial or enterprise desktop applications, preferably in engineering, CAD/CAE, scientific visualization, or graphics-intensive software domains.
• Strong experience developing graphics or visualization features, including rendering workflows, interactive model display, view manipulation, selection, highlighting, annotations, and graphics performance improvements.
• Strong hands-on experience with C++ in production-quality desktop application development.
• Experience implementing graphics components that integrate with geometry kernels, rendering services, data models, visualization pipelines, and product workflows.
• Experience with graphics and visualization technologies such as VTK, Ogre, OpenGL, DirectX, Vulkan, HOOPS, OpenSceneGraph, or equivalent rendering frameworks used in engineering applications.
• Understanding of scene graphs, rendering pipelines, mesh visualization, camera/view transformations, picking/selection, clipping, transparency, lighting, materials, and large-model visualization concepts.
• Experience diagnosing graphics defects, rendering artifacts, UI responsiveness issues, memory leaks, threading problems, and performance bottlenecks in complex desktop applications.
• Experience with Windows desktop application development and graphics behavior across different hardware and display configurations.
• Experience optimizing rendering performance for large engineering models, including level-of-detail strategies, batching, culling, GPU resource management, and frame-rate analysis.
• Practical experience using AI-assisted software development tools such as GitHub Copilot, Cursor, or similar tools to improve coding productivity, code review efficiency, documentation, and engineering workflows.
Technical Skills
• Strong proficiency in C++ for graphics-enabled engineering software development.
• Hands-on experience with graphics programming concepts such as rendering pipelines, scene graphs, model display, camera/view transformations, picking, selection, highlighting, clipping, transparency, lighting, materials, and display updates.
• Experience with visualization and rendering technologies such as VTK, Ogre, OpenGL, DirectX, Vulkan, HOOPS, OpenSceneGraph, or comparable graphics infrastructure.
• Knowledge of mesh and geometry visualization, tessellation, finite element model display, contour plots, scalar/vector field visualization, annotations, color maps, and engineering post-processing workflows.
• Experience optimizing rendering performance for large-scale engineering models, including level-of-detail, batching, frustum/occlusion culling, GPU memory usage, draw-call reduction, and frame-rate analysis.
• Strong debugging skills using tools such as Visual Studio Debugger, WinDbg, GDB, LLDB, crash dump analysis, stack traces, graphics debuggers, logging frameworks, and diagnostic instrumentation.
• Experience with memory, performance, and graphics diagnostics using tools such as Valgrind, AddressSanitizer, ThreadSanitizer, Intel VTune, Windows Performance Analyzer, Linux perf, RenderDoc, NVIDIA Nsight, AMD Radeon GPU Profiler, or similar profiling tools.
• Familiarity with automated testing strategies for graphics components, including regression testing, image comparison, performance validation, and platform/hardware compatibility testing.
Soft Skills
• Strong communication and collaboration skills.
• Problem-solving and analytical thinking.
• Ability to work independently and in a team environment.N/A
## We’re doing work that matters. Help us solve what others can’t.