My responsibility was to code and design a mixed integer nested partition optimization algorithm in C++11 for the investigation of the academic researcher Ebert Brea.
Working on Academic Research
In 2021, I worked as a research assistant at the Center for Research and Development in Engineering (CIDI). This job was challenging.
My task was to build a solver for a complex math algorithm called the Mixed-Integer Nested Partition Optimization Algorithm. This wasn’t like building a normal website. I had to turn complicated math equations into working code that could solve really hard optimization problems.
Why I Used C++
The algorithm needed to run very fast. If I used Python or Java, small delays would add up and make the program take days or weeks to finish.
I had to use C++11, which is harder to program in but runs much faster. I had to manage memory myself and understand how the computer’s processor works. I had to be very careful to avoid crashes, especially since some calculations took 40 hours to complete.
I built everything from scratch without using external libraries. It was just me, the compiler, and the math.
The Results
After three days of running, seeing “Optimization Converged” on the screen felt great.
We successfully built an algorithm that could solve really complex problems that were too hard for traditional methods. My code helped validate a math theory that had never been tested at this scale before.
This project taught me a lot about computer science. Sometimes you can’t just download a library to solve your problem. Sometimes you have to build the solution yourself from the ground up.
Explore More Experiences

Software Engineer
SignatureAPI
I am responsible of leading the development of Signature API, a platform that provides a developer-focused, API-first platform for adding electronic signature capabilities to your applications and workflows.

Artificial Intelligence and Machine Learning Professor
Andrés Bello Catholic University
I taught about the fundamentals of artificial intelligence and machine learning, neural networks, convolutional neural networks, recurrent neural networks, generative adversarial networks, and reinforcement learning.

Programming Fundamentals Professor
Andrés Bello Catholic University
I was responsible of equipping students with the foundational knowledge and skills necessary for success in software development and computer science.