Matias Calegaris, Software Developer in Buenos Aires, Argentina
Matias Calegaris

Software Developer in Buenos Aires, Argentina

Member since November 17, 2015
Matias has eight years of experience developing software on multiple platforms, mainly C++ and Unity3D, for different industries, including games, communication, and ATM companies. He has worked on seven published games and developed networking software to handle high traffic applications. He is a flexible developer who enjoys learning new technologies and sharing his ideas.
Matias is now available for hire

Portfolio

Experience

Location

Buenos Aires, Argentina

Availability

Part-time

Preferred Environment

Subversion (SVN), Xcode, Visual Studio, Linux, Mac OS, Windows

The most amazing...

...project I've worked on was a Nintendo DS game, working with the limited hardware to make everything run smoothly.

Employment

  • C++ Analyst

    2013 - PRESENT
    Vates S.A
    • Created a wrapper for the DB API for C++.
    • Migrated legacy code using SQL server to an Oracle database.
    • Created a new generic tools library for the company.
    • Gave support for all teams in the company using C++.
    • Maintained and upgraded generic components of the company framework, extending support with C++11.
    Technologies: PL/SQL, OCCI, C++11, C++98
  • Back-end Developer

    2012 - 2013
    Intraway
    • Created a metric system to trace the state of every component in the system.
    • Added new camera support to the video surveillance software.
    • Maintained the camera surveillance software of the company.
    • Created a generic machine-to-machine server with the purpose of provide a generic interface to handle different devices with different protocols.
    • Helped optimize the front-end render using WebGL.
    Technologies: Oracle, Python, C++
  • API Developer

    2011 - 2012
    Playtomic
    • Extended the Objective-C analytics API for iOS: The company provided an Analytics service and provided the API in different languages for developers, my first task here was to fix and extend the Objective C API and provide support for users.
    • Created a cross-platform C++ analytics API for Windows/Mac/Linux/iOS/Android. Created the API for scratch in C++, it basically provided a common interface to log events and send them to our back-end server using a Rest API.
    • Created a UI for Unity3D for the analytics API:. Created a dashboard inside the unity editor so the developer could see their project info without the need to open a browser and adding extra features like loading scenes or heat maps from the dashboard.
    Technologies: C#, Unity3D, Objective-C, C++, Unity
  • Game Programmer

    2009 - 2011
    Sabarasa
    • Adapted the current Nintendo game engine to support Nintendo DSi features and publish DSi-ware products.
    • Worked on Nintendo DSi game Save the Turtles (http://www.nintendolife.com/reviews/2010/04/save_the_turtles_dsiware).
    • Coded the gameplay of the Nintendo DSi game "Art of Ink" (http://www.nintendolife.com/reviews/2011/04/art_of_ink_dsiware).
    • Created a prototype for PS3 using Infernal Engine.
    • Helped create a new game engine for Nintendo DS/DSi for the studio.
    • Worked on SpongeBob's Surf & Skate Roadtrip for Nintendo DS (http://www.nintendo.com/games/detail/J7_4Aas4bObEtKSjLwYdFEutzAXOYeSQ).
    Technologies: C++
  • Game Programmer

    2008 - 2009
    Ivolgamus
    • Coded 10 mini-games for the game Shrek's Carnival Craze for Nintendo DS.
    • Coded 10 mini-games of the game 101 in 1 Explosive Megamix for Nintendo DS.
    • Worked on 5 mini-games of the 101-in-1 Party Megamix Nintendo Wii.
    • Fixed DS core input detection.
    • Created a basic scene graph for the Nintendo Wii proprietary game engine.
    Technologies: C++

Experience

  • Augmented Reality OpenCV Demo (Development)
    https://youtu.be/774VfFo_oJA

    This technology demo is an augmented reality application, which shows the integration between Unity, OpenCV, C++, ARToolkit. The idea behind the app is a small game where multiple users (interacting via a local network multiplayer) fight against an enemy and build the scenario using real world objects.

    This app works on both iOS and Android, C++ the native code used to do image processing (which uses OpenCV) is compiled on each platform without changes (100% cross platform).

    Features:
    • Real time multiplayer (via Unity mulitplayer)
    • Image processing (https://youtu.be/774VfFo_oJA, the scenario is generated scanning the image for different colors and then creating the proper elements, like fire).
    • Augmented reality (used to identify the 3D that the scenario will be placed on and allow camera's tracking).
    • Shading (vertex shaders used to do not render below the real world)
    • Native code linking (via C#'s pInvoke and native build DLLs).

  • Unity3D + Oculus Rift (Development)
    https://www.youtube.com/watch?v=L-Bm4H-ztAc

    Using Oculus Rift's Unity integration (4.2, several years ago), we implemented an application that allows us to test the psychological effects of certain scenarios like being at a building's rooftop, walking through reduced spaces, and fear of certain animals (e.g., spiders). The idea is to build an immersive experience to users that can't be exposed to those situations in real life.

  • Offline Image Calibration (Development)
    https://www.youtube.com/watch?v=hKCl4XmeJqo

    Using OpenCV under C++ plus MFC, we developed an application to allow calibration of a set of images taken by a 360° photo booth. This is a device comprised of an array of cameras that take a photo at exactly the same time. Due to construct issues, the cameras never have the same focal point or the same orientation.

    This application allows the user to, once the device is installed, use the application to aid the software calibration of the device (the application loads the set of photos and automatically tries to calibrate them based on the feedback provided by the calibration element, a red and green tube).

    Once the calibration is done, a set of parameters is saved for each camera so the image processing server can call an external process providing these parameters to warp the images (we also developed that application).

  • SpongeBob's Surf & Skate Roadtrip (Development)

    Based on the popular SpongeBob show, this game is composed from four mini-games.

    I was involved in the development of two games (an isometric skate game and the surf game) and some shared resources of the four mini-games.

  • Art of Ink (Development)

    Art of Ink is a drawing game where you have to draw a tattoo while avoiding too much pain for the client.

    I was in charge of gameplay, optimizing the input detection to create a smooth drawing experience, and performing collision detection of the valid draw areas to ensure that the player was drawing in the correct spot and measuring the progress.

  • Save the Turtles (Development)

    Save the turtles is a puzzle game where you have to align three or more turtles of the same color while avoiding different obstacles that could kill them.

    I was involved in every aspect of the game, from extending the engine to support DSi features (integrating sound API and creating resource managers) to working on gameplay features like line matching and score system and UI development.

  • Flare 3D WebGL Renderer (Development)

    Based on the requirements of the Flare3D's team, we made a JS library based on Flare's AS3 API but implemented with WebGL. The idea behind the project was to explore WebGL's capabilities so WebGL + JS could be a build target for Flare Studio.

    We used TypeScript as a base language to improve code quality since we were used to strongly typed languages. The last version of the API is able to load .fz3d files and manages several shader materials (diffuse, specular, normal map, etc) and implements a scene graph, matching with the core Flare's rendering API.

  • 101 in 1 Explosive Megamix (Development)

    The project consists of a collection of 101 mini games. I coded ten of the mini games.

  • Shrek's Carnival Craze DS (Development)

    Shrek's Carnival Craze is a Nintendo DS game that includes 28 mini games, I was assigned to ten of them to code.

  • Ya lo llevo (Development)

    This project is a messenger service where users can send their desired product to other locations and another type of user (shippers) could pick the package up to delivery it. The admin site was made with Laravel PHP and the mobile applications iOS (Swift) and Android (React Native). Also, we used Firebase for the notification system.

    Once a user submits their desired location to send the package, the shipper app tracks it and searches for messengers available to deliver it. After arriving and tracking the shipper GPS, the user can confirm the shipment and the transaction takes place using MercadoPago.

    I built the iOS application from scratch using Swift and finished the development of the Android app done by a third party with React Native.

  • Field Force Manager App (Development)

    Create an Android application to track the company workforce on the streets, providing the employee with the locations required to visit every day and the task to perform on each place with a report to fill to track any issues.

    The applications tracks daily routes and the supplies required for the whole day and for every location.

    This app was made with Xamarin Android

  • Restaurant Self-ordering Platform (Development)

    During 2018, we built this platform for an undisclosed client. It is a end to end system to manage restaurant menues and ordering. It has several components including the point-of-sale system, the in•restaurant ordering system (both for tablets), an online back office to manage the menues and restaurants (because is multi•user, multi•restaurant) and an Android/iOS app for pre-ordering outside the restaurant and then continuing the experience within the same app at the table.

    I defined the system architecture and implemented all the mobile apps using ionic:
    • Kiosk tablet app for the customers
    • Kiosk tablet app for the restaurant to handle the orders
    • Android/iOS app for the user outside the restaurant.

  • Robotics Tournament Platform (Development)

    The Robotics Tournament is a national contest for students, focused on solving global problems. This year's challenge was ocean cleaning using robotics. We developed an app ecosystem to help report match scores in real time. The platform handled tournament setup and progression as well. Solving challenges in a really crowded place where wifi networks can't be made reliable, we implemented a communication system to minimize network latency.

    The system has four components: a server to manage the data, the operation room desktop app where we can switch the screen content and advance the tournament; and two mobile app (for referees and for assistants, respectively). We also developed the inter-app interactions necessary to facilitate real time scoring, a feat involving cooperation between the operator, referee, and assistant.

    We used Unity3D on the server. For the operator app, we used Angular and Electron to get a desktop build of our web app in order to give the user a non-browser-dependent, desktop experience. And finally, we used Ionic for the mobile app, implementing a responsive design for tablets and cell phones alike, since it was necessary to anticipate potential backup devices of a variety of screen sizes.

  • Kinect Rock Event (Development)
    https://youtu.be/w7lRIMCu5rI

    For product branding in a music event, I developed a game where the user has to pose and select a music band album as a background. Then the picture is created and he can share it on social media.

Skills

  • Languages

    Objective-C, C++, TypeScript, Swift, C#, Python, C++98, C++11
  • Tools

    Subversion (SVN), Microsoft Visual Studio, Git, Visual Studio, Xcode
  • Frameworks

    Unity, Unity3D, Ionic 3, iOS SDK
  • Libraries/APIs

    Xamarin.Android, Protobuf
  • Platforms

    Nintendo DS, Windows, Android, Mac OS, Oracle, iOS, MacOS, Linux, Xamarin
  • Paradigms

    Open Cloud Computing Interface (OCCI), Object-oriented Programming (OOP)
  • Storage

    OCCI, PL/SQL, Oracle SQL
  • Other

    Xamarin Forms

To view more profiles

Join Toptal
Share it with others