Scroll To View More
Miguel Duarte

Miguel Duarte

Lisbon, Portugal
Member since August 20, 2015
Miguel has extensive experience developing complex systems—such as robotic simulation platforms and distributed computing systems. He has a strong scientific research background that allows him to quickly learn and master new languages and frameworks. His prior industry experience as a web developer enables him to easily understand the customer's needs and design custom full-stack solutions.
Miguel is now available for hire
  • Java, 8 years
  • JavaScript, 7 years
  • HTML, 7 years
  • jQuery, 7 years
  • Artificial Intelligence (AI), 5 years
  • Robotics, 5 years
  • PHP, 4 years
  • Node.js, 2 years
Lisbon, Portugal
Preferred Environment
macOS, Atom, Git, Eclipse
The most amazing...
...project I worked on was designing and developing the hardware, software, and artificial intelligence for a real-world swarm robotics system.
  • Full-Stack Developer
    Kaja (via Toptal)
    2016 - 2017
    • Developed an intelligent itinerary planner that takes into account multiple variables, such as the users' preferences, point-of-interest properties (location, rating, category, etc) using machine learning techniques such as spatial clustering and genetic algorithms.
    • Developed a recommender system for events based on the users' Facebook liked pages. The system further cross-referenced the Facebook data with's API in order to discern musical tastes.
    • Added i18n to the product (both static and dynamic elements) using Microsoft Azure's Cognitive Services for automatic cached content translation.
    • Implemented a customized itinerary viewer with Google Maps. Implemented custom map overlays and integrated with the Directions API with client-side caching.
    • Implemented a complete redesign/rebranding of the website.
    Technologies: Node.js, PHP, Angular 1.5, Java
  • Invited Assistant Professor
    Universidade Europeia (Laureate International Universities)
    2016 - 2016
    • Taught and was responsible for the curricular unit Databases given to first-year students majoring in Game and Apps Development.
    • Taught and was responsible for the curricular unit Computer Architecture given to first-year students majoring in Computer Science and Computer Science with Management.
    • Placed in the top 10% of faculty with regard to student satisfaction.
    Technologies: MySQL, Assembly
  • Postdoctoral Researcher
    Instituto de Telecomunicações
    2016 - 2016
    • Developed a novel technique to automatically synthesize neural-based control for robots with complex morphologies.
    • Developed a client-server application to interact with the V-REP robotics simulator via its API, enabling the parallel and distributed evaluation of robotic controllers.
    • Published 3 peer-reviewed publications.
    • Winner of the Fraunhofer Portugal Challenge 2016.
    Technologies: Java, V-REP, Evolutionary Computation, Artificial Neural Networks
  • Doctoral Researcher
    University Institute of Lisbon (ISCTE-IUL)
    2012 - 2016
    • Developed a novel artificial intelligence approach for automatic synthesis of robotic control.
    • Designed and developed the hardware, software, and artificial intelligence for a real-world swarm robotics system.
    • Published 24 peer-reviewed publications.
    • Maintained and improved a custom distributed computing system.
    • Applied digital fabrication techniques for fast, iterative hardware design.
    • Won a Paper of Excellence award (IEEE ICDL-EPIROB, 2012), was nominated for a Best Paper award (PPSN, 2016), and won a Best Robot Video award (AAAI Video Competition, 2016).
    • PhD thesis won the "Fraunhofer Challenge" (Fraunhofer Portugal AICOS) and the "Best PhD Thesis in Robotics" award (Portuguese Robotics Society).
    Technologies: Java, Evolutionary Computation, Artificial Neural Networks, Distributed Computing Systems, Machine Learning, Robotics, Electronics
  • Teaching Assistant
    University Institute of Lisbon (ISCTE-IUL)
    2013 - 2015
    • Taught the curricular unit Introduction to Programming to first-year students majoring in Computer Science, Computer Science with Management, and Computer Science with Telecommunications.
    • Taught the curricular unit Object-Oriented Programming to first-year students majoring in Computer Science, Computer Science with Management, and Computer Science with Telecommunications.
    • Organized multiple events at the university in collaboration with the local IEEE student branch.
    Technologies: Java, OOP
  • Web Developer
    PTWS Lda
    2009 - 2012
    • Developed custom full-stack eCommerce solutions based on open-source platforms.
    • Created 3rd party payment gateways for multiple eCommerce platforms.
    • Managed a small team of developers.
    • Installed, configured, and developed modules for web software (Joomla, PrestaShop, WHMCS, and more).
    Technologies: PHP, JavaScript, HTML, CSS
  • JBotEvolver (Development)

    JBotEvolver is a Java-based open-source and versatile simulation platform for education and research-driven experiments in evolutionary robotics (ER). JBotEvolver has been used in previous ER studies of our research group: in offline evolution to online evolution and learning, single to multi-robot systems, and in a number of undergraduate and graduate courses at the University Institute of Lisbon (ISCTE-IUL).

  • Conilon (Development)

    Conillon is a lightweight distributed computing platform. It allows Java-based tasks to be computed on a grid of computers with minimal effort and overhead. The necessary Java classes are loaded by worker nodes as needed.

  • A Sea of Robots (Other amazing things)

    Winner of the "Best Robot Video" at the video competition held yearly by the AAAI international conference.

  • Color Orbs (Development)

    A game for Windows Phone that tests the player's memory and reaction speed. The player has to click colored spheres in the correct order and can also use power-ups to make the task easier. Color Orbs received the first prize in the Windows Phone App Code Camp competition.

  • Jhip8 (Development)

    Jhip8 is a Chip-8 interpreter written in Java and was intended as a first experiment in the world of emulation. The project implements all the opcodes and features with the exception of sound.

  • Chip8JS (Development)

    A JavaScript port of Jhip8.
    A working version can be found here:

  • Moppy + Floppy Guitar (Other amazing things)

    Adapted the open-source project Moppy to be able to play sound in multiple floppy drives using a MIDI keyboard as input. A later version allowed music to be played on the drives using a real guitar (see URL for videos).

  • Languages
    Java, SQL, CSS, HTML, PHP, JavaScript, Python, Sass, R, C#, XML, C, Prolog
  • Tools
    PrestaShop, Eclipse IDE, RedBean ORM, Adobe Photoshop, Git, Adobe Illustrator, Atom
  • Paradigms
    Object-oriented Programming (OOP), REST
  • Platforms
    Linux, Mac OS, Windows
  • Storage
    JSON, MySQL, MongoDB
  • Misc
    Neural Networks, Artificial Intelligence (AI), Evolutionary Algorithms, Robotics, AJAX, ROS
  • Frameworks
    AngularJS, Express.js
  • Libraries/APIs
    Google Maps, Node.js, jQuery, React.js, Ggplot2, OpenCV
  • Ph.D. in Computer Science
    University Institute of Lisbon (ISCTE-IUL) - Lisbon, Portugal
    2012 - 2016
  • Master's degree in Computer Science
    University Institute of Lisbon (ISCTE-IUL) - Lisbon, Portugal
    2010 - 2012
  • Bachelor's degree in Computer Science
    University Institute of Lisbon (ISCTE-IUL) - Lisbon, Portugal
    2007 - 2010
I really like this profile
Share it with others