Amir Ayupov

Software Engineer, Compilers at Meta

Mountain View, California, United States
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts

Summary

🤩
Rockstar
🎓
Top School
Amir Ayupov is a compiler engineer with 10 years of experience specializing in post-link binary optimization and HW/SW co-design, currently working on Meta’s BOLT project in Mountain View. He brings deep backend and performance engineering skills honed at Intel, where he implemented compiler optimizations, ISA prototyping in LLVM’s x86 backend, and simulator features for microarchitecture analysis. His open-source contributions to LLVM and the Facebook BOLT archive focus on jump-table handling, multi-way split functions, profile integration, and efficient binary layout—skills that directly improve real-world runtime performance. With strong academic credentials from MIPT in applied mathematics and a background in language interpretation, he pairs rigorous analytical thinking with a knack for practical tooling that squeezes measurable gains from complex binaries.
code9 years of coding experience
job8 years of employment as a software developer
bookBachelor's Degree, Applied Mathematics, 4.54/5, Bachelor's Degree, Applied Mathematics, 4.54/5 at Moscow Institute of Physics and Technology (State University) (MIPT)
languagesRussian, English
stackoverflow-logo

Stackoverflow

Stats
1reputation
0reached
0answers
0questions
github-logo-circle

Github Skills (14)

assembly10
c-language10
bolt10
cprogramming-language10
performance-optimization10
binarydiff10
x86-6410
llvm10
control-flow-graph9
control-flow9
yaml9
instrumentation8
code-generation8
x868

Programming languages (9)

C++ShellCSSCRustLLVMTeXHTML

Github contributions (5)

github-logo-circle
llvm/llvm-project

Jan 2023 - Jan 2023

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
Role in this project:
userBack-end Developer
Contributions:400 reviews, 5 commits, 346 PRs in 5 days
Contributions summary:Amir's contributions primarily revolve around enhancing the LLVM BOLT (Binary Optimization and Layout Tool) project, focusing on performance improvements and profile integration. They introduced mechanisms for handling call target information within the YAML profile writer, specifically for BAT (Binary Address Translation) scenarios. They also worked on support for multi-way split functions and fixed issues with the encoding of basic block counts within BAT. Furthermore, the user addressed several bugs related to profile handling, call continuation, and improved the efficiency of the data aggregation process.
compilerstechnologiesclangsubmittoolchain
facebookarchive/BOLT

Jul 2020 - Mar 2022

Binary Optimization and Layout Tool - A linux command-line utility used for optimizing performance of binaries
Role in this project:
userBack-end Developer & Performance Engineer
Contributions:1 review, 261 commits, 29 PRs in 1 year 8 months
Contributions summary:Amir primarily focused on optimizing the performance of the `bolt` binary optimization tool. They implemented changes to improve jump table handling, particularly for split functions and fragments. Further improvements included code related to tail calls, debug information, and instrumentation, indicating a focus on core functionality and efficiency enhancements. The contributions suggest a role focused on improving the core logic and the analysis and transformation of the target binaries.
compilersclanglayoutcommand-line-utilitylinux
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