Guillem Serra | Portfolio

{ video game programmer }

Professional Experience

Across my career I’ve worked across educational Games-as-a-Service, a shipped AA title, and the technical leadership of an indie production and online casino games. Listed most recent first, each role has added a new layer to how I approach building software and interactive experiences.

Senior Game Programmer

TypeScriptCocos Creator

Zitro

Aug 2025 — Present

As a Senior Programmer at Zitro, I build online slot games in Cocos Creator and TypeScript. My focus sits at the foundation the rest of the team builds on: I refactored core frameworks and introduced reusable tooling that made everyday development noticeably faster. On top of that, I developed the animation and tweening subclass handlers behind the smooth, responsive feedback that slot gameplay lives by; and I maintain the team's CI/CD pipelines in Jenkins, automating builds, testing and deployment so releases stay fast and dependable.

I also mentor junior developers and set the coding standards that keep the project maintainable as it grows, working closely with artists and designers to bring new mechanics and visual effects to life.

Zitro title image

Senior Unreal Engine developer

Unreal EngineC++ProcGenAudioUIToolingState Trees

Noümen Interactive - A demiurge's soliloquy

Nov 2022 — Mar 2025 (2 yrs 5 mos)

Noümen is where I grew into a technical senior. I led core development on A demiurge's soliloquy, a narrative adventure built by a small team, owning the architecture and keeping every technical system aligned with the game's creative vision. I worked shoulder to shoulder with 3D artist Ben Kleber, tech artist Alex Weiland and freelance sound and UX designers, holding creative intent and technical reality in sync across disciplines.

Most of the game ran on systems I designed and built myself. I programmed the 3Cs from the ground up (responsive character movement, player input, and a modular cinematic camera that moved between first and third person), then the gameplay layer on top: state-driven locomotion, mechanics, and enemy AI authored with Epic's StateTrees. I wrote a procedural terrain generator built from grid-shaped mesh chunks, implemented the HUD in CommonUI by combining Widget Blueprints with C++, and layered dynamic music and ambiance through MetaSounds that reacted to what was happening on screen. Underneath it all, I centralized gameplay services, environment control, audio and state syncing behind clean design patterns, so the project could keep evolving without buckling under its own weight.

I also built vgscript, a custom editor tool, an Unreal plugin for branching narrative scripting with its own file parsing and editor integration, so writing and iterating on story content never bottlenecked on engineering.

Unreal Engine programmer

Unreal Engine 4C++Gameplay SystemsUIDynamic Audio

Piccolo Studio - After Us

Jan 2022 — Oct 2022 (10 mos)

At Piccolo Studio I joined the team shipping After Us, a AA third-person adventure published by Private Division. I worked in C++ on interactable world elements and enemy behaviors, integrated dynamic audio hand in hand with the SFX and music teams, and built much of the game's interface: UMG menus, the save-system UI, and the subtitles system.

I came in to reinforce the final stretch of production, owning bug-fixing through Jira and helping carry the game across the line to release.

Freelance typescript developer

ReactTypescriptThree.jsProcgenWFC

Pluno

Mar 2023 — Aug 2023 (6 mos)

I joined Pluno as a freelance developer during the experimental, early-stage life of a startup exploring interactive virtual spaces. Working in React and Three.js, I built procedural 3D systems (including a Wave Function Collapse implementation) and rapidly prototyped the tooling and editor features the team needed to put ideas in front of people. It was fast, high-iteration work, where the whole point was turning concepts into something playable as quickly as possible. (See it in motion.)

Generation image

Unity developer

UnityC#Clean codeSOLIDSerious Games

Innovamat

Jan 2020 — Jan 2022 (2 yrs 1 mo)

Innovamat is where my engineering craft really took shape. There I built a wide range of interactive math mini-games in Unity and C#, made for both classrooms and mobile, working in an Agile team alongside educators, mathematicians and designers to iterate on what genuinely helped kids learn.

It's also where I internalized the principles I still build by (SOLID and Clean Code) inside a strong shared standard. I helped with pull-request reviews that made the team tighten its coding guidelines and bring bug rates down, and got my first real taste of raising the quality bar for the people around me.

Junior Unity VR developer

UnityVRSerious Games

BeWorld

Jun 2018 — Jan 2019 (8 mos)

BeWorld was my first step into professional game development. Working part-time, I built immersive VR simulations used for training and education, and had my first experience of what it means to work inside a collaborative Unity pipeline rather than on my own. It was the start of everything that came after.