San Francisco Bay Area
I’m currently a software engineer at Google. My main interests are Operating Systems, Machine Learning, Programming Languages and Distributed Systems. My favorite languages are Rust, Haskell and Python. I love music, I play the drums and DJ. I also love to travel and to shoot nice photographs. Food is something I really enjoy, therefore I had to learn how to cook some stuff.
Working on exciting projects for Fuchsia!San Francisco, CA January 2018 - now
Worked on the API layer and desktop/mobile web side of YouTube Red on projects like youtube.com/new and family plans for YouTube Red, among others.San Bruno, CA May 2016 - December 2017
Conacyt-Oracle-ITESO research project "Databases for real time applications and business intelligence". Most of the time I worked on that project, I was part of the QA development team in Timesten. I worked with some Perl scripts and ODBC tests for the Timesten team. The rest of the time, I worked on the research project with RDMA using the Verbs API.Guadalajara, México August 2013 - June 2014
Worked with Dr. Hugo Iván Piza on parallel genetic algorithms to optimize neural networks training.Guadalajara, México January 2013 - June 2013
I studied in Sweden for one year. The courses I took were: Graph Theory, Quantum Computing and Information, Software Validation and Verification, Artificial Intelligence, Mathematics behind the Internet, Computer Graphics, Model-driven Engineering and of course, Swedish.August 2014 - June 2015 Västerås, Sweden
GPA 9.81/10August 2011 - April 2016 Guadalajara, México
2012 - today
2014 - today
2012 - today
Application that allows to view local videos and photos on the TV using Google Chromecast. Developed with Electron, React and Redux. Work in progress.
Summer 2015 - present
Application to control the lights of a room, play music, set up alarms and other things. The app was built with ionic and it connects to a Raspberry Pi running a microservices application built with nameko. Work in progress.
Handwritten Digit Recognition
A Neural Network for recognizing digits. Simple implementation, trained using a small dataset generated using the training application that you can see on Github. Developed for the course Data Structures and Algorithms II.
Implementation of two image segmentation algorithms using Minimum Spanning Forests. The application allows to try different parameters to see their effects on the algorithms and compare them. Developed for the course Graph Theory, Networks and Applications during my exchange period at MDH.
Application that allows teacher to setup great online courses and engages students who take them, thanks to gamification concepts like levels, achievements, lifes, etc. Built using Django. Developed with Fernando Padilla, Jorge Barba and Iván Alejandro Rojas for the course Software Design.
Rush Hour Solver
Application developed to compare three search algorithms (DFS, BFS and A*) for solving the puzzle RushHour (Unblock-Me). The heuristic used for A* is the number of blocks in front of the main block plus one. Written in Java. Developed with Jorge Barba for the course Data Structures and Algorithms II.
Description and implementation of three community detection algorithms: Girvan-Newman, Markov Clustering and Community Detection via Simulated Annealing. Done with Gina Ardavičiūtė as final project for the course Mathematics Behind Internet during my exchange period at MDH.
Implementation of a general genetic algorithm with examples for optimizing the travelling salesman problem and for training a feedforward multilayer perceptron neural network. Done as part of some assignments and project for the course Artificial Intelligence during my exchange period at MDH.
Quantum computing library and Grover algorithm simulation. Developed for the course Quantum Computing and Information during my exchange period at MDH.
Small automata theory library part of a project for the course Automata Theory. The library includes regular expressions, deterministic and non deterministic finite automata and context-free grammars. Developed with Jorge Barba.
System to tweet from a 8052 microcontroller (we used an AT89C52) via a Raspberry Pi. The code running on the 8052 was written in Assembly and the code running on the Raspberry Pi was written in Python. Developed with Jorge Barba and Mario Leal as a final project for the course Microprocessor Foundations.