You can also download a PDF version of my curriculum vitae.
I work in several programming-related projects, both as a professional and as a hobbyist. Both my interests and experience revolve around topics on algorithms (general combinatorics, graph theory, geometric computation and others), artificial intelligence and web development.
Currently, I design and optimize database schemas and queries. I am also developing a toolchain to help automate the map build system. I work with technologies such as Python, SQL and C++.
since October 2010
I studied, implemented (in C++) and compared several algorithms for the vehicle routing problem applied to waste collection vehicles routing.
February to July 2010
Implemented a multiplayer game about recycling and the environment using Flash and ActionScript 3.
during May 2010
Haptic software developer
Faculty's Department of Mechanical Engineering
Developed a haptic-feedback enabled application for remotely controlling a motor. Built using C++, Qt and OpenGL.
from 2009 to 2010
Computer Graphics undergraduate teaching assistant
I helped students with their C++, Java and OpenGL problems, with special focus on lighting, texture mapping, shading and transformations.
February 2009 to June 2009
Statistics gathering system developer
I wrote SQL queries for a module that generates reports on complaints for all portuguese healthcare entities. This web application was written in ASP.NET and MSSQL.
In a team of three, I planned and developed a social web platform for the publication of architectural projects. We used Flash, XML, XHTML, CSS, PHP, MySQL and Python.
2006 to 2009
Algorithms and Data Structures private tutor
I helped two graduation finalists with their studies for the final exam on the algorithms and data structures course. They both succeeded, with grades of 13 and 19 out of 20.
Master in Informatics and Computing Engineering
Average grade of 17 out of 20.
From 2004 to 2010
Extra curricular experience
OpenID Provider developer
I implemented part of an OpenID Provider for FEUP's community. I connected it to our authentication server, providing thousands of accounts without need for registration.
April to October 2009
I coordinated the group's projects and activities. I interacted with several faculty departments, looking for opportunities to start new projects.
2009 to 2010
Haptic software developer
Measurement for Instrumentation Laboratory, at FEUP (LIM)
I developed a game in which the user controls a physical pointer and tries to pop virtual balloons with it. The game was developed in C++, using OpenGL and the device's library.
2007 to 2009
I developed several web applications to help gather funding for this group. On the World Usability Day of 2008, I helped with the organisation of a set of talks on the subject.
2006 to 2009
Progress in Artificial Intelligence: 14th Portuguese Conference on Artificial Intelligence, Epia 2009, Aveiro, Portugal, October 12-15, 2009
NEATSqueak on Wheels: Neural networks applied to movement optimization of a simulated robot
Virtual University 9th International Conference, Bratislava, 11-12 December, 2008
Human-Machine Real-Virtual Haptic Interaction Systems
- Portuguese (native) and English (fluent)
- Programming contests
I have been participating, in a team of three, in several programming contests held by the Association of Computer Machinery (ACM), from 2005 to 2009. Our best results were:
- TIUP (Portuguese Inter-University Tournament) 1st place
- MIUP (Portuguese Inter-University Marathon) 2nd place
- SWERC (South-Western European Regional Contest) 17th place
I entered in Google Code Jam 2008, 2009 and 2010, a worldwide programming contest with more than 8000 participants. In both 2009 and 2010 I ranked among the top 500 contestants, being the best ranked Portuguese participant.
- Open source contributions
- I have contributed to multiple open source projects, such as Ruby on Rails, by submitting code patches. I also helped by translating some software packages to Portuguese, for the Debian Project.