Principal Software Engineer (Framework)
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+33 more
Job description
scalability, maintainability, responsiveness, and long-term extensibility. * Provide technical leadership for application shell architecture, UI composition, command frameworks, docking/layout systems, state management, data binding, component integration, and framework service layers. * Design and guide implementation of charting and plotting components, including integration or customization of commercial charting libraries such as SciChart, Gigasoft, or equivalent technologies. * Serve as a senior technical authority for framework design reviews, feasibility analysis, risk assessment, debugging, performance optimization, and long-term architecture decisions. * Collaborate with product management, architecture, QA, program management, and engineering teams to translate product workflow needs into reusable framework capabilities. * Guide and mentor engineers on framework architecture, UI patterns, C++ and C# design practices, component ownership, testing strategy, and engineering
Requirements
best practices. * Contribute to technical roadmaps and communicate design tradeoffs, technical risks, and implementation plans clearly to stakeholders and leadership. 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 * 12+ years of software engineering experience delivering commercial or enterprise desktop applications, preferably in engineering, CAD/CAE, scientific, visualization, or data-intensive software domains. * Deep expertise in UI Framework and Application Framework architecture, including reusable component design, application shell design, command frameworks, layout/docking systems, UI state management, and extensible framework services. * Strong hands-on experience with C++ and C# in large-scale, production-quality desktop application development. * Experience designing and implementing framework-level components that support multiple product workflows, teams, and application modules. * Experience with charting, plotting, or data visualization components, including commercial libraries such as SciChart, Gigasoft, or equivalent charting technologies. * Strong background in UI architecture patterns such as MVVM, MVC, MVP, data binding, event routing, command patterns, dependency injection, and modular application design. * Experience diagnosing UI responsiveness issues, memory leaks, threading problems, rendering defects, framework integration issues, and performance bottlenecks in complex desktop applications. * Experience with Windows desktop application development and cross-platform UI considerations. * Avalonia experience is a significant plus, especially for modern cross-platform desktop UI development using C# and XAML-style UI patterns. * 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++ and C# for framework-level desktop application development. * Required experience designing reusable UI Framework and Application Framework components, including application shell services, command systems, layout managers, docking frameworks, property grids, toolbars, menus, dialogs, view models, and shared UI infrastructure. * Hands-on experience with charting and plotting frameworks, including SciChart, Gigasoft, or comparable commercial/open-source charting components. * Strong understanding of desktop UI patterns, asynchronous programming, threading models, event-driven architecture, data binding, rendering/update cycles, and responsive UI design. * Experience with WPF, WinForms, Qt, Avalonia, or equivalent desktop UI frameworks; Avalonia experience is strongly preferred. * Strong debugging skills using tools such as Visual Studio Debugger, WinDbg, GDB, LLDB, crash dump analysis, stack traces, logging frameworks, and diagnostic instrumentation. * Experience with memory, performance, and concurrency diagnostics using tools such as Valgrind, AddressSanitizer, ThreadSanitizer, Intel VTune, Windows Performance Analyzer, Linux perf, and similar profiling tools. * Familiarity with automated testing strategies for framework components, including unit testing, integration testing, UI automation, regression testing, and API compatibility validation. 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.
About the company
Cadence plays a critical role in creating the technologies that modern life depends on. We are a global electronic design automation company, providing software, hardware, and intellectual property to design advanced semiconductor chips that enable our customers create revolutionary products and experiences.
Thanks to the outstanding caliber of the Cadence team and the empowering culture that we have cultivated for over 25 years, Cadence continues to be recognized by Fortune Magazine as one of the 100 Best Companies to Work For. Our shared passion for solving the world’s toughest technical challenges, our dedication to pushing the limits of the industry, and our drive to do meaningful work differentiates the people of Cadence.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Loading talks and stories from around this role…