Richard Barnes is a research scientist and seasoned backend engineer based in Berkeley with 14 years of experience improving performance, reliability, and modern C++ standards across large open-source systems. He specializes in low-level systems, compiler compatibility, and GPU/CUDA performance tuning, contributing to high-profile projects like PyTorch, FAISS, Glow, and Facebook’s Proxygen and Velox. His work often targets subtle correctness and build issues—fixing LLVM-related compilation errors, eliminating undefined behavior, and modernizing APIs—to make complex codebases more portable and maintainable. Equally comfortable in Python and C++, he has improved numeric tooling (cvxpy, BIG-bench) and type-checking infrastructure (Pyre) while automating quality via tests and lint-driven refactors. Colleagues rely on him for pragmatic, detail-oriented fixes that reduce tech debt and unlock performance on hardware accelerators.
Tensors and Dynamic neural networks in Python with strong GPU acceleration
Role in this project:
Back-end & Performance Engineer
Contributions:102 reviews, 334 commits, 354 PRs in 2 years 3 months
Contributions summary:Richard's primary focus was on improving the performance and efficiency of the PyTorch library, particularly within the context of CUDA and GPU acceleration. Their contributions involved significant modifications to low-level CUDA kernels, including optimizing indexing operations and memory management within the `Indexing.cu` file. Furthermore, the user addressed performance bottlenecks by checking CUDA API calls for errors and synchronizing CUDA streams in various benchmark and testing files. The user also contributed to code related to CUDA device assertions, showing a concern for code correctness and debugging.
A Python-embedded modeling language for convex optimization problems.
Role in this project:
Back-end Developer
Contributions:38 reviews, 19 commits, 22 PRs in 3 years 3 months
Contributions summary:Richard contributed to the cvxpy library by fixing issues and improving the codebase. They exposed the `diff_pos` atom, corrected an argument in OSQP, and replaced `return NotImplemented` with `raise NotImplementedError`. Additionally, the user added type annotations, which likely improved code readability and maintainability. These changes suggest a focus on enhancing the core functionality and code quality of the convex optimization library.
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial
Richard Barnes - Research Scientist at iMeta Technologies Limited