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 - nowWorked 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 2017Began as an intern, continued as full time. Worked mainly in the backend and devops with Python, Flask, Docker and Kubernetes. Also touched other parts of the stack with JavaScript, AngularJS, ReactJS, and Django. Developed the Request API which allows to integrate a small funcionality of Wizeline in third party applications and led the beginning of the devops team.
Guadalajara, México August 2015 - April 2016Conacyt-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 2014Worked with Dr. Hugo Iván Piza on parallel genetic algorithms to optimize neural networks training.
Guadalajara, México January 2013 - June 2013I 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, SwedenGPA 9.81/10
August 2011 - April 2016 Guadalajara, México2012 - today
Completed
2014 - today
2012 - today
Completed
Room Control
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.
Friendacity
Summer 2012
I made this website with the goal of providing an easy way for Udacity MOOC students to know each other. In Friendacity, Udacity students can arrange meetups, find students who are similar (age, courses, country, etc.) to them and establish contact with them. Developed using Python, JavaScript + jQuery and deployed to Google App Engine. I have stopped working on this project.
Handwritten Digit Recognition
Spring 2013
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.
Orkoraptor
Fall 2012
Application to draw Flowcharts, run them and generate the code in Ruby, Java, Python and JavaScript. It allows to save the flowchart in .orko files and load those fiels via drag and drop. Written in Java. Developed with Mario Leal for the university course Object Oriented Programming.
Image Segmentation
Fall 2014
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.
Gamie
Fall 2013
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
Spring 2013
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.
Community Detection
Spring 2015
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.
Genetics
Spring 2015
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.
PyQuantum
Fall 2014
Quantum computing library and Grover algorithm simulation. Developed for the course Quantum Computing and Information during my exchange period at MDH.
Sodascript
Spring 2014
Simple compiler for a simple language that compiles to JavaScript. Developed in Ruby with Juanjo De Anda and Fernando Padilla for the course Compilers.
OpenAutomata
Fall 2013
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.
MicroTweetPi
Fall 2013
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.