Backend Development 6 min read

Huawei OD Interview Experience: Technical Questions, Coding Challenges, and Insights

This article shares a detailed interview experience for a Huawei OD backend position, covering the written test, HR screening, multiple technical rounds, algorithmic coding problems with solutions, and personal reflections on preparation and outcomes.

Selected Java Interview Questions
Selected Java Interview Questions
Selected Java Interview Questions
Huawei OD Interview Experience: Technical Questions, Coding Challenges, and Insights

Written Test

The written test consisted of 395 questions with moderate difficulty; the first and third questions focused on DP and hash tables, while the second question involved finding the friendliest seat in an array represented as 11101211100111211 where 0 is empty, 1 is an existing employee, and 2 is a wall.

The initial approach iterated the array and recomputed friendliness for each empty seat, leading to redundant calculations. The optimized solution traverses the array once, maintaining left and right friendliness counts and updating state only when encountering seats, employees, or walls.

HR Interview

The HR discussion covered reasons for leaving the previous job, desired work location and salary, and recent activities such as resume submission and interview preparation. The candidate was offered positions in Wuhan or Shenzhen, ultimately choosing Shenzhen.

Technical Interview

The technical interview combined theory questions and live coding. The candidate answered questions on Java collections, SpringBoot auto‑configuration, MySQL index principles, Redis data types, and other topics, and successfully completed the coding tasks.

First Round

General questions touched on project experience, business and technical aspects, and basic concepts. The coding task required extracting valid MAC addresses (e.g., 00-16-EA-AE-3C-40 ) from a mixed string like 00-16:aA-FE:3C-40-11-99-AA-Z , ignoring case and separators.

Solution: Convert the string to lower case, replace ':' with '-', then slide a window of length 12 to check for twelve hexadecimal characters separated by '-'.

Second Round

The candidate discussed project details, object‑oriented vs procedural programming, JDK 8 features compared to JDK 7, lambda expressions, generics, and thread‑pool parameters (core size, max size, queue length, task handling).

Additional topics included Spring AOP principles, MySQL EXPLAIN, unit testing, and design patterns.

The coding challenge was to find the largest square of 1's in a binary matrix, e.g.: 0010 1110 1100 Solution: Iterate over the matrix, treat each '1' as the top‑left corner of a potential square, expand while maintaining all cells as '1', and track the maximum area. Final Round The interviewers emphasized programming ability, asked deeper questions about the candidate's projects, learning habits (reading books, practicing problems), previous work gains, and salary expectations. Overall, the candidate received an offer after a two‑week process from written test to final offer.

backendJavaInterviewSpringBootAlgorithmsHuawei
Selected Java Interview Questions
Written by

Selected Java Interview Questions

A professional Java tech channel sharing common knowledge to help developers fill gaps. Follow us!

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.