Resume


Download PDF


Experience

Android Developer: Bliss Applications, 2016 – current

Developing and maintaining Android apps for various clients on agile multi-disciplinary teams. Using clean architecture with MVVM presentation, RxJava, Room, Dagger, Retrofit and Data Binding.

Some live app examples: Garrafeira Nacional, CheckMe, PowerUpp, Tivoli Audio

Android Developer: Independent, 2013 – 2016

Designed, developed and published live-wallpapers, utility apps and games using Java and the Android SDK. Total of 4,5M downloads and 65k daily active users. Used crash reports and user feedback to solve issues. Developed unit, integration and UI tests for critical modules.

Live apps: Bml Productions and Evil Sandwich Studios


Education

MSc in Information Systems and Computer Engineering: Instituto Superior Técnico – Taguspark (Lisboa, Portugal), 2009 – 2013, 16.37/20

Master Thesis: E-Lumination – Lighting 3D Scenes Using Examples – 18/20 – More Details
Major: Information Technology.
Minor: Multimedia Systems.
Application Area: Games and Simulation.

BSc in Information Systems and Computer Engineering: Instituto Superior Técnico – Taguspark (Lisboa, Portugal), 2006 – 2012, 12.93/20


Projects

LagEngine: Personal Project, 2016 - current
C++11 real-time rendering engine. XML based resource meta-data. Hot reloading of file resources. Abstract renderer supporting multiple graphics API implementations. Render-queue based rendering architecture.

Path-Tracer: Personal Project, 2017
C++ multi-threaded path-tracer. Support lambertian, dielectrics, metal and emissive materials. Depth-of- field, texture and normal mapping, BVH hierarchy, HDR with tone mapping and bloom post-processing.

OpenGL Terrain Demo: Personal Project, 2015
Tech-demo using C++ and modern OpenGL. Dynamic GPU tessellation, multi-texturing based on altitude and slope, GPU frustum culling, single pass wireframe, shadow mapping and fog.

Ringgz: Professional Project, 2014
Designed, developed and published a re-imagined brick-breaker game using Java, libGDX and Box2D. Shader-based gameplay reactive colors and particle-systems. Many positive reviews on mobile websites.

Crystallia: Academic Project, 2011 – 2012
Designed, prototyped and implemented an action-strategy game for tablets on a team of 2 to 4. Developed a 2D Java engine for Android, featuring sprite animation and layering, asset and state management, collisions, multiple resolution support and custom UI widgets.


Skills

Prog. Languages:
Proficient: C, C++, Java, GLSL.
Familiar: Kotlin, C#, Common Lisp, x86 Assembly.

APIs/SDKs/Engines:
Android SDK, OpenGL, libGDX, Unity3D, OpenCV, RxJava.

IDEs/Tools:
Visual Studio, Android Studio (IntelliJ IDEA), CMake, CLion, Eclipse, Git, SVN, GIMP.

Computer Graphics:
Knowledge of real-time and offline rendering, associated techniques and mathematics.

Networks:
Knowledge of protocols, socket programming and network hardware.

Others:
Knowledge of relational databases, SQL and computer architecture. Understanding of cyber security (network and systems) and penetration testing basics.

Languages:
Portuguese (native), English (advanced), Spanish and French (basic understanding).


Personal Data

Full name:
Bruno Miguel Luís Lourenço

Date of birth:
3 November 1987

Nationality:
Portuguese