curriculum-vitae

TLDR

My CV is detailed and comprehensive—it’s more suited for running through your favorite LLM and asking questions than reading it all the way through. For a concise summary, here’s the TL;DR:


Passionate Lead Software Engineer with over 20 years of diverse experience, my love for technology was ignited at age 8 when I began coding text adventure games on a Casio calculator. This lifelong enthusiasm drives me to continuously learn and innovate across a wide range of projects.

From starting at Microsoft to co-founding Hive Solutions, consulting for multiple U.S. companies, and leading major development efforts at Tynker, I’ve consistently taken on pivotal roles. At Tynker, I was the main contributor to several core products used by over 100 million students in more than 150,000 schools, significantly contributing to the company’s $200 million acquisition by BYJU’s in 2021.

Specializing in full-stack development, I thrive on architecting solutions and driving them from ideation to successful deployment.
I’ve worked with the following technologies:


For a showcase of my work, visit my Portfolio Gallery. To explore collaboration opportunities, feel free to connect with me on LinkedIn.

Intro

Nurtured by the nostalgic screeching sounds of a Sinclair ZX Spectrum loading games from an audio cassette, my journey into the digital realm began in the pre-internet dark ages, where knowledge was buried in dusty libraries.

By age eight, armed with only a Casio FX-850P and my wits, I began crafting text adventure games, lighting the first sparks of a lifelong passion for technology and programming.

Moving on to the Commodore Amiga, a marvel ahead of its era yet tragically unsung, I progressed from hacking video games for infinite lives and ammo, to building them in Amos BASIC, having a game published in Amiga Format magazine by the age of twelve.

When I later got my hands on a PC and a 56kbps modem, with internet access and a voracious appetite for learning, I was off to the races: disassembling executables to bypass trial limitations (allegedly), writing more video games, learning more coding languages, developing web apps, etc.. by the time I got to taking Computer Engineering in university, I was already well on my way.

Across the span of 20+ years of experience, from starting my career at Microsoft, to co-founding Hive Solutions, remote-working for multiple United States clients and finally settling for a long ride with Tynker, I have had the opportunity to work on a wide range of projects, usually in a leading role and covering all facets of software development.

In my latest role with Tynker, I rode the rollercoaster all the way from it being a very small team, to being acquired for $200M by BYJU’s in 2021, and ultimately going down with the ship. It was a wild ride, full of valuable lessons, where I had the opportunity of being the main contributor to a lot of Tynker’s core products, that were used by over 100 million students and in more than 150,000 schools.

Experience

Tynker

Tynker is a kid-friendly platform used by over 100 million students and in more than 150,000 schools, offering coding education through games and projects from basics to advanced programming languages.

As a Lead Software Engineer, I was the main contributor to many of its core products, namely:

In all these projects, I was responsible for eliciting requirements from stakeholders, researching and experimenting with different solutions, and finally implementing the solution end-to-end, deploying and managing it post-deployment.

RIPE Productions

RIPE Productions, was a company that developed e-commerce solutions for the fashion industry (this company is now called PlatformE).

Developed some core features for the RIPE Core infrastructure, while simultaneously coordinating a development team (defining, prioritizing and assigning tasks, reviewing and merging pull requests, etc.), through the development of the Karl Kustomize project for Karl Lagerfeld.

In a lesser role also contributed as a software developer to the MYSWEAR online store, featuring an advanced shoe customization rendering platform, related iOS demo and the adaptation of the customizer to be used in a holographic pyramid at Harrods, a luxury department store in London.

Rocksauce Studios

Rocksauce Studios was a mobile app development company that specialized in creating custom apps for businesses and startups. While working at Hive Solutions, I was contracted by them to work on more than a dozen projects for different clients, always as an iOS developer.

Toptal

Toptal is a marketplace for top developers and companies. It has a very strict screening process, that screens for deep technical skills and high English language proficiency. Through Toptal I worked for multiple companies, in medium to long-term arrangements, receiving excellent feedback from all clients.

Hive Solutions

As a co-founder of Hive Solutions, I was a Jack of all trades, as most startup founders are. At different times I acted as a Software Engineer (my main role), Tech Lead, but also having to deal with sales and recruiting related tasks.

We started with the main premise of building a SaaS Retail POS system called Frontdoor, which was built literally from scratch with most of the stack except Python being built internally. It was a technical success but a commercial failure. We later pivoted to software consulting where we developed a wide range of projects for many clients.

Microsoft

Worked in the Global Development Localization team, in a Tester role, for Microsoft Dynamics AX (an enterprise resource planning software package for finance and operations). Regular work involved performing manual tests, coding and fixing test automation, designing new tests, searching for and investigating application bugs.

Improved internal testing tools to allow scanning for test code coverage across multipler layers, as opposed to just the root of the application’s layered customization stack.

Developed internal tool for database PII anonymization to allow data transfer across internal groups spread around different regions.

Rent-a-Coder

During college, I gained valuable experience working on freelance projects for clients around the world through the Rent-a-Coder platform, where I operated under the name “Chronosync Developments” and was fortunate to rank in the top 1% for customer ratings. This was my first foray into managing end-to-end client relationships, where I was tasked with projects and paid for delivering them. It helped me develop key skills in understanding client needs, managing expectations, and delivering on time.

Education

University of Lodz

During my Erasmus exchange, which took place in the final year of my Computer Engineering studies at FEUP, I enrolled in courses on Genetic Algorithms, Cryptography, Neural Networks, Network Services Programming, and an intensive Polish language course. I successfully completed them with an average grade of 18 out of 20.

However, the most rewarding aspect of this experience extended far beyond academics. Living in a diverse cultural melting pot, alongside students from across Europe, and having the chance to travel throughout Poland and neighboring countries, proved to be incredibly enriching. This brief but immersive experience provided personal and professional growth that far exceeded what I could have gained from traditional academic settings.

Being in a country with a language and culture so different from my own, where communication was often challenging (as neither Polish nor English were widely spoken), pushed me out of my comfort zone every day. It was a profoundly transformative experience that fostered resilience and adaptability in ways I hadn’t anticipated.

Faculdade de Engenharia da Universidade do Porto

The Computer Engineering course I attended was one of the most competitive in the country, with high entry requirements. Despite starting with a weak foundation in Mathematics, I worked hard to turn things around, achieving excellent entry exam results and earning the second-highest grade in my high school.

The course itself was demanding, with assignments becoming more complex each semester. By the final years, I dedicated 80-100 hours a week, not because it was required, but because I genuinely enjoyed the work. From creating 3D video games to developing neural networks, the challenges were both intense and rewarding.

Additionally, I regularly participated in ACM programming contests, placed second in the 2006 edition of the National Logic and Functional Programming Contest, and was involved in the European Space Agency’s ESMO project.

Projects

Help Agent

Help Agent was a chatbot developed to assist users with Tynker-related inquiries, utilizing Large Language Models (LLMs) and the Retrieval-Augmented Generation (RAG) architecture.

The project involved challenges like content scraping, data augmentation, embedding, indexing, querying, reranking, model selection, and prompt engineering. Extensive experimentation was required to ensure fast, accurate, and reliable responses while balancing safety and cost-effectiveness (less of an issue now, as LLMs have become cheaper and more reliable).

A backoffice system supported the chatbot by handling data scraping, updates, and user-authored content generation with LLM assistance. It also included tools for managing chat logs, user tickets, and testing updates.

My role was to gather requirements, research solutions, and implement, deploy, and manage the system end-to-end.

Post-deployment on Tynker’s parent and school pages, the chatbot significantly boosted user engagement, with higher conversion rates from users who interacted with it, indicating strong potential for further development.


Block IDE - Arcade Maker

Arcade Maker was an extension to the Block IDE, designed to offer a simpler entry point into game development, allowing kids to create and publish games without needing to code.

This extension enabled developers to declaratively specify configuration variables, bind them to game code, and define controls in the user interface for modifying these variables. With these features and additional upgrades, developers could create new game templates that users could remix without touching any code.

My role involved architecting the solution, developing core features, and coordinating with a Software Developer and the Game Design team responsible for creating the game templates.


BYJU’s Coding Cup

The BYJU’s Coding Cup was developed as a flagship product to highlight BYJU’S sponsorship of the FIFA World Cup Qatar 2022™. Aimed at children aged 7–18, this soccer-themed coding competition introduced key programming concepts like conditional logic and debugging in an interactive, fun format. Participants coded virtual soccer teams to compete globally, enhancing their coding skills through an engaging experience.

The project, completed in six months, leveraged parts of the Crystal Clash game engine to streamline development. The soccer matches were simulated in a discrete, grid-based environment, with fluid game flow achieved through clever interpolation of discrete states. Game mechanics, like skill levels influencing probabilistic events (e.g., ball steals), added strategic depth.

In my role, I ideated the game, architected the solution, and developed the backend engine, APIs, and most of the frontend (excluding match and character avatar rendering). I coordinated with another developer who handled match rendering to ensure smooth integration. I also optimized the game for performance on lower-end mobile devices.

Launched in time for the World Cup, the game was accessible via the web and integrated into Tynker Apps for iOS and Android through web views. It quickly gained popularity, with millions of matches played, and over $20,000 USD awarded in prizes during the first four rounds.


Live Classes

The Live Class platform enabled educators to conduct interactive coding lessons, seamlessly integrating with Tynker’s Block IDE and course content, allowing teachers to switch smoothly between live instruction and coding exercises.

The platform was created to support a new product offering that bundled small course packages with scheduled lessons, where students could receive real-time help from a teacher.

My role involved quickly defining the requirements, architecting the solution, and implementing both the backend and frontend in a short time frame.

The platform was deployed on schedule with only minor issues, mostly related to the video conferencing integration and a few cases of user error, rather than system bugs.


Quizzer

The Quizzer platform is a versatile tool designed to build assessments that interleave multiple interactive quiz types, using a unified content authoring format powered by MDX.

The need for this system arose from the demand for more engaging and interactive quizzes that could be easily created and maintained. Initially, these quizzes were integrated into Tynker’s content progression system as placement tests to onboard users at the right skill level, later evolving into assessment tests to ensure users were ready to progress to the next level.

MDX was used for modularity, allowing Quizzer to seamlessly integrate with various educational components, including interactive coding exercises.

My role was to architect and implement the full-stack solution, covering both frontend and backend development. I also developed a cross-platform native mobile prototype for Android and iOS using React Native, though this mobile version was shelved due to shifting priorities.

The solution was deployed on schedule and required minimal post-deployment maintenance, with only minor issues related to content authoring and user experience.


Coaching System

Combining the Collaborative Learning System features with the Live Classes platform, developed an integrated coaching management system that allowed teachers to monitor student progress, provide feedback, schedule lessons, etc.


Lynker

Lynker was a custom-built real-time messaging server for Tynker, designed to support a wide range of features, from live dashboard notifications to project collaboration and multiplayer game development. It was engineered for scalability, reliability, security, and low-latency performance.

I was responsible for the full stack development, overseeing everything from architecture to deployment and post-launch maintenance. Lynker was successfully integrated into the Tynker platform, powering key features like the Collaborative Learning System and the Live Classes platform, as well as other real-time communication needs.

In hindsight, it was over-engineered, as it was built to handle a higher throughput than was ultimately needed, with features like multiplayer game development eventually backlogged due to shifting priorities.


Collaborative Learning System

Using the Lynker messaging server I previously developed, I enhanced the Block IDE with collaborative learning features, including the ability to share projects, chat about them, comment on code, and monitor changes in real-time. This application was awarded a U.S. patent.


Block IDE - Version 3.0

In six months, I rearchitected a significant portion of Tynker’s Block Editor, the core of its educational platform, to address critical scalability and maintenance issues caused by years of rushed development under tight deadlines, which had left the legacy codebase cluttered with hardcoded elements and quick-fix hacks, making it difficult to scale and maintain.

I implemented a new architecture based on a custom-built extension framework, Redux for state management, and Redux Saga for handling side effects. This solution improved scalability and future-proofed the platform. The extension framework modularized functionality, enforced separation of concerns, and introduced a clear lifecycle with declarative dependency management, significantly reducing maintenance overhead and simplifying feature additions. Redux decoupled UI state from the UI, and alongside the extension framework and Redux Saga, it streamlined scaling and enabled new features to be introduced with minimal changes across modules.

Looking back, a stack using PHP (for legacy reasons) + React (particularly with the release of React 16.8) + EmotionJS + the Extension Framework would have been more efficient. React could have replaced AngularJS, simplifying state management and eliminating the need for Redux. While Redux Saga was powerful, its steep learning curve for new developers would have made simpler alternatives preferable.


Crystal Clash

Crystal Clash is a multiplayer, turn-based battlebots game where players program their bots using Tynker’s block-based programming language to compete in asynchronous matches. The game features monthly seasons, leaderboards, quests, and a shop where players can purchase new bot parts.

The core gameplay is similar to chess, taking place on an 8x8 grid arena where bots move, attack, and use special abilities. Matches are deterministic and the arena shrinks over time, with the objective of being the last bot standing. Players’ bots follow scripts they code, which dictate their actions each turn.

To support the asynchronous gameplay and integrate Tynker’s block-based programming language—originally designed for browser environments—I developed a server-side virtual machine that mirrors a subset of Tynker’s features. This VM processes players’ scripts to compute the game’s next state.

Since its release, millions of matches have been played across numerous seasons.


Minecraft Education Edition Integration

Integrated Tynker’s Block Editor into the Minecraft Education Edition app, enabling users to create and deploy custom mobs in real-time. This was achieved by adding a side panel with the Tynker Editor, allowing seamless access to coding tools during gameplay.


Mythicraft

Tynker’s Mythicraft is a creative educational course designed to teach users how to mod their Minecraft world with a focus on mythological themes. It guides learners through the creation of custom skins, magical items, blocks, and mythical creatures.

This course marked the first integration of the Minecraft Editor tool into a standard Tynker course structure, blending traditional introductory lessons with those requiring the Minecraft Editor. To achieve this, I integrated the tool into the course workflows, enabling it to be declared in the course data structures, launched at the appropriate times, and embedded within the course frame. I also implemented lesson completion detection to trigger progression to the next lesson. Additionally, I optimized the editor’s performance to enhance its functionality on native mobile apps, as the course was available on those platforms as well.


Minecraft Editor

Developed a web-based 3D editor for Minecraft Bedrock Edition, allowing users to customize Skins, Blocks, Items, and Mobs. The editor included texture editing capabilities and a block-based coding interface for Mob behaviors, inspired by Tynker’s visual programming language, which translated user inputs into Minecraft’s declarative configuration files.

A key challenge was optimizing performance on older iPad Mini models, where low frame rates and sluggish interactions were prevalent. To address this, I made sure I bypassed GPU compositing operations as much as possible, and implemented strict memory management strategies to mitigate the effects of unpredictable garbage collection. These optimizations ensured the editor ran smoothly within memory limits, achieving optimal frame rates.

The tool was integrated into both the Tynker App and the Mod Creator App, providing a powerful platform for Minecraft customizations. As of this writing, users have created several million assets using the editor.


Tynker - PHP MongoDB ODM

I developed a web-based 3D editor for Minecraft Bedrock Edition, enabling users to customize Skins, Blocks, Items, and Mobs. The editor featured texture editing and a block-based coding interface for Mob behaviors, inspired by Tynker’s visual programming language, translating user inputs into Minecraft’s declarative configuration files.

One significant challenge was optimizing performance on older iPad Mini models, where low frame rates and sluggish interactions were common. To address this, I minimized GPU compositing operations and implemented strict memory management strategies to mitigate the effects of unpredictable garbage collection. These optimizations ensured smooth performance and maintained optimal frame rates within the device’s memory constraints.

This tool was integrated into both the Tynker App and Mod Creator App, offering a robust platform for Minecraft customizations. To date, users have created several million assets using the editor.


Kaboom!

Kaboom! is a fast-paced revival of the classic “Lights Out” game, available on iPhone, iPad, Apple TV, and Apple Watch.

I coordinated the design and development of the application, contributing to core aspects of the development while also reviewing and refactoring incoming pull requests. In this project, I simultaneously served as a developer, project manager, and stakeholder, overseeing the entire process from concept to completion.


Karl Kustomize

Karl Kustomize is an online store where consumers can design and purchase custom sneakers from the fashion brand Karl Lagerfeld.

I was responsible for developing core features, managing the project timeline, assigning tasks, and reviewing and refactoring pull requests from other developers to ensure a smooth and efficient development process.


Lugar da Jóia

Lugar da Jóia is a chain of jewelry stores, and this project marked their first venture into online sales.

I served as both a full-stack developer and coordinator, overseeing another developer and a designer. I developed a wide range of features for the site, working on both the frontend and backend, with the latter utilizing Hive Solutions’ Budy e-commerce engine to integrate with the existing infrastructure.


Windows Dev Center - App Middleware Partners

App Middleware Partners is a section of Microsoft’s Windows Dev Center that serves as a directory for Microsoft partners to showcase their middleware solutions.

In this project, I managed stakeholder communication, coordinated the design and development, and contributed to core development tasks. The biggest challenge was navigating Microsoft’s complex organizational structure to gather the necessary information for integration and deployment. This required overcoming significant bureaucratic obstacles, including extensive outreach through messaging and cold-calling across multiple levels of the organization. Despite these challenges, the project was successfully delivered on time and within budget.


MYSWEAR - Harrods Holographic Pyramid

MYSWEAR set up a stand at Harrods, one of the world’s most renowned department stores in London, where customers could personalize and order custom shoes while viewing their design in real-time on a four-sided holographic pyramid display.

Developed a new mode for the existing MYSWEAR online customizer, enabling customer browser instances to remotely control the holographic viewer browser instances through real-time communication using WebSockets. Additionally, also developed a Python-based orchestrator that monitored the communication channels and coordinated the holographic display, ensuring the display’s browsers operated correctly at any given time.


MYSWEAR - iOS Demo

Single-handedly developed a proof-of-concept native iOS application that replicated the shoe customization experience from the MYSWEAR website. This native app was created in record time and successfully used for demo purposes.


MYSWEAR - Online Store

MYSWEAR is an online store where customers can design and purchase custom shoes from the SWEAR fashion brand.

The website was developed based on pre-existing design specifications. I developed core features and coordinated the work of other developers, including task assignment, reviewing pull requests, and refactoring code prior to merging.


SpeakWrite

SpeakWrite is an application that allows users to record audio and have it transcribed into text by human transcribers within a short period.

I resolved numerous critical bugs across various parts of the app, which was particularly challenging due to the messy and disorganized existing codebase.


Details PAL

Details PAL is an iOS application that connects with a Bluetooth activity tracker placed on a dog’s collar, allowing users to monitor their pet’s activity over days, weeks, and months. The app also includes nutrition tracking features to help manage the pet’s food intake.

I developed the application from the ground up, playing a key role in managing communication with the manufacturers of the Bluetooth collars in China. I worked extensively on developing for and testing various prototype versions of the collars, providing feedback on necessary improvements throughout the process.


Don’t Mess With Texas - Report a Litterer

“Don’t Mess with Texas” is an app that allows users to report litterers to the Texas Department of Transportation’s Report a Litterer Program. Users can either manually enter the details or answer questions using voice input on their mobile phone.

I fixed numerous bugs across the app and implemented new features. The project was challenging due to the messy and disorganized existing codebase.


Energi Coach

Energi is an app designed to help improve work-life balance by suggesting and scheduling various types of breaks on the user’s calendar.

I focused on fixing complex bugs in the existing codebase for both the iPhone and Apple Watch versions of the app.


TopShelf

TopShelf is an app that allows users to order alcoholic beverages directly from their phone and have them delivered to their doorstep.

I developed the iOS application and backend logic from the ground up, including integration with a third-party fleet management service to coordinate deliveries efficiently.


TALKiT

TALKiT is a social media platform that offers an alternative to texting, allowing users to share their experiences by recording and sharing their voice instead of typing.


US Likey

Us Likey is a social network where users can share their favorite products, places, brands, foods, and more.

I fixed numerous bugs and implemented new features across the app. The project was particularly challenging due to the disorganized and messy existing codebase.


WIN Atlas

WIN Atlas is a career guidance app that helps users explore career options by taking various quizzes and providing detailed information about different jobs.

I developed the client-side of the app and integrated it with the server-side, which was implemented by in-house developers.


Knod

Knod is a media discovery social network where users can rate movies, books, songs, games, and more, receiving personalized recommendations based on their ratings and social connections.

I contributed to the initial development of the project, creating core features for the iOS app. After being reassigned to a more urgent project, I later returned to assist with additional feature development and bug fixes.


ValetTab

ValetTab is an app that streamlines the valet parking experience at participating locations. It allows users to check in, notify the valet when they are ready to check out, and pay for parking directly from their phone. The companion app, ValetStand, helps valet staff manage parked cars, checkout requests, and payments.

I fixed numerous bugs and implemented new features, primarily related to the payment process. The project was particularly challenging due to the disorganized and messy existing codebase.


Academy Sports - LIVE FIT

LIVE FIT is a sports tracking app for the Academy Sports + Outdoors retail chain. It integrates with the MapMyFitness (MMF) SDK to store and retrieve activity data from the MMF service.

During development, I encountered numerous bugs within the MMF SDK that blocked progress. With MMF’s permission, I fully refactored sections of the SDK to meet the project’s deadlines. MMF appreciated the quality and speed of my work, later inviting me to contribute to feature development in the official MapMyFitness app.


Active Heroes

Active Heroes is a charity that supports Veterans, Active Duty Military, and their families. The Active Heroes app allows users to track workouts and share them to help raise funds for the foundation’s initiatives.

I fixed numerous critical and non-critical bugs in the existing app. The project was challenging due to the messy and disorganized codebase.


Furtile

Furtile is a social network designed for pet owners and breeders to connect and help pets find their ideal mates.

I developed the entire application, both the iOS app and the backend, from the ground up. The project was completed in record time and successfully released on the App Store.


Map My Fitness - Challenges

MapMyFitness, one of the first activity tracking applications, was later acquired by Under Armour.

I implemented the Challenges feature, as well as the Weight and Sleep sections of the 24/7 tracking feature for the widely popular MapMyFitness app. Due to the app’s enormous codebase, it was challenging to navigate and work efficiently, but the features were fully implemented and delivered on schedule.


Project Capture

Project Capture is an app that allows users to report UFO sightings.

Although the app was originally developed by someone else, I contributed by fixing numerous bugs throughout the app.


Randid

Randid is a social networking app for iOS where users send a picture and receive a random one in return from other users.

I was brought into the project to help steer it back on track, ultimately developing part of the client-side and most of the server-side for the app’s first version.


WeGo

WeGo is a fitness tracking app designed to interface with multiple low-budget hardware activity trackers.

I developed the iOS application from start to finish in record time, overcoming numerous unexpected challenges. The project required integrating five different wearable devices from various manufacturers via Bluetooth and Audio Jack. The implementation was fully successful, with any remaining limitations attributed to third-party dependencies beyond our control.


Clockadoodle

Clockadoodle was an iOS alarm clock app featuring advanced options, such as YouTube video alarms.

I developed most of the application, but it remained incomplete as I was reassigned to a higher-priority project.


China Pro Tools

China Pro Tools is a market analytics solution that provides decision-support statistics related to exports to China.

I developed the entire application based on pre-existing specifications and delivered it precisely on schedule.


Discover Your City

Discover Your City is a travel app for architecture enthusiasts, offering guided tours of buildings featuring various styles and designs.

I developed the entire application, from start to finish, based on pre-existing design specifications. The project also included a server-side back office for managing the app’s content.


Rocklobby

Rocklobby is a music social network connecting artists, venues, and fans. Users can follow artists, venues, and fans, buy tickets for shows, review them, book venues for gigs, chat with others, and access various other features. This project was a reboot of a previous mobile Rocklobby app I had created for the same client, with a bigger and more ambitious vision.

I developed the entire application from top to bottom while also managing the project. This involved coordinating with the designer and handling all communication with the client.


Rocklobby - iOS App

Rocklobby was a music social network for artists, venues, and fans.

I developed the client-side iOS app, collaborating with an existing developer working on the server-side. Although the app had an existing codebase, I had to rebuild it from scratch due to its poor condition. The application was successfully delivered on schedule and within the estimated budget.


Fresh Deck Poker

Fresh Deck Poker was an online multiplayer poker game with real cash prizes.

I developed several features for the game’s administration backoffice, including account management, game and table management, monetization, and odds assignment. Some requests exceeded Django’s native capabilities, requiring advanced solutions like heavy-duty hacks and monkey-patching to implement the necessary features.


Parfois B2B Portal

This project was a B2B portal for managing communications and transactions for the PARFOIS handbags and fashion accessories brand.

Initially contracted as a consultant to help the development team adopt the required technologies, but ultimately led the entire development team to complete the project within a tight schedule and an underestimated budget. To achieve this, I identified and exploited every possible shortcut to ensure the project was delivered on time.


Bargania

Bargania was a Deal-a-Day aggregation platform, similar to Groupon, where users could browse the latest deals from major providers, sort them based on preferences, and receive personalized newsletters with offers tailored to their profiles.

I developed the core features of the platform and handled copywriting and translation for the website and all associated media, including advertising materials.


A La Carte

A La Carte was a restaurant search engine that allowed users to search for restaurants offering specific dishes, within a certain price range, near their location.

I designed and developed the ETL components for the food indexing and search system, and created software to retrieve information from a wide array of heterogeneous data sources.


Mariachi

Mariachi was a cross-platform shoot-‘em-up game designed for mobile platforms.

I developed and implemented the game’s core logic, 3D model import feature, and physics engine.


Panzerini

Panzerini was a Battlebots-style game built using Hive Solutions’ Colony Framework, created for the 2010 Sapo Codebits 48-hour programming competition. Developers could write AI for their bots (as Colony plugins) and deploy them in the Panzerini arena, which ran directly in a web browser without requiring any extensions.

I developed core features of the game and created the artificial intelligence for sample bots used in the arena.


Schoooools

Schoooools is a platform that provides personal and social learning spaces, fostering collaboration between learners, parents, and teachers. It allows all schoolwork to be stored digitally, enabling parents to follow their children’s progress, organize their work, and preserve it for future reference, sharing, or family viewing.

I developed core features such as action tracking, analytics, and classroom management tools. Additionally, I created a cross-platform mobile application for the service using PhoneGap.


Take the Bill

Take the Bill is an online invoicing solution initially intended as a public service but ultimately deployed in private clouds, including as the billing app for Hive Solutions.

I developed key backend and frontend features for the application.


Frontdoor

Developed back-end logic for online Point-of-Sale SaaS product using Python with the Colony Framework and its respective MVC stack. Also developed front-end for same system through extensive usage of JavaScript and jQuery to create a productive user experience.


Colony Framework

Colony is a modularity container that allows plugins to be deployed, loaded, and unloaded in real-time without restarting the container.

I developed core technology for the framework, authored technical documentation, and contributed to marketing efforts by designing storylines for videos and comic books, as well as handling various copywriting tasks.


MCH Workflow Helpdesk Innovation

Collaborated in an academic-enterprise partnership to deliver a functional knowledge management system for the organization’s helpdesk support team.

As part of a unique 11-person team selected for diverse personalities and skills, I assumed the role of “Coach,” acting as a bridge between management and the development team. This role provided valuable insights into management, team dynamics, and workflow optimization, and taught me to utilize different motivation strategies to suit various personality types.

The final product was successfully completed and deployed at the partner enterprise’s facilities.


Nihonaid

Nihonaid is a tool I developed to assist with learning Japanese, specifically for memorizing the Kanji character set.

The app presented each character in order of complexity, prompting the user for its meaning. After revealing the correct meaning, the user would rate how well they remembered it. This feedback was processed by a Neural Network, which tracked the user’s knowledge of each character and determined the optimal time to reintroduce it for review.

The system focused on characters the user either didn’t know or was predicted to have forgotten. For example, if a user didn’t recognize a character, the app would present it again in the next session. If the user remembered it, the app would space out the reviews progressively, showing it again in two days, then a week, and so on.

With this system, daily sessions ensured the user retained previously learned characters, as the app adapted to their individual learning and forgetting curve.


Clube de Karate da Maia

Created a website for the Clube de Karate da Maia, a local karate club where I trained for many years. The website was implemented using the Joomla framework, leveraging PHP as the scripting language and a MySQL database for data management.

Through this project, I gained experience in customizing the Mambo/Joomla Content Management System to provide essential functionalities for a community-oriented website.


NeuralJ

NeuralJ was an open-source software project I created to provide an efficient and user-friendly Neural Network library for Java.

Through this project, I deepened my understanding of Neural Networks and Genetic Algorithms, while also honing my skills in Java programming and software architecture.


Clube do Paiva

Handled entire backend production of a website, web application and database programming. Solution was provided in the form of a web application implemented in the PHP scripting language, interfacing with a MySQL database.


European Student Moon Orbiter

I served as the Coordinator of the Software subteam within the On Board Data Handler team for the European Student Moon Orbiter project, part of the European Space Agency’s SSETI (Student Space Exploration & Technology Initiative) program, which aimed to deploy a satellite into lunar orbit.

One of the key lessons I took away from this experience was the immense value of effective teamwork.


Computer Capers

Computer Capers was a video game I developed at 12 years old and submitted to a monthly competition in Amiga Format magazine. Although the plot was simplistic and cringe, and the mechanics basic, I was proud of my accomplishment, especially given my age and having no internet access of any kind at the time. The game featured a tile-based world where players interacted with characters searching for specific items. By finding and trading these items, players advanced the storyline. I was particularly encouraged by the positive feedback I received from the magazine’s contest reviewer.


Misc