João Marcos Duarte Matos

João Marcos Duarte Matos


2008 - 2009


University of Madeira

General subjects:Investment assessment.Specific subjects:Theory of Languages and Compilers;

Human-centered Software Engineering;

Information Systems Architecture;

Software Design and Implementation;

Network-centered Applications;

and Distributed Systems.

2002 - 2008


University of Madeira

General subjects:Calculus I;

Discrete Mathematics;

Mathematics Examination II;

Computer Numerical Analysis;Experimental Sciences;

Mechanics and Waves;

and Introduction to Management.Specific subjects:Object-Oriented Programming;

Data Structures and Algorithms;

Computer Architecture;

Operating Systems;

Data Bases Managers Systems;

Human-Computer Interaction;

Networks and Data Communication;

Computing Systems Architecture;

Artificial Intelligence;

and Requirements Specification.

Work experience

Work experience
2000 - 2002


Hellens Informática

Sale and maintenance of Computers and Networks



VMware ESXi (Virtualization)

During my internship at Center of Exact Science and Engineering I am using VMware ESXi to virtualize the servers and implement a new infrastructure with improved redundancy and availability of services.


The web sits I done was in XHTML with php, MySQL and a bit of Javascripting


I did a few dynamic web sits using php and MySQL


I did a few dynamic web sits with php


I did a few scrips in javascript.

UML 2.0

In all of my academic projects I used UML. In early projects I used only the Class Diagram and in later projects it was introduced the other Structure Diagrams and Behavior Diagrams. I became quite dependent on UML, for me it's a key tool in the Software development process.



The majority of my academic projects were done in Java. In Object-Oriented Programming I learned to use Class; in Operating Systems I used threads and semaphores; Human-Computer Interaction I used Swing; Networks and Data Communication I work with sockets and buffers; Artificial Intelligence I implemented search algorithms; and finally in Distributed Systems I used Java RMI, CORBA and other technology. In the end in Software Design and Implementation I learned how to use Design Patterns and make the most of Java, or any other OO programing language.


I developed a OCL Interpreter in my Master thesis using C#.

Object Constraint Language

I studied Object Constraint Language (OCL) during my Master thesis. I built a OCL Interpreter for the Metamodeling tool - MetaSketch.


As a curios person I like to seek information in very different subjects and not all of them related with my work or technology, this is the main reason way I see so much TV documentaries, my favorite channels are the Discovery, National Geographic, History and Odisseia.

I am not huge fan of books but I read a lot on the PC, mainly on the web.

Other thing I love is sports, I love to see and I love to practice, not that I am any good at it.