Indie Game Developer2002 - PRESENTHernan Saez
Technologies: WebGL, C++11, 3D Games, Metal, iOS, Lua, OpenGL, C++
- Developed Crimild, my own game engine using C++ and OpenGL. Over the years it has been used in several commercial and educational projects. It supports Windows, Linux, OS X, iOS and Android. Crimild is open source and it's currently hosted on Github.
- Built and published Le Voyage in 2016, an iOS game based on the works of George Mellies and Jules Verne. The game was built using the Crimild engine and supports a Metal-based renderer.
- Created and published Pocket Balloon in 2018, a game that uses augmented reality to fly a hot air balloon. Players blow on the screen of their phones to push the balloon forward and make it land on designated areas.
- Designed several game projects for competitions like Ludum Dare and CODEAR over the years, using different tools and platforms like Crimild, Flash/Action Script and WebGL.
- Created art assets for most of my games using tools like Blender, Adobe Photoshop, and Adobe Illustrator.
AR Mobile Developer2016 - 2017CamOnApp
Technologies: WebGL, C++11, Vuforia, OpenGL, Java, Android, Objective-C, iOS
- Maintained and extended the existing mobile applications with new features based on project requirements.
- Updated existing code base to support latest technologies, like C++11 and OpenGL ES 3.
- Extended existing DSL with new options for virtual objects using JSON files for defining scenes.
- Created a reusable SDK which was later integrated into existing or new applications.
- Improved 3D rendering engine and object animations for virtual scenes.
- Coordinated with back-end developers in order to integrate mobile applications with the existing web editor for virtual scenes.
- Developed a mobile application for Android and iOS using the CamOnApp SDK to display augmented reality content on top of chocolate packages.
- Built a prototype for a Pokemon Go-like interface for an augmented reality map displaying places of interest and other information on the street.
R&D Engineer2012 - 2016SCV Soft
- Developed a prototype for a client in the US using machine learning and data analysis to gather usage information from different home appliances, displaying results in the form of charts, and detecting specific behaviors such as wether a washing machine is about to end its current cycle and delivering notifications to the end users.
- Created a proof of concept for an Android application that connects with a prototype camera, using computer vision techniques and OpenCV to analyze the captured photos and determine the current state of railroad cables and whether or not they should be replaced.
- Built a library for iOS and Android that communicates with an smart plug prototype for a client located in the San Francisco area. I spent several weeks at the client's offices adapting their existing code base to the library requirements.
- Developed a prototype using Java and Apache Camel to communicate different systems together for a company in the US.
- Built the prototype for the embedded software running on an experimental hardware for an IoT company in the US using C++ and OpenWRT.
Mobile Technical Leader2012 - 2016SCV Soft
Technologies: C++11, Xamarin, Android, C++, iOS
- Developed an iOS application for using computer vision techniques for people with limited mobility, allowing them to communicate and send emails by blinking their eyes.
- Built an Android application based on an existing iOS product using a new camera device to capture short videos and later edit them by adding visual effects, titles and audio.
- Developed a mobile application for Android and iOS using Xamarin, using BLE to communicate with a new peripheral that monitors the heart rate of the user and performing electrocardiogram tests, displaying the results in real time in the mobile device.
- Served as a technical interviewer for new candidates.
- Evaluated the technical viability of new projects.
AR Mobile Developer2012 - 2014CamOnApp
Technologies: C++11, Vuforia, OpenGL, Android, C++, iOS
- Developed the application prototype for both iOS and Android, using C++ as main language and implemented binding code for both Objetive-C and Java/JNI.
- Integrated Vuforia libraries with Crimild engine in both platforms, as well as other third party libraries like OpenAL and Lua.
- Implemented a custom DSL for defining virtual scenes.
- Coordinated with technical and non-technical partners in order create new virtual experiences.
- Defined rules for exporting 2D and 3D assets in a format readable by the applications.
Founder/CTO2010 - 2012Building Brothers
Technologies: C++11, 3D Games, Adobe Photoshop, Blender 3D, Unity3D, 3D, Unity, Crimild, Adobe Flash, OpenGL, C++
- Designed and developed proof of concepts, technical demos, and tools for video game creation for Windows, Mac OS X, and iOS.
- Developed the Nameless Engine based on Action Script, using the Game Entity/Component design pattern, creating game scenes using a data-driven approach and XML.
- Developed "Revancha Zombie", a game built in less than a month for CODEAR 2011, an Argentinian video game development competition.
- Worked with a local industrial design University to provide technical for students on their final projects.
- Provided technical support for sales representatives, and visit client offices to gather requirements for new projects.
- Designed a proof of concept for a tactical board game.
- Built a prototype for Lego-like mobile game using a virtual workshop where players can connect each other using bluetooth or wifi in order to build things together.
iOS Architect2009 - 2010TeraCode BA SA
Technologies: C++, Objective-C, iOS
- Participated in the kick-off process for new iOS projects, assisting technical leaders and project managers.
- Designed the architecture and best practices for new and existing projects, maintaining a constant communication with team leaders during the rest of the project lifetime.
- Worked directly with clients in order to define project requirements and helping them adapt to the new technologies and paradigms.
- Collaborated with graphic designers in order to ensure that user interfaces follow the guidelines provided by Apple.
- Implemented critical features for several projects on demand, based on requests from technical leaders or project managers.
- Developed a business application for iOS displaying charts and other data using proprietary rendering libraries.
- Built a prototype for a medical application for iOS using OpenGL to render molecules and chemical compounds.
Pre-Sales Engineer2008 - 2010TeraCode BA SA
Technologies: .NET, C++, iOS
- Worked alongside sales representatives to define new products and proposals, gathering requirements from new or existing clients.
- Travelled to potential client offices in the US (Boston Area) to write down specifications and time estimates for their completion.
- Collaborated with HR managers to provide feedback about how the different teams should be composed and the required skills for their members.
- Participated as a consultant engineer during the kick-off process, working as a nexus between the client and the new team.
- Provided feedback to sales representatives about the technical viability of new projects, including rejecting any proposal that were not a fit for the company's goal and or culture.
Technical Instructor in the internal training program2007 - 2010TeraCode BA SA
Technologies: Java, iOS, .NET, C++
- Worked along other engineers to create a technical course consisting of several different classes explaining state-of-the-art technologies (at the time) and best practices.
- Created documentation for the attendants that complemented the existing classes.
- Gave several lectures in front of an audience for different technologies, like SVN, .NET Framework and the MVP pattern.
- Coordinated courses and instructors.
- Worked with HR staff in order to create new courses for existing employees.
Technical Interviewer2005 - 2010TeraCode BA SA
Technologies: .NET, iOS, C++
- Interviewed new candidates for job positions in different technologies, both online and face-to-face.
- Collaborated with other technical leaders to define the set of questions or problems for the candidate to solve during the interview.
- Provided feedback to HR and managers during and after the interview process, often deciding wether or not a candidate would be a good fit for the company.
- Participated as a support interviewer for technologies that were not my main focus, like Java or PHP.
iOS Game Developer2008 - 2009TeraCode BA SA
Technologies: 3D Games, OpenAL, Crimild, OpenGL, C++, Objective-C
- Designed and developed DogFighter, an air combat arcade game for iPhone and iPod Touch.
- Integrated Crimild, my own open-source 3D game engine, with iOS technologies.
- Provided technical support for the graphics designer in order to work with iOS, since it was a new paradigm at the time.
- Worked with early iOS toolchains, even before the release of the official iOS SDK and Xcode IDE.
- Provided support for the agent in charge of publishing games and apps to the App Store.
C++ Technical Leader2005 - 2009TeraCode BA SA
- Worked with an existing code base for an application based on ASP 3.0 and ATL/COM implemented in C++.
- Developed a desktop-based application for screen recording using Win32 API.
- Develop a Windows service for monitoring the file system and creating copies of MS Office documents resembling a version control system.
.NET Technical Leader2005 - 2008TeraCode BA SA
Technologies: .NET 3, .NET 2, PostgreSQL, WiX, Spring.NET, NHibernate, Oracle Database, DB, Oracle, SQL Server 2005, Microsoft SQL Server, .NET
- Defined architecture for new projects, providing best practices and documentation for technical and non-technical cients.
- Worked with state-of-the-art (at the time) techniques and technologies, like Domain Driven Design, Model-View-Presenter pattern, AJAX, reusable components, unit and integration test.
- Worked with web-based and desktop projects in supported platforms.
- Travelled several times to client's offices in the US (Boston area) to gather requirements for new or existing projects.
- Led several different teams of up to 8 developers, defining and delegating tasks based on their skills and potential.
- Developed a redistributable, web based application using .NET Framework 2.0, providing an automated installer for Microsoft Windows Server.
C++ Technical Leader2005 - 2005AXG Tecnonexo
- Worked with an existing code base involving different technologies like C++, VB6 and ASP 3.0, extending and improving it based on client's requirements.
- Travelled to client's offices in Israel to perform on-site development for a custom made product based on the existing software.
- Integrated MS Sharepoint services with the existing code base using C++ and VB6.
- Implemented custom reusable components using C++, ASP and COM.
- Provided support for non-technical members of the team and coordinated work with QA staff.
HP Products Manager2003 - 2005ICS Comercial S.A
Technologies: Network Data Storage, Visual Basic, Servers
- Provided technical support for sales representatives, visiting customers and writing down specs for proposals.
- Facilitated a constant communication between the provider, Hewlett-Packard, and the company members.
- Developed tools for sales representatives, such as product databases containing pricing and technical specifications, connecting them external services using VB6.
- Performed technical presentations for new products and technologies directed to sales representatives.
- Coordinated between the client and IT staff in order to install new hardware on location.