מציאת משרת הייטק בחברות הטובות ביותר מעולם לא הייתה קלה יותר
You will apply your knowledge of debuggers, binary instrumentation and computer architecture to enhance existing compute debugger tools and libraries, and extend them to new use cases. You should be comfortable working in C, C++ and assembly on a wide range of supported platforms: Windows, Linux, and embedded real time OSes. You should also be comfortable interacting with different development teams, and have an eagerness to learn about new compute and graphics drivers, GPU architectures and operating systems.
Develop the compute debugger tools for GPUs running on Windows, Linux, and embedded operating systems.
Extend the existing capabilities of the compute debug tools to support C++ expression parsing, expression evaluation, and code generation for GPU-evaluated conditional breakpoints, code patches, etc. to the instruction steam of the kernel(s) being debugged.
Collaborate with the compiler team to generate workflows and interfaces to enable the compiler to support expression evaluation and optimized code generation on behalf of the debugger.
Effectively estimate and prioritize tasks in order to create realistic delivery schedules.
Write fast, effective, maintainable, reliable and well-documented code.
Provide peer reviews to other engineers, including feedback on performance, scalability and correctness.
Mentor junior engineers.
BS or MS in Computer Science or equivalent experience
5+ years of experience
Strong programming ability in C, C++, Assembly Language and scripting languages
Excellent knowledge of computer architecture of x86 or ARM CPUs
Strong skills with low-level programming using assembly languages
Source control understanding (git, Perforce, etc.)
Ability to self-manage, communicate, and adapt in a fast paced, high demand environment with changing priorities and direction
Excellent communication skills, written and verbal
Experience with compiler AST and IR representations
Knowledge of CUDA programming
Demonstrated experience with build systems (CMake, Ninja, etc.)
Ability to interpret ELF/DWARF compiler output
Experience with Clang and/or LLVM
משרות נוספות שיכולות לעניין אותך