Huawei Russian Research Institute Special challenges

Huawei Perception Lab is looking for AI engineers who are interested in image processing algorithms.

What do we do?

Let us give you an example.

Everyone knowns that some phones take better pictures than others. The difference is not only in hardware, cameras of different phone models could be very similar in characteristics or even the same: algorithms provide the first places in the ratings. Over the past few years, the image processing has radically changed and the classical approaches have been replaced by neural networks: they correct images taken in the dark, remove glare, correct color and focus, recognize scenes, faces, and objects. New scenarios are also emerging, such as augmented reality: CyberVerse project will augment your world when looking on it through your phone screen; new sensors will be integrated into consumer electronics enabling many new features.

About the roles:

AI engineer in our team is actually a scientist. She follows the latest papers and knows mathematics very well; she is ready to discuss fresh trends in Image Transformers or the evolution of the Wasserstein GAN idea. At the same time, she understands how the actual hardware works.

Software engineer, on the other hand, understands the architecture of AI algorithms, but firstly knows how to make the algorithm faster and less energy consuming, taking into account the characteristics of a particular class of devices.

It takes knowledge and skills to be a successful algorithm creator; most our engineers have advanced degrees and years of experience. But you can start with less: if you are ready to discuss neural network architectures for image processing, or can advise on how best to compute convolution with a large kernel, this will be a great conversation starter.


We have seen brilliant people who did not have formal training in the field. However, all successful candidates so far had either a few years of relevant experience or at least a degree in Computer Science, Math or Physics. It would be also extremely hard to do something with neural networks if you do not know the theory and one of the commonly used frameworks.

Join our Team! We are waiting for your questions and CV!

If you have any questions, please send them to our RRI HR mailbox –

See you!

Moscow Optic Algorithm Lab

Our team was founded in 2013 in the Moscow Research Center of Huawei. Initially, our research was focused on the development of nonlinear algorithms for microwave communication lines, but later the focus shifted to optical telecommunications. As a result, at the beginning of 2021, a separate “Moscow Optic Algorithm Laboratory” was founded.

Research directions:

  • development of nonlinear models and new algorithms for their adaptation;
  • algorithms for modulation and constellation shaping that allow more efficient transmission of information in nonlinear channels;
  • algorithms for compensation of non-linearity of optical fiber in backbone communication lines;
  • algorithms for compensation of linear and nonlinear device imperfections;
  • low power consumption algorithms

Who are we waiting for:

  • Bachelor’s and Master’s degree graduates 2020-2021;
  • Master students or final year bachelor students;

Requirements for candidates:

  • Strong theoretical and applied math background (linear algebra, probability theory, statistics, theory of random processes, etc.);
  • Programming skills (Python, Matlab, C, C++, etc.);
  • Technical education (applied mathematics, computational mathematics, physics, communication systems, etc.);
  • English at the intermediate level and above;

What awaits you:

  • Opportunity to work on advanced algorithms for optical equipment;
  • Opportunities for professional and career growth in a company that is a global leader in telecommunications;
  • Work in a highly qualified team;
  • A unique opportunity to test your abilities and achieve success in global projects;

Join our Team! We are waiting for your questions and CV!

If you have any questions, please send them to our RRI HR mailbox –

See you!

We are searching for cooperation partners who can help us in the domain mentioned in the following.

KeywordsOperating system, architecture, kernel, driver development, security enhancement, file system, Linux , and performance optimization

An abundant software ecosystem is a key determinant of industry success, but it is also the biggest constraint and burden, hindering the development of new processor architectures.
Due to processor design differences, software components written in high-level languages cannot be accurately executed after recompilation in the new architecture. For example, issues such as multi-core data competition caused by differences in memory access consistency models may occur, which are difficult to locate and become a key obstacle to migrating the product ecosystem to a new architecture such as ARM64.

Key technologies, such as memory access behavior modeling and synchronous primitives, can be used to effectively identify and quickly resolve architecture differences during ecosystem migration.

KeywordsOperating system, formal verification, model checking, theorem proving, and programming language theory

The emergence of new application scenarios and hardware drives OS upgrades. However, the software ecosystem is usually the main obstacle to the promotion of OSs. System developers frequently try to share mature commercial system ecosystems through compatibility layers, which can barely achieve ideal compatibility and performance due to differences in architecture. The Huawei-developed elastic OS kernel architecture is highly advantageous in latency and security.
We need to discover methods to reuse the ecosystems (including upper-layer application ecosystems and underlying driver ecosystems) of mature systems such as Linux through ecosystem sharing technologies, while also maintaining architectures and greatly improving the business competitiveness of Huawei-developed OSs.

Keywords: Computer Architecture, Operating System, Scheduling, Heterogeneity

ARM has been applied in data centers, and RISC-V is also exploring its server application scenarios. Therefore, multiple ISAs of x86, ARM64, and RISCV will coexist in data centers. However, the ISA barrier leads to a heavy workload. That is, a significant amount of effort is required to develop and maintain an ecosystem with multiple versions, multi-architecture OSs, and applications. It is important to separate OSs and their attached software ecosystems as well as instruction sets, so that OSs and services can migrate between various instruction sets.

Break the ISA barrier by combining software and hardware, and enable applications to flow freely between various ISA running environments. One research direction involves using technical methods to prevent OSs and applications from sensing the differences of underlying ISAs.

Please see the file attached.


It is known that the Ruu matrix is a complex conjugate symmetric matrix (the size is 2×2 or 4×4, the following takes 4×4 as an example),

The diagonal elements() are real numbers, and the non-diagonal elements () are complex numbers.

The P matrix can be obtained by LDL decomposition of Ruu, as follows

Now we want to multiply the non-diagonal elements of the Ruu matrix by the real number α to get

Where * represents the Hadamard product of two matrices. The formula of P1 corresponding to Ruu1 is as follows:


Question: Is it possible to directly obtain P1 (or its approximate solution) based on P and α, without calculating LDL decomposition of Ruu1?