Huawei Canada has an immediate permanent opening for a Software Engineer.
About the team:
The YunShan Software Lab pioneers advanced software technologies and
architectures that address the most pressing pain points, complex issues, and
challenges in data communication device software. This lab is at the forefront
of innovation and tackles some of the most challenging and exciting problems in
data communication software.
About the job:
-
Explore and leverage advanced technologies to build the next-generation
elastic, composable and service-oriented software architecture for Huawei’s
data communication products (switch/router/IOT).
-
Solve technical challenges in the areas, including but not limited to,
micro-kernel OS, compiler techniques, programming language and runtime, NoSql
DB, concurrency control, high performance execution, trusted execution, high
availability and virtualization.
-
Optimize runtime performance and resource consumption, improve development
process and software quality.
-
Help migrate legacy code to new software architecture.
-
Design, code, test and collaborate with others.
About the ideal candidate:
-
Bachelor’s degree or above in Computer Science, Electrical Engineering or
related field.
-
Working knowledge of C, C++ and Linux.
-
Experience in embedded software development.
-
Familiarity with all the stages of software life cycle, development tools and
build process.
-
Understanding of operating system fundamentals, CPU architecture and data
networking.
-
Proficiency in other programming languages (Java/Go/Python/Lua/Shell/etc…) is
an asset.
-
Strong ability to research complex topics, distill knowledge into concrete
solutions.
-
Creative analytical skills and excellent troubleshooting/debugging skills.
LI-PB1