About the position
The SLICE Lab at UC Berkeley aims to democratize the design, programming, and integration of domain-specific computing at scale so that a wide-range of applications can benefit from specialized hardware, extending the continued growth in computational capabilities for future-generation computing ecosystems.
Under the direction of the Principal Investigator (PI), the Junior/Assistant Specialist will provide specialized technical support for research on compiler systems, agentic AI, and hardware–software co-design for emerging heterogeneous computing architectures.
Responsibilities include:
Implementing and integrating intermediate representations, executable specifications, compiler abstractions, and multi-fidelity architectural models into the lab’s research infrastructure. These tools will help researchers study the connections between application, compiler, architecture, and hardware-level decisions.
Support experiments on agentic methods for automated design-space exploration, compiler synthesis and optimization, hardware specification refinement, and mapping machine learning and robotics workloads onto specialized accelerators and heterogeneous systems.
The role will also includes developing testing and validation workflows, running benchmarks, and analyzing and documenting findings on programmability, correctness, performance, data movement, and architectural tradeoffs. The PI will set the research objectives and priorities.
Qualifications
Basic qualifications
(required at time of application)
Bachelor's degree (or equivalent international degree) or enrolled in Bachelor’s degree or equivalent international degree program
Additional qualifications
(required at time of start)
Bachelor's degree (or equivalent international degree)
Preferred qualifications
Bachelor's Degree or equivalent international degree in Electrical Engineering, Computer Engineering, Computer Science, or a closely related technical field, or equivalent technical experience.
Research or development experience in compiler systems, computer architecture, hardware-software co-design, or related systems areas.
Strong programming experience in C/C++ and Python.
Experience with compiler intermediate representations, compiler transformations, code generation, or program optimization.
Knowledge of computer architecture, heterogeneous computing, and hardware-software interfaces.
Experience developing and experimentally evaluating systems research prototypes.
Experience with MLIR, LLVM, IREE, TVM, CIRCT, or comparable compiler and intermediate-representation frameworks.
Experience designing compiler dialects, IR transformations, lowering pipelines, tiling and fusion strategies, quantization flows, instruction selection, target-specific code generation, or compiler optimization passes.
Experience with hardware-software co-design, including using workload characterization and compiler-generated performance data to inform ISA, accelerator, memory-system, or microarchitectural design decisions.
Experience with RTL and hardware-development infrastructure such as Verilog/SystemVerilog, FPGA prototyping, CIRCT, Chipyard, FireSim, Verilator, VCS, or comparable simulation and verification environments.
Experience with architectural or multi-fidelity modeling, including functional, cycle-approximate, data-movement, performance, or hardware-interface models.
Experience developing agentic AI or LLM-based systems for compiler construction, program synthesis, hardware generation, automated verification, design-space exploration, or software engineering.
How to apply
Document requirements
Curriculum Vitae - Your most recently updated C.V.
Cover Letter
Reference requirements
2 required (contact information only)
Apply link:
https://aprecruit.berkeley.edu/JPF05540
Help contact:
pdatta@berkeley.edu
This listing was collected from a public source and is reproduced here for
information only. Always confirm the details on the original posting before applying.
View the original posting