Scroll To View More
Hire the top 3% of freelance developers
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
  • Robotics, 5 years
  • Artificial Intelligence (AI), 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
    2016 - 2017
    Kaja (via Toptal)
    • 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
    2016 - 2016
    Universidade Europeia (Laureate International Universities)
    • 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
    2016 - 2016
    Instituto de Telecomunicações
    • 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
    2012 - 2016
    University Institute of Lisbon (ISCTE-IUL)
    • 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
    2013 - 2015
    University Institute of Lisbon (ISCTE-IUL)
    • 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
    2009 - 2012
    PTWS Lda
    • 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, CSS, PHP, HTML, SQL, JavaScript, Sass, Python, XML, C#, C, Prolog, R
  • Tools
    PrestaShop, Eclipse IDE, Adobe Photoshop, RedBean ORM, Git, Atom, Adobe Illustrator
  • Paradigms
    Object-oriented Programming (OOP), REST
  • Platforms
    Mac OS, Linux, Windows
  • Storage
    JSON, MySQL, MongoDB
  • Other
    Neural Networks, Evolutionary Algorithms, Artificial Intelligence (AI), Robotics, AJAX, ROS
  • Frameworks
    AngularJS, Express.js
  • Libraries/APIs
    Google Maps, jQuery, Node.js, React, Ggplot2, OpenCV
  • Ph.D. in Computer Science
    2012 - 2016
    University Institute of Lisbon (ISCTE-IUL) - Lisbon, Portugal
  • Master's degree in Computer Science
    2010 - 2012
    University Institute of Lisbon (ISCTE-IUL) - Lisbon, Portugal
  • Bachelor's degree in Computer Science
    2007 - 2010
    University Institute of Lisbon (ISCTE-IUL) - Lisbon, Portugal
Hire the top 3% of freelance developers
I really like this profile
Share it with others