Enable job alerts via email!
Boost your interview chances
Create a job specific, tailored resume for higher success rate.
An innovative company is seeking a Co-op Software Engineer to join its Distributed Data Storage and Management Lab. This role focuses on researching and developing advanced distributed database systems, emphasizing cutting-edge algorithms and collaboration with a talented team of engineers. Ideal candidates will be pursuing a degree in Computer Science or a related field, possess strong programming skills in C and C++, and be eager to tackle complex data challenges. Join a forward-thinking team dedicated to creating next-generation cloud products and enhancing global AI infrastructure.
Huawei Canada has an immediate Co-op opening for a Software Engineer.
About the team:
The Distributed Data Storage and Management Lab leads research in distributed data systems, aiming to develop next-generation cloud serverless products that encompass core infrastructure and databases. This lab addresses various data challenges, including cloud-native disaggregated databases, pay-by-query user models, and optimizing low-level data transfers via RDMA. Teams within this lab create advanced cloud serverless data infrastructure and implement cutting-edge networking technologies for Huawei's global AI infrastructure.
About the job:
Research and development of distributed, highly available transaction processing database management system focusing on algorithms for scale up and scale out.
Work with a team of architects and engineers to develop proof-of-concept systems and components across the data manager, buffer manager, and transaction processing components.
Investigate and design new data structures and algorithms focusing on lockless and NUMA-aware approaches on the latest hardware technology.
Collaborate with QA and continuous integration teams to ensure a high-quality overall solution through automated unit tests, functional testing, and system testing.
About the ideal candidate:
Enrolled in or pursuing a BS, MS, or PhD degree in Computer Science, Electrical Engineering, or Telecommunications.
Proficient in C and C++ programming.
Experience with design and development of distributed database, storage system, file system, or cache system is an asset.
Experience in open source communities is an asset.
Excellent team player with strong collaboration and communication skills.
Strong documentation and organizational skills.
Self-motivated with a strong desire to learn on the job.