Rodrigo Manuel Pérez Ruiz
About me
When I was a kid I used to play lots of videogames. When I got my own GameBoyAdvance SP I got hooked on Pokemon Emerald and other Nintendo games, but I never thought about making them as a job.
Because of that, and because I didn't know what to study, I started studying naval engineering at the UPM.
But it wasn't my thing, I wasn't bad at math or physics but I didn't enjoyed that much. Luckily that same year I discovered the game development career so I changed my mind and tried this new challenge.
Nowadays, I enjoy coding, creating worlds and debbuging more than just playing games and part of it it's because the great team I usually work with.
I love animals, parkour and nature.
Professional Experience
Mobile Gameplay Programmer
TellMeWow
[Feb2022 - Oct2025]
Back in 2022, I had to make one of the most important decisions of my life: leaving my apartment, my city, and my family and friends. I had to move to Bilbao to start working as a Gameplay Programmer at a Basque mobile video game company, TellMeWow.
The company had entered a business cluster called SandBox, which included learning companies, children's content, and, of course, video games.
One of the companies was Coolmath Games, a well-established web game company based in New York that wanted to expand into mobile platforms,
and it was me, along with another programmer and two artists, who would begin developing video games inspired by the greatest hits of the web.
In this context, I was able to create my first two professional games: Bee Escape and Dragon Rush,
now only available on the App Store.
Being a new account, it was difficult to start generating income even though the games worked as they should and had a good user base,
so after a short time, it was decided to stop developing them and develop pastimes games, which never came to a success either.
Eventually, we became part of TellMeWow's general staff, and I began developing new games for the brand, such as Draw&Guess, an
online drawing and guessing game; a Solitaire
game where you have to complete a farm; and a Ludo (parcheesi) game, with some of the brand's characters as tokens.
During this time, I was also asked to improve, add content, implement systems, and refactor existing games to make them run even better. This allowed me to work on "big" projects
like Hangman,
Passtimes, or
WordSearch.
In my last stage at the company, most of the resources were focused on monetizing subscriptions for Focus, a daily app for keeping your mind active and challenging yourself. While the rest of the department focused on backend development, I was assigned a different task due to my speed and performance.
I was chosen to develop prototypes and new games to try to monetize them through publishers like Voodoo or TapNation.
Unfortunately, after what I considered poor resource management, the games were released with poor aesthetics and a lack of cohesion, so after 6 months and 6 prototypes,
only one caught the attention of publishers, which was not enough to convince management to invest in this production model.
Ultimately, management shut down the production of new and original content, and changed its business strategy to focus on the development of 2 apps and their subscription monetization,
not even games.
This new direction is far from the reasons I joined TellMeWow in the first place and I believe I have the potential to take part
in something bigger and bring joy to many people with my programming and game feel skills by doing great games.
Changes don't just happen; we have to take a deep breath and leap into the unknown.
Thanks to Isabel Liébana and Urtzi Jaureguibeitia for giving me the opportunity, and thanks to all my colleagues at TellMeWow for being with me these past four years. It's been a pleasure.
Game Dev teacher
EUNEIZ University
[Sep2025 - Today]
For the past academic year, I had the opportunity to teach at EUNEIZ University in Vitoria as the instructor for the subject Project II, focused on 3D game development using Unity, along with an introduction to Unreal Engine.
This experience required me to strengthen and consolidate my knowledge of C# programming and its integration with Unity technologies, while also initiating my learning process with Unreal Engine 5. Additionally, my role as a teacher allowed me to further develop my communication, organizational, and assessment skills, as well as my team and people management abilities.
Through the Unity portion of the course I aimed to provide a highly practical approach within a 3D development context, covering both programming and Unity owned technologies. Some of the key topics included:
- Cinemachine
- Unity's New Input System
- Coroutines and Tweens
- Lighting and optimization techniques, such as Baked lights and Light probes
- 3D scene performance optimization methods, including Occlusion Culling, Batching and LODs
- Game design patterns and their implementation in Unity (e.g., Singleton, Observer/Listener, Decorator via Scriptable Objects, Spatial Partition, Pooling…)
This section was divided into two projects. The first was a three-month project in which students were tasked with developing their own version of Crossy Road. They were given three constraints: maintain
the core gameplay loop and dynamic, use the same control scheme, and create voxel-based art using MagicaVoxel. Beyond these requirements, they were free to introduce new mechanics and define an original setting.
For the second project, students were given greater creative freedom over a five-month period. I provided several example genres and references to help them establish a realistic scope.
The final outcomes included a variety of genres, such as roguelikes, farming management games, and hack&slash titles.
Both projects were structured into four stages: Game Design, Production, QA, and Launch. Students were required to apply SCRUM practices as an agile methodology
and use project management tools such as Trello, GitHub Projects, or Anytype.
In the Unreal Engine section of the course, we explored the editor’s main windows and functionalities, drawing comparisons with their Unity counterparts. Students were introduced to the Blueprint system for the first time, with a focus on Level Blueprint, custom Blueprints, and UI Widgets. We covered the most common nodes, including lifecycle events, flow control, and interaction nodes. To conclude, we introduced EventDispatchers, Interfaces, and the process of creating a build.
