The Programming Technologies Lab of Huawei is seeking candidates w/ expertise in the broad area of cloud computing technologies. Our lab is young but growing and has a vast technical space to explore. We welcome researchers and engineers alike. More information about Huawei can be found here.
As a member of a highly talented team, you get to do creative work and make an impact by solving real customer problems. While our current projects include language design, compiler & JVM, and performance optimization, the lab continues to grow and expand to explore software technologies in new domains (e.g., cloud, distributed computing, smart devices). As such, we are not looking for people w/ a fixed set of skills, but rather for “growth-mindset” people who have versatile experience in the field and are undaunted by acquiring new skills.
Responsibilities:
· Research in: performance analysis & optimizations; program analysis tools design, prototypes and implementation; with focus on distributed and cloud computing.
· Proactively engage with customers to identify opportunities for cloud technology solutions; bootstrap projects from scratch; and turn ideas into prototypes and production.
Requirements:
· Ph.D. in Computer Science or 5+ years of work experience in the relevant areas
· Expertise/experience in one or more of the following areas:
· Distributed and cloud system architectures, tools technologies, its challenges and solutions on these systems.
· Methodologies of performance optimization in VM; runtime and library; and full stack software profiling; software engineering tools on distributed or/and cloud systems.
· Performance measurement, analysis and optimization via experience in a relevant area, such as performance modeling, parallel software development.
· Strong software development skills, proficient in software engineering techniques and methodologies
· Fluency in C/C++/Java and many other cloud-based programming languages
Preferred qualifications:
· Because we develop cloud tools technology for a variety of purposes, competence in a breadth of distributed systems in heterogeneous environment is a plus
· Experience with runtime system, such as memory management and concurrent task scheduling, and in newer, cloud based languages like Go, Rust, Scala, and Swift
· Experience with developing programming technologies for the Cloud and/or distributed environment and smart devices
· Prior engagement in open-source projects, developers’ community, and/or research community
Huawei Inc. is proud to be an Equal Opportunity Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, disability, protected veteran status, or any other characteristic protected by law.