
Candidates report Huawei software engineer interviews built around resume and project deep dives, medium-level coding in C++ or similar, language fundamentals, and HR or behavioral rounds. Structure varies by team.
$114K
Avg. Base Comp
$130K
Avg. Total Comp
Not reported
Typical Rounds
Not reported
Process Length
Huawei software engineer interviews vary by team, and the number of rounds differs from one report to the next. The most consistent theme is that interviewers probe your resume and projects in depth. Several candidates were asked to explain their own contributions, technical choices and any skill listed on the CV, such as pointers versus references in C++. One candidate gave a short project presentation inside a technical round.
Coding questions are usually described as easy to medium. Reported problems include Find Bottom Left Tree Value, Number of Islands, ancestors of a node in a graph, bracket matching, linked-list operations in C or C++, and hash tables built from scratch. Some candidates were asked to write binary tree traversals and merge sort without references. Others were asked about Codeforces-style problems, so practice explaining your reasoning aloud.
Language and systems fundamentals matter for several candidates. C++ topics reported include virtual tables, polymorphism, object slicing and memory management. Networking topics such as the OSI versus TCP/IP models came up, and one carrier-business candidate was asked about RAN, transport and core networks instead of algorithms. Behavioral and HR questions covered motivation, career goals, conflicting priorities and salary expectations. A few candidates mention English and Chinese being mixed, and some describe slow or unclear communication after interviews. Outcomes were mixed.
Synthesized from 43 candidate reports by our editorial team.
Had an interview recently?
Share your experience. Unlock the full guide.
Real interview reports from people who went through the Huawei Technologies process.
I recently attended a technical interview for a Software Developer position. The interview was a good learning experience and gave me an opportunity to evaluate both my technical knowledge and communication skills.
The interview started with a brief introduction about myself, my academic background, and the projects I have worked on. The interviewer then asked questions about programming fundamentals, object-oriented programming, data structures, databases, and web development. I was also asked to explain some of my projects, including the technologies I used and the challenges I faced while developing them.
The technical discussion included practical questions rather than only theoretical concepts. I was asked to analyze problems, explain my approach, and write or discuss solutions. There were also questions related to Git, APIs, SQL, and software development practices.
The interviewer also focused on my problem-solving ability and asked several scenario-based questions. Some questions were challenging, but they helped me understand which areas I need to improve.
Overall, the interview was a valuable experience. It taught me the importance of having a strong understanding of fundamentals rather than relying only on frameworks or tools. It also highlighted the importance of clearly explaining my thought process while solving a problem.
I came out of the interview with a better understanding of my strengths and areas for improvement, and it motivated me to continue developing my technical and communication skills.
Questions asked: Tell me about yourself and your experience as a software developer. Explain the difference between an abstract class and an interface. When would you use each? What are the four main principles of Object-Oriented Programming (OOP)? Explain each with an example. What is the difference between an SQL database and a NoSQL database? When would you choose one over the other? Explain the difference between GET, POST, PUT, PATCH, and DELETE in REST APIs. What is the difference between authentication and authorization? How does JWT-based authentication work? What is the time complexity of searching, inserting, and deleting elements in common data structures such as arrays, linked lists, hash tables, and binary search trees? Describe a challenging bug or technical problem you encountered in one of your projects. How did you identify and solve it? What is Git, and what is the difference between git merge, git rebase, git reset, and git revert? Suppose your application suddenly receives 10× its normal traffic. What steps would you take to identify the bottleneck and make the system scalable?
Share your own interview experience to unlock all reports, or subscribe for full access.
Sourced from candidate reports and verified by our team.
Topics based on recent interview experiences.
Featured question at Huawei Technologies
Swap two nodes in a singly linked list.
| Question | |
|---|---|
| CNNs vs Intensity-Based Features | |
| Your Strengths and Weaknesses | |
| 2nd Highest Salary | |
| Merge Sorted Lists | |
| Prime to N | |
| Over-Budget Projects | |
| The Brackets Problem | |
| Hurdles In Data Projects | |
| Bagging vs Boosting | |
| Size of Joins | |
| Cyclic Detection | |
| Get Top N Frequent Words | |
| Sort Strings | |
| Append Frequency | |
| Find Duplicate Numbers in a List | |
| Groups of Anagrams | |
| Longest Increasing Subsequence | |
| Closed Accounts | |
| Skyscanner Partner ETL | |
| Precision and Recall | |
| Valid Anagram | |
| Success Measurement | |
| Target Indices | |
| Priority Queue Using Linked List | |
| Portfolio Platform Architecture | |
| Word Frequency | |
| Check Matching Parentheses | |
| Swap Variables | |
| Merge N Sorted Lists |
Synthesized from candidate reports. Individual experiences may vary.
Candidates report an initial HR call or video meeting covering the resume, motivation for joining Huawei, availability and sometimes salary expectations. Some candidates describe it as a short, casual fit check, and one carrier-business candidate was also asked about telecom knowledge.
Some candidates report a timed online coding assessment before the technical interview, with one describing a one-hour test. Others report no separate assessment and went straight to a live interview, so this step may depend on the team or role.
Candidates typically describe a technical round that combines a project walkthrough with easy-to-medium coding, often in C++. Reported topics include trees, graphs, linked lists, hash tables, sorting and language fundamentals. Interviewers may keep asking follow-up questions until they are satisfied you understand your own solution.
Some candidates report a second technical interview or a conversation with a hiring manager or department head. These rounds may repeat the project discussion, add fundamentals such as OOP, networking or telecom, or add behavioral questions. The number of rounds varies by team.
Several candidates describe a final HR or senior-leader interview before an offer. Candidates also report differing speeds after the interviews, from quick decisions to waits of a month or longer, so it is sensible to ask the recruiter about next steps.