Performance Engineer (Workload Modelling and Simulation)

Huawei R&D UK
Full_timeCambridge, United Kingdom

📍 Job Overview

  • Job Title: Performance Engineer (Workload Modelling and Simulation)
  • Company: Huawei R&D UK
  • Location: Cambridge, England, United Kingdom
  • Job Type: On-site, Full-time
  • Category: DevOps, Performance Engineering
  • Date Posted: 2025-05-19
  • Experience Level: Mid-level (2-5 years)

🚀 Role Summary

  • Key web technology aspect 1: Drive performance projection and simulation for server CPUs and NPUs, focusing on AI and large-scale data analytics workloads.
  • Key web technology aspect 2: Contribute to architectural studies and support hardware-software co-optimization for next-generation systems.
  • Key web technology aspect 3: Characterize workloads and develop methodologies for tracing and optimizing AI models to enhance simulation and performance analysis.
  • Key web technology aspect 4: Collaborate with cross-functional teams to extract and analyze real-world workload features, contributing vital data for hardware development.

📝 Enhancement Note: This role requires a strong understanding of CPU architecture and performance techniques, as well as experience in performance analysis and workload characterization. Proficiency in C/C++, Python, and dynamic binary instrumentation is essential for success in this position.

💻 Primary Responsibilities

  • Web technology responsibility 1: Develop and enhance simulation features to enable rapid architectural exploration and performance evaluation of server CPUs and NPUs.
  • Web technology responsibility 2: Conduct in-depth performance projections for various workloads, including databases, distributed storage, and engines for AI and data analytics.
  • Web technology responsibility 3: Contribute to architectural studies to explore and evaluate the latest server CPU core and SOC designs.
  • Web technology responsibility 4: Work on characterizing workloads and developing methodologies for tracing and optimizing AI models to enhance simulation and performance analysis.
  • Web technology responsibility 5: Construct a non-intrusive, highly accurate system for characterizing and modelling complex workloads, ensuring precise workload representation.

📝 Enhancement Note: The primary responsibilities of this role revolve around performance engineering, with a focus on server CPUs, NPUs, and AI workloads. A strong background in performance analysis and workload characterization is crucial for success in this position.

🎓 Skills & Qualifications

Education: A Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field with a strong focus on computer architecture, performance analysis, or a similar discipline.

Experience: 2-5 years of experience in performance engineering, with a proven track record in CPU architecture, performance techniques, and workload characterization. Experience with dynamic binary instrumentation, C/C++, Python, and performance analysis tools is required.

Required Skills:

  • Strong understanding of CPU architecture and micro-architecture performance techniques (e.g., branch prediction, prefetchers, cache hierarchies).
  • Proficient in performance analysis and workload characterization, with hands-on experience in methodologies for system-level architectural exploration.
  • Experience in developing using dynamic binary instrumentation infrastructures like QEMU, DynamoRIO, or x86 PIN.
  • Proficiency in C/C++, with a solid understanding of Assembly Language.
  • Experience with Python and other scripting languages to support automation, data processing, and tool development.
  • Excellent analytical and problem-solving skills with the ability to work both independently and as part of a team.

Preferred Skills:

  • Experience in compiler technologies, binary analysis, and performance tuning.
  • Experience in developing and using performance simulators like GEM5 (O3 model), Sniper, or others.
  • Knowledge of AI workloads and the challenges involved in optimizing large-scale models for performance simulation.
  • Experience in Linux kernel development, including knowledge of kernel internals.
  • Hands-on experience in CPU performance analysis, utilizing methodologies such as PMU-based profiling and TopDown Analysis, and proficiency with performance analysis tools like Linux perf.

📝 Enhancement Note: The required and preferred skills for this role emphasize a strong background in performance engineering, with a focus on CPU architecture, performance techniques, and workload characterization. Experience with dynamic binary instrumentation, C/C++, Python, and performance analysis tools is essential for success in this position.

📊 Web Portfolio & Project Requirements

Portfolio Essentials:

  • Demonstrate a strong understanding of CPU architecture and performance techniques through relevant projects or case studies.
  • Showcase your experience in performance analysis and workload characterization, highlighting your ability to conduct in-depth performance projections and contribute to architectural studies.
  • Include examples of your proficiency in C/C++, Python, and dynamic binary instrumentation, with a focus on developing and enhancing simulation features for server CPUs and NPUs.

Technical Documentation:

  • Provide detailed documentation of your performance analysis and workload characterization methodologies, including any tools or scripts developed to support your work.
  • Include any published papers, presentations, or reports that demonstrate your expertise in performance engineering and workload characterization.
  • Highlight your experience with performance simulators, such as GEM5 or Sniper, and any relevant contributions to open-source projects or communities.

📝 Enhancement Note: The portfolio requirements for this role focus on demonstrating a strong background in performance engineering, with a particular emphasis on CPU architecture, performance techniques, and workload characterization. Examples of your proficiency in C/C++, Python, and dynamic binary instrumentation are essential for showcasing your skills in this area.

💵 Compensation & Benefits

Salary Range: £45,000 - £65,000 per annum (based on experience and regional market standards for performance engineers in Cambridge, UK)

Benefits:

  • 33 days annual leave entitlement per year (including UK public holidays)
  • Group Personal Pension
  • Life insurance
  • Private medical insurance
  • Medical expense claim scheme
  • Employee Assistance Program
  • Cycle to work scheme
  • Company sports club and social events
  • Additional time off for learning and development

Working Hours: 40 hours per week, with flexible working hours and the option to work from home occasionally, subject to team and project requirements.

📝 Enhancement Note: The salary range for this role is estimated based on regional market standards for performance engineers in Cambridge, UK, with a focus on mid-level experience. The benefits package is comprehensive and designed to support the well-being and professional development of employees.

🎯 Team & Company Context

🏢 Company Culture

Industry: Huawei operates in the telecommunications and technology sector, focusing on providing innovative infrastructure and smart devices to enable a fully connected, intelligent world.

Company Size: Huawei is a large, multinational corporation with over 207,000 employees worldwide, providing ample opportunities for career growth and development.

Founded: 1987, with a strong commitment to innovation, research, and development in the technology sector.

Team Structure:

  • The performance engineering team is part of the broader research and development organization, working closely with cross-functional teams to extract and analyze real-world workload features and contribute vital data for hardware development.
  • The team consists of experienced performance engineers, architects, and software developers, collaborating to drive innovation in server CPUs, NPUs, and AI workloads.

Development Methodology:

  • Agile development methodologies are employed, with a focus on rapid architectural exploration, performance evaluation, and continuous integration and deployment.
  • The team utilizes dynamic binary instrumentation, performance simulators, and other tools to support their work, with a strong emphasis on automation, data processing, and tool development.

Company Website: https://www.huawei.com/en/

📝 Enhancement Note: The company culture of Huawei is focused on innovation, research, and development, with a strong commitment to driving technological breakthroughs in the telecommunications and technology sectors. The team structure and development methodology emphasize collaboration, automation, and continuous improvement.

📈 Career & Growth Analysis

Web Technology Career Level: Mid-level Performance Engineer, with a focus on workload modelling and simulation for server CPUs, NPUs, and AI workloads.

Reporting Structure: The Performance Engineer reports directly to the Performance Engineering Team Lead, with a matrix reporting structure to relevant cross-functional teams for specific projects or initiatives.

Technical Impact: The role has a significant impact on the development of performance models for upcoming server processors and accelerators, supporting architectural studies, and driving software-hardware co-optimization for next-generation systems.

Growth Opportunities:

  • Growth opportunity 1: With experience and proven success in the role, there is potential for advancement to a Senior Performance Engineer position, with increased responsibility for leading projects and mentoring junior team members.
  • Growth opportunity 2: The role provides opportunities for technical skill development in emerging technologies, such as AI workloads and performance simulation, with the potential to specialize in these areas over time.
  • Growth opportunity 3: Huawei's global presence and commitment to innovation provide ample opportunities for international assignments, collaboration with other research and development centers, and exposure to diverse technologies and cultures.

📝 Enhancement Note: The career and growth analysis for this role highlights the potential for advancement to senior-level positions, technical skill development in emerging technologies, and international collaboration opportunities within Huawei's global research and development organization.

🌐 Work Environment

Office Type: Modern, collaborative office space with state-of-the-art facilities and equipment, designed to support innovation and productivity.

Office Location(s): Cambridge Science Park, Milton Road, Cambridge, CB4 0FZ, with additional offices in London, Edinburgh, and Ipswich.

Workspace Context:

  • Workspace aspect 1: The performance engineering team works in an open-plan office, fostering collaboration and knowledge sharing among team members.
  • Workspace aspect 2: Each team member is equipped with multiple monitors, high-performance workstations, and access to relevant tools and resources to support their work.
  • Workspace aspect 3: The office environment encourages cross-functional collaboration, with regular team meetings, workshops, and social events to build a strong, cohesive team culture.

Work Schedule: Flexible working hours with the option to work from home occasionally, subject to team and project requirements. The core working hours are 9:00 AM to 5:30 PM, with a one-hour lunch break.

📝 Enhancement Note: The work environment at Huawei's Cambridge office is designed to support collaboration, innovation, and productivity, with state-of-the-art facilities and equipment, and a flexible work schedule that balances work-life balance with the demands of the role.

📄 Application & Technical Interview Process

Interview Process:

  • Process step 1: Online screening and technical assessment, focusing on CPU architecture, performance techniques, and workload characterization. Candidates are expected to complete a performance analysis or workload characterization exercise using relevant tools and methodologies.
  • Process step 2: On-site technical interview, including a deep dive into the candidate's technical skills, experience, and portfolio. The interview may include a presentation or demonstration of the candidate's work, followed by a Q&A session with the hiring manager and team members.
  • Process step 3: Final interview with the hiring manager and other senior team members, focusing on cultural fit, career aspirations, and long-term growth potential within the organization.
  • Process step 4: Offer and onboarding, with a comprehensive induction program to help the new hire integrate into the team and the wider organization.

Portfolio Review Tips:

  • Portfolio tip 1: Highlight your proficiency in CPU architecture, performance techniques, and workload characterization through relevant projects or case studies.
  • Portfolio tip 2: Demonstrate your experience with dynamic binary instrumentation, C/C++, Python, and performance analysis tools, with a focus on developing and enhancing simulation features for server CPUs and NPUs.
  • Portfolio tip 3: Showcase your ability to conduct in-depth performance projections and contribute to architectural studies, with a strong emphasis on AI workloads and emerging technologies.
  • Portfolio tip 4: Include any published papers, presentations, or reports that demonstrate your expertise in performance engineering and workload characterization, with a focus on the specific requirements of the role.

Technical Challenge Preparation:

  • Challenge preparation 1: Brush up on your knowledge of CPU architecture, micro-architecture performance techniques, and workload characterization methodologies.
  • Challenge preparation 2: Familiarize yourself with relevant tools and technologies, such as QEMU, DynamoRIO, x86 PIN, GEM5, Sniper, and Linux perf.
  • Challenge preparation 3: Prepare for a comprehensive technical interview, focusing on your experience, skills, and career aspirations in the field of performance engineering.

ATS Keywords: CPU Architecture, Micro-Architecture Performance Techniques, Performance Analysis, Workload Characterization, Dynamic Binary Instrumentation, C/C++, Python, Scripting Languages, Compiler Technologies, Performance Simulators, AI Workloads, Linux Kernel Development, CPU Performance Analysis, Performance Analysis Tools

📝 Enhancement Note: The interview process for this role is designed to assess the candidate's technical skills, experience, and cultural fit, with a strong emphasis on performance engineering and workload characterization. The portfolio review tips and technical challenge preparation focus on helping candidates demonstrate their expertise in the field and prepare for a successful interview.

🛠 Technology Stack & Web Infrastructure

Frontend Technologies: N/A (not applicable for this role)

Backend & Server Technologies:

  • Backend technology 1: Python, with a focus on performance analysis, workload characterization, and automation.
  • Server technology 2: Linux, with experience in Linux kernel development and knowledge of kernel internals.
  • Infrastructure tool 3: Dynamic binary instrumentation tools, such as QEMU, DynamoRIO, and x86 PIN, for developing and enhancing simulation features for server CPUs and NPUs.

Development & DevOps Tools:

  • Development tool 1: Git, with experience in version control, collaborative development, and code review processes.
  • DevOps tool 2: Jenkins, with experience in continuous integration and deployment pipelines, automation, and infrastructure as code (IaC) practices.
  • Monitoring tool 3: Prometheus and Grafana, with experience in performance tracking, server monitoring, and data visualization.

📝 Enhancement Note: The technology stack for this role emphasizes performance engineering, with a focus on Python, Linux, dynamic binary instrumentation, and relevant development and DevOps tools. The backend and server technologies, as well as the development and DevOps tools, are designed to support the role's primary responsibilities and enable the candidate to succeed in the performance engineering domain.

👥 Team Culture & Values

Web Development Values:

  • Web development value 1: A strong commitment to innovation, research, and development in the telecommunications and technology sectors.
  • Web development value 2: A focus on collaboration, knowledge sharing, and continuous learning within the performance engineering team and the wider organization.
  • Web development value 3: A commitment to driving technological breakthroughs and delivering high-quality, efficient, and scalable solutions for server CPUs, NPUs, and AI workloads.
  • Web development value 4: A dedication to maintaining a positive, inclusive, and supportive work environment that fosters growth, development, and well-being.

Collaboration Style:

  • Collaboration approach 1: The performance engineering team works in an open-plan office, fostering collaboration and knowledge sharing among team members.
  • Collaboration approach 2: Regular team meetings, workshops, and social events are held to build a strong, cohesive team culture and drive innovation and productivity.
  • Collaboration approach 3: Cross-functional collaboration with other research and development teams, as well as external partners and academic institutions, is encouraged to drive technological breakthroughs and maintain a competitive edge in the market.

📝 Enhancement Note: The team culture and values of the performance engineering team at Huawei emphasize innovation, collaboration, and continuous learning, with a strong commitment to driving technological breakthroughs and delivering high-quality, efficient, and scalable solutions for server CPUs, NPUs, and AI workloads.

⚡ Challenges & Growth Opportunities

Technical Challenges:

  • Web development challenge 1: Developing and enhancing simulation features for server CPUs and NPUs, focusing on AI and large-scale data analytics workloads, with a strong emphasis on performance projection and architectural studies.
  • Web development challenge 2: Conducting in-depth performance projections for various workloads, including databases, distributed storage, and engines for AI and data analytics, with a focus on emerging technologies and trends in the field.
  • Web development challenge 3: Contributing to architectural studies to explore and evaluate the latest server CPU core and SOC designs, with a strong emphasis on software-hardware co-optimization and performance optimization techniques.
  • Web development challenge 4: Characterizing workloads and developing methodologies for tracing and optimizing AI models to enhance simulation and performance analysis, with a focus on emerging technologies and trends in the field.

Learning & Development Opportunities:

  • Learning opportunity 1: The role provides ample opportunities for technical skill development in emerging technologies, such as AI workloads and performance simulation, with the potential to specialize in these areas over time.
  • Learning opportunity 2: Huawei's commitment to innovation, research, and development provides opportunities for collaboration with other research and development centers, exposure to diverse technologies and cultures, and the chance to work on cutting-edge projects and initiatives.
  • Learning opportunity 3: The performance engineering team's focus on knowledge sharing, continuous learning, and professional development provides opportunities for mentoring, coaching, and career growth within the organization.

📝 Enhancement Note: The technical challenges and learning opportunities for this role emphasize the potential for growth, development, and specialization in the field of performance engineering, with a strong emphasis on emerging technologies, collaboration, and continuous learning.

💡 Interview Preparation

Technical Questions:

  • Technical question 1: Can you describe your experience with CPU architecture, micro-architecture performance techniques, and workload characterization methodologies? How have you applied these skills in previous roles or projects?
  • Technical question 2: Can you walk us through a performance analysis or workload characterization project you've worked on, highlighting your approach, tools, and key findings? How did you ensure the accuracy and validity of your results?
  • Technical question 3: How have you utilized dynamic binary instrumentation tools, such as QEMU, DynamoRIO, or x86 PIN, in your previous roles or projects? Can you provide an example of a performance optimization or workload characterization challenge you faced and how you addressed it using these tools?

Company & Culture Questions:

  • Technical question 4: How do you stay up-to-date with the latest developments in performance engineering, workload characterization, and emerging technologies in the field? Can you provide an example of a recent research paper, conference, or industry event that you found particularly insightful or inspiring?
  • Technical question 5: How do you approach collaboration and knowledge sharing within a team environment? Can you describe a time when you worked closely with a team to drive innovation, productivity, or technological breakthroughs?
  • Technical question 6: How do you balance the demands of your role with your personal and professional development goals? Can you provide an example of a time when you prioritized your long-term career aspirations and took steps to achieve them?

Portfolio Presentation Strategy:

  • Presentation strategy 1: Highlight your proficiency in CPU architecture, performance techniques, and workload characterization through relevant projects or case studies, with a strong emphasis on the specific requirements of the role.
  • Presentation strategy 2: Demonstrate your experience with dynamic binary instrumentation, C/C++, Python, and performance analysis tools, with a focus on developing and enhancing simulation features for server CPUs and NPUs.
  • Presentation strategy 3: Showcase your ability to conduct in-depth performance projections and contribute to architectural studies, with a strong emphasis on AI workloads and emerging technologies.
  • Presentation strategy 4: Include any published papers, presentations, or reports that demonstrate your expertise in performance engineering and workload characterization, with a focus on the specific requirements of the role.

📝 Enhancement Note: The interview preparation for this role focuses on helping candidates demonstrate their expertise in performance engineering, workload characterization, and emerging technologies, with a strong emphasis on the specific requirements of the role and the company's culture and values.

📌 Application Steps

To apply for this Performance Engineer (Workload Modelling and Simulation) position at Huawei R&D UK:

  1. Concrete preparation step 1: Tailor your resume and cover letter to highlight your relevant experience, skills, and career aspirations in the field of performance engineering, with a strong emphasis on CPU architecture, performance techniques, and workload characterization.
  2. Concrete preparation step 2: Prepare a comprehensive portfolio that demonstrates your expertise in performance engineering, workload characterization, and emerging technologies, with a focus on the specific requirements of the role.
  3. Concrete preparation step 3: Familiarize yourself with the company's culture, values, and mission, and be prepared to discuss how your skills, experience, and career aspirations align with the organization's goals and objectives.
  4. Concrete preparation step 4: Research the latest developments in performance engineering, workload characterization, and emerging technologies, and be prepared to discuss how you stay up-to-date with industry trends and best practices.

⚠️ Important Notice: This enhanced job description includes AI-generated insights and web development/server administration industry-standard assumptions. All details should be verified directly with the hiring organization before making application decisions.

Application Requirements

Candidates should have a strong understanding of CPU architecture and performance techniques, along with experience in performance analysis and workload characterization. Proficiency in C/C++, Python, and dynamic binary instrumentation is required, with additional desired skills in compiler technologies and performance simulators.