Skip to content

Software Engineer - Data Communication

  • Ottawa, Ontario

Job description

Our team has an immediate permanent opening for a Software Engineer.


  • 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.

Job requirements

What you’ll bring to the team:

  • BS 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/…) is an asset.
  • Strong ability to research complex topics, distill knowledge into concrete solutions.
  • Creative analytical skills and excellent troubleshooting/debugging skills.