← Back to jobs
CA

Software Engineer II (Postprocessing)

Cadence Design Systems
📍 2 LocationsOn-siteMidH-1B history · FY2025Verified live 3h agoPosted 3h ago
Apply on company site ↗

Job Description

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 Software Engineer II focused on CAE post-processing to contribute to the development and delivery of capabilities for MSC Apex and related simulation result workflows. Working with guidance from senior engineers, this role will implement, test, debug, and maintain features related to solver result interpretation, result data management, contouring, XY plotting, animation, result probing, derived result calculations, reporting, validation, and handling of engineering simulation datasets. This opportunity is well suited to an early-career software engineer or a recent master’s graduate with strong fundamentals, relevant academic or project experience, and an interest in CAE and scientific software development. Key Responsibilities • Develop, test, debug, and maintain assigned CAE post-processing capabilities for engineering simulation products, with attention to result accuracy, performance, robustness, usability, and maintainability. • Contribute to solver result reading, result case management, contour plots, XY plotting, animation, result probing, min/max extraction, derived result calculations, result comparison, and report generation. • Implement and validate support for scalar, vector, tensor, transient, modal, frequency-domain, and load-step-based result data with guidance from experienced team members. • Participate in design discussions, code reviews, debugging, performance analysis, testing, and implementation planning for assigned components. • Investigate and resolve well-defined result interpretation issues, plotting errors, result synchronization problems, solver output discrepancies, performance bottlenecks, and customer-reported defects, escalating complex issues as appropriate. 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 • Bachelor’s degree with approximately 2–4 years of relevant software engineering experience, or a relevant master’s degree with little to no professional experience. • Foundational understanding of software development principles, data structures, algorithms, object-oriented design, debugging, testing, and maintainable code. • Academic, internship, research, or professional exposure to CAE, simulation, scientific computing, engineering data processing, visualization, or related technical domains. • Familiarity with CAE post-processing concepts such as result cases, contouring, XY plotting, animation, result probing, scalar/vector/tensor data, coordinate systems, units, or result transformations is desirable. • Programming experience in C++ gained through coursework, research, internships, personal projects, or professional software development. • Ability to implement well-defined software components, write unit or regression tests, diagnose defects, and learn an established production codebase with guidance. • Exposure to solver output formats, transient or frequency-domain results, numerical methods, visualization, or data-intensive applications is a plus. • Experience with CAE products or simulation platforms such as MSC Apex, Patran, Adams, Nastran, Marc, Abaqus, ANSYS, HyperWorks, ParaView, Tecplot, or equivalent technologies is preferred but not required. • Familiarity with AI-assisted software development tools such as GitHub Copilot, Cursor, or similar tools for coding, review, documentation, or engineering workflows is preferred. Technical Skills • Working proficiency in C++ and a sound understanding of object-oriented programming, data structures, algorithms, memory management, and modern software development practices. • Basic knowledge of CAE result concepts, including result cases, load steps, time steps, modes, scalar/vector/tensor quantities, coordinate systems, units, transformations, averaging, extrapolation, or derived results. • Academic, project, internship, or professional experience with one or more post-processing features such as contouring, XY plotting, animation, result probing, min/max extraction, result comparison, report generation, or automated validation. • Exposure to visualization frameworks or technologies such as VTK, OGRE, OpenGL, ParaView, Tecplot, Qt graphics/view frameworks, or equivalent technologies is preferred. • Development experience on Windows or Linux through coursework, research, internships, personal projects, or professional work; familiarity with build systems and source control is expected. • Ability to use debuggers, logs, stack traces, tests, and diagnostic tools to investigate software defects; exposure to Visual Studio Debugger, GDB, LLDB, or similar tools is beneficial. • Familiarity with automated testing and scripting, preferably Python, for regression testing, numerical validation, solver result comparison, benchmark models, or related engineering workflows. Soft Skills • Strong communication and collaboration skills. • Problem-solving and analytical thinking. • Ability to work independently and in a team environment. • Strong organizational and time-management skills.N/A

We’re doing work that matters. Help us solve what others can’t.

Found on DomiSolve · sourced from workday