Software Engineer for R&D - Distributed Database (New Graduate)
- 10 Aviva Way, Markham, ON L6G 1B3, Canada
With 194,000 employees and operating in more than 170 countries and regions, Huawei is a leading global creator and provider of information and communications technology (ICT) infrastructure and smart devices. Integrated solutions span across four key domains – telecom networks, IT, smart devices, and cloud services. Huawei is committed to bringing digital to every person, home and organization for a fully connected, intelligent world.
About Huawei Canada
Huawei Canada focuses on fundamental research and development aimed at solving complex technical problems in emerging technologies like 5G, AI, Human Computer Interaction and Autonomous Driving. With ongoing research initiatives with 10 Universities across Canada and strategic collaboration agreements with several Universities, we support Canada’s rich research community. In 2020, Huawei Canada ranked among the Top 20 corporate R&D investors in the country with a huge 40% increase in R&D investment year over year. Huawei Canada was established in 2008 and now has a total workforce of 1,200 in our six research centers across Canada.
“Huawei will continue to be an important contributor to Canada’s knowledge-based economy,” “Openness and diversity are Canada’s great strengths. They help attract global talent and business. Huawei Canada’s R&D spending creates jobs, trains talents, supports fundamental research, and accelerates knowledge-to-impact in Canada. We are proud of all of that.”
Changtian Cai, President, Huawei Canada R&D.
Huawei Canada is looking for talented software engineers to join the Distributed Data and Storage Lab, based in Markham, Ontario. The Lab's mission is to leverage technologies on distributed systems to improve the performance of Huawei products—from 5G network equipment to mobile phones, and from smart home appliances to cloud services.
Our product is one of the fastest growing database management systems in an evolving market. Our team has started up in Markham recently with less than 10 developers, but is in rapid growth mode.
We are looking for talented and motivated individuals who can join us to tackle challenging problems and develop new technologies onto distributed database management system.
- Research and development of distributed, highly available share nothing 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 and state of the art hardware technology
- Continuous enhancements on the distributed database system to fulfill customer requirements for self-tuning under differing workload conditions.
- Mentor junior colleagues on algorithm design, data structure and software engineering aspects. Focusing on high performance scalable code.
- Work with QA and continuous integration teams to drive a quality overall solution though a combination of automated unit tests, functional testing and system testing of the solution.
- Bachelor or Master major in computer science or related area
- Proficient in C and C++ programming
- Excellent documentation, organization and communication skills
- Self-motivated learner; strong desire to learn on the job
- Must be a team player
- Experience with design and development of a distributed database, or storage system, or file system, or cache system
- Experience in Microsoft SQL Azure/Aws RDS Aurora/Oracle RAC/IBM Db2 pureScale
- Experience in open source community
We thank all applicants for their interest, however only those candidates selected for interviews will be contacted.