Rubén Moreno Montoliu Software Developer

Projects

Luna raytracer

Luna Raytracer is a simple multi-threaded C++ ray tracing library. It provides the basic building blocks for rendering simple scenes and hooks for extending its capabilites.

Its most relevant features are support for all major OS, 64 bit HDR multi-threaded core, area lights, sky light, glossy surfaces, dielectric fresnel reflectance and realistic depth of field camera.

Visit the Luna Raytracer site

Android 3D game engine

Complete 3D game engine built from scratch using Java and GLSL. It features state of the art per pixel lighting and advanced materials, including support for normal mapping and parallax mapping.

The engine provides all the utilities for model and texture loading, particle systems, on demand dynamic shader creation and compilation, AdMob integration, sound fx and music, scene management, settings, and user input.

All the source code for the engine, incluing the tools, will be uploaded to GitHub eventually.

Check the first game powered by the engine

Personal web site

This is yours truly. The complete source is stored in GitHub.

Visit my personal web site repository

Photography

On my spare time I enjoy taking and developing digital photographs. Some of them can be licensed at Getty Images.

Visit my Flickr portfolio

Pixel art

Retro-style drawings, limiting the color palette. I use Aseprite for my drawings.

Visit my Deviantart profile

Visit my retro shmup prototype repository

Skills

Programming

  • Java
  • C/C++
  • JS
  • GLSL
  • HTML
  • CSS
  • C#
  • SQL
  • Python

Frameworks

  • three.js
  • jQuery
  • Spring
  • Hibernate
  • OpenGL
  • Unity 3D
  • Android
  • Struts
  • GWT
  • KRPano
  • MyBatis
  • JasperReports

Areas of expertise

  • Patterns
  • Web
  • 3D
  • Algorithms
  • Algebra
  • Games
  • VR
  • M2M
  • Embedded

Input devices

  • Oculus Rift
  • Kinect
  • Cardboard
  • Gear VR

Tools

  • Git
  • SVN
  • Jenkins
  • Grunt
  • NPM
  • Maven
  • Ant
  • Blender

Spoken languages

  • Spanish
  • English

Experience

Senior Programmer 42iQ Ltd. London, UK

Feb 2015

First techinal hire in the company, I have been creating the proper infrastructure for developing technical projects while meeting the tight deadlines.

  • Web 3D tools (three.js) and framework. Focus on high quality PBR materials and smooth and polished user experience, supporting mobile devices and Cardboard VR.
  • Interior design 3D desktop application (Unity 3D, C#). Oculus Rift support.
  • Web VR tours and interactive experiences.
  • Gesture-based application interaction using Microsoft Kinect v2 (C# and C++).
  • Virtual tour and 360 video web applications (HTML, CSS, JS and Krpano).
  • Microsite development for several products.

J2EE Developer Kotasoft Madrid, Spain

Feb 2013Feb 2015

Consultant at CNP Partners (insurance and investment) working on the improvement, bugfix and refactor of a large multi-layered web application for the Italian market in a small agile team.

We were using Struts 2 + FreeMaker for the UI, Spring as application container, Hibernate and iBatis for the persistence layer (two MS SQL and one DB2 databases), JasperReports for reporting, JUnit for unit testing and Jenkins for continuous integration.

Contractor Web Developer 42iQ Ltd. London, UK

Jul 2014Sep 2014

Telecommuting from Spain and reporting directly to the CEO, the fast paced time-critical project included these tasks:

  • Microsite development.
  • Gigapano and 360ยบ video web player.
  • Amazon EC2 setup and management.

Founder and 3D engine developer Tapas Interactive Madrid area, Spain

Feb 2011Feb 2013

Cofounder and technical leader, we succeeded at creating our own base technology for developing high-quality 3D games, and develop and publish a full featured game, with a small three people core team and several collaborators.

My main tasks were:

  • Team manager.
  • Release manager.
  • Design and lead the development of a full 3D OpenGL ES 2 based game engine for Android devices from scratch.
  • Tools development: material editor, Android 3D model viewer.
  • Development and publication of a 3D arcade game on several App Markets: Aerial Wild Adventure
  • Web site maintainer.
  • Community manager.

Analyst Rigel MSP Madrid, Spain

Jun 2010Nov 2011
  • GWT (GXT) webapp for management of large volume of medical reports.
  • Consultant at Ericsson to help research technologies for high disponibility and concurrency for Telcos.
  • GWT (SmartGWT) and Elgg based social network, MicroStrategy integration, Microsoft Office interoperability.
  • Windows Phone 7 teaching.
  • Georeference, refactoring, code cleaning, bugfixing and improvements on BeMo product. Both front- and back-end work.

Contractor Web Developer Ateneo de Empresas Alcalá de Henares, Spain

Jun 2009Sep 2010

Creating the online presence for a law firm.

  • Brand development.
  • Web site design and development.
  • Google Apps for Domain configuration.
  • Hosting and DNS configuration.
  • Formation on new services and groupware cloud applications.

Developer Rigel MSP Madrid, Spain

Feb 2007Sep 2008

Analysis, design and implementation of mobility-based products. Introduced and promoted the usage of GWT, Hibernate and virtualization (Xen) for SaaS applications.

Designed the architecture and GUI for the company new flagship product, BeMo, a web-based mobile app creation tool for travel guides. Release manager.

Real-time systems developer Pragsis Alcobendas, Spain

Jan 2007Feb 2007

Consultant at former Eliop, S.A. (DF Núcleo nowadays) working on:

  • Implementation and integration of protection controls and supervision protocols for electric substation systems on the VxWorks platform.
  • XML configuration generation for protections using the in-house Sigres-NT system.

Technical lead Amplía Soluciones Madrid, Spain

Feb 2006Dec 2006

Working at the core team for the main company product OpenGate, an IoT Platform.

  • Resource management for products and projects development.
  • M2M communications platform and embedded systems analysis.
  • Remote control and message-based communication protocols design.
  • Writing of both final- and internal-user documentation.
  • J2SE development of GSM network and M2M devices hardware emulator.
  • C, C++ and J2ME development of multiplatform real-time message-based communication frameworks and applications for M2M devices (Wavecom, Siemens, Owasys, Cygwin and Win32).

Embedded systems developer Amplía Soluciones Madrid, Spain

Feb 2005Feb 2006

Development of C++ embedded agents and mobility and remote control based solutions.

C++ RS-232 driver development for data loggers, meteorological stations and sonometers. Proposed and implemented an abstraction layer for data input sources.

Web developer Universidad de Alcalá Alcalá de Henares, Spain

Oct 2004Feb 2005

Development of the site for the I Iberoamerican congress on ubiquitous computing.

IV and V MobiGame editions website maintenance (site). Substituted the old image based navigation with a JavaScript and CSS based interactive menu. Updated the sources to validate XHTML 1.0 Strict.

Education

2015

HTML5 Part 1: HTML5 Coding Essentials and Best Practices

W3Cx

2009

English Oral Presentation Skills

Zoni Languages Center Manhattan New York City, USA

2009

English Advanced Speaking/Listening Skills

The British Council Alcalá de Henares, Spain

2005

Master Symbian and Nokia Platforms (Series 60 and 80)

Vodafone New Technologies Institute Alcobendas, Spain

2004
2005

English Advanced Level

The British Council Alcalá de Henares, Spain

2001
2010

BSc Computer Science and Engineering

Universidad de Alcalá Alcalá de Henares, Spain

4-year university degree focusing on Computer Science, Computer Engineering, Project Management, Digital Circuits, Mathematics, Information Technology, and Networks.

Awarded Best PocketPC game at Mobigame 2005 contest for a full isometric game engine built on top of the PocketPC platform (C++) and an example game to demonstrate the full capabilities of the engine.

Achieved the highest grade in the thesis: Ray tracing based multi-platform library for photorealistic 3D scene rendering.

About

I have been developing software for more than ten years now. During these years I have developed C++ embedded systems for an IoT platform and ray-tracing based rendering engines, Java large enterprise applications for investment and insurance and for visually creating travel guide mobile apps, desktop emulators for the GSM network and Android 3D games, C# 3D tools and Kinect-based gesture interaction systems, and JS web 3D visualization libraries based on WebGL.

All these years I have been driven by a constant will to face new challenges and learn new programming languages and frameworks, and jump out of my confort zone constantly. My broad and diverse experience is the result.

Born in Spain, now I live in London following the buoyancy of the tech scene here, where all kind of new and exciting technologies are within reach.

Contact

Interested in contacting me? There are a lot of options!