About me

Hi there! I'm Javier :wave:, a HPC/low-level software engineer and Ph.D. in Computer Science and Technology based in Madrid (Spain), passionate about C++, OS internals, and compiler design / implementation.

Short bio

Javier holds a B.Sc. in Computer Science and Engineering, and a M.Sc. and Ph.D. in Computer Science and Technology. During the last few years, his focus has been on development of low-level software (e.g. operating systems, embedded software and electronics, and compilers). Javier finished his Ph.D. in October 2020. His thesis focused on providing techniques that improve software reliability while also aiming at a good trade-off w.r.t. performance. During his Ph.D., he collaborated with the CERN’s ROOT project. Specifically, he worked on adding support for redefining entities on the Cling C++ interpreter where otherwise disallowed by the ODR, providing a significant improvement to the user experience. He joined again CERN’s ROOT team in September 2020 where he worked on RNTuple, the ROOT’s new, experimental columnar I/O system, and Cling maintenance. In March 2024, he joined Zimperium, Inc. as a Senior Compiler Enginner, where he works in AArch64 binary-to-binary software protection. Circa 2012, Javier also worked for Tuenti, a former well-known social network operating in Spain.

TL;DR

Currently, I work at Zimperium, Inc. as a Senior Compiler Engineer, part of the development team of an AArch64 binary-to-binary software protection solution. Most of my efforts are dedicated to implement obfuscation passes and, lastly, also to complete the support of unwind information / LSDA (Language-Specific Data Area) rewriting.

Formerly, I was working in the CERN EP/SFT (SoFTware for experiments) group. Specifically, most if not all of my work in 2020–2023 was happening under the ROOT project umbrella. ROOT is an open-source data analysis framework written mostly in C++ and developed mainly at CERN. ROOT was designed for high-energy physics (HENP) data analysis, but it is known to be also used in other domains, e.g. astronomy, bio-informatics, finances, etc. Among other components, ROOT provides columnar data storage (via TTree / RNTuple) and a C++ interpreter based on clang and LLVM.

My primary work areas at ROOT were:

Other than purely technical tasks, I was also in charge of the supervision of 5+ interns in the group, serving as a mentor for CERN-HSF during Google Summer of Code 2022, and involved in other training / support responsibilities.

Shortly before joining the ROOT team (2017-2020), I signed a predoctoral contract to conduct my research within the Computer Architecture, Communications and Systems (ARCOS) research group at University Carlos III of Madrid. The Ph.D. thesis contributes to the area of software reliability, verification and optimization. As a requirement for a thesis’ chapter, I wrote a prototype implementation in clang of proposal P0542R5 for C++ contracts.

For more information, please see a summarized version of my CV (English). A list of relevant publications can be accessed here. In my spare time, I also maintain / contribute to a number of open-source projects. See also my GitHub profile.