Mauricio joined us on our Discord server in March (on Pi Day!) for a text-based AMA where he talked about his journey into games, his Senior Programmer role, and answered our community's most pressing questions!
👋 Hey Mauricio!! Thank you so much for being here and sharing your insights with the Work With Indies community! - Katherine
🌷 AHHH hello!! Thank you for having me y'all 🥺
🥧 Happy Pi Day! - Joel
🌷 OMG SO TRUE I brought pie for everyone 🥧
🥧 Ayyy free pie! - Erica
🥧 What kind (of pie)? - Joel
🥧 An important first question. - Katherine
🌷 It's pecan pie 😋
[.c-insight]💡 Editor's Note: The best pie.[.c-insight]
🤔 As we eat all the Pi, can you tell us a little about yourself? Who you are, what you have been doing previously, and what you are up to now? - Katherine
🌷 Of course!! 🫶 I did prepare a little blurb hehe:
Hello everyone! I'm Mauricio, a programmer/artist combo guy, with a side of local community building in Mexico! I've been working in games professionally for about 4 years now, focusing on tools development, artist/programmer collaboration, technical art and system design/programming. Before that I used to work as a freelance motion graphics designer and illustrator, doing branding, concert posters/videos, and other fun stuff!
Currently I work in Pet Golem Games as their Lead Programmer and we recently shipped The Cauldron Kids: The Summoning of Mr. Vermicelli, and I'm also now working on a secret project as their technical artist & art integrator✨. Both of these jobs I found first and applied to through WW/I!
🤔 Wooow that's so cool! What is the local community building? 👀 - meruman
🌷 I run a local community named EnControl in my city, where we do local meetups in-person to talk games, showcase demos, etc! I've also helped in organizing congresses, game jams, workshops, etc. I love event organizing and community building, it's great to meet new friends and really fills my spirit with motivation to keep making games haha! Makes it sustainable for me, personally.
🤔 Concert posters !? That sounds like such a cool gig! How was the transition from that to games for you? And what made you decide to go into games in the first place? - Katherine
🌷 It was pretty fun! Honestly, I knew I wanted to make games from the beginning but it wasn't something feasible for me to pursue then, so I started just using my art skills to make things that I thought could translate into games. I started graphic design and motion graphics just because I was too passionate about Persona 5's UI/UX design that I was like "I NEEEEED to do something like this, even if it's not games".
I started working on games when I entered college (and subsequently dropped out lol), they showed me the tools you could use to make games, so I just ran with that and knew it was what I wanted to do 🫶.
What got me into games was a combination of Mario Tennis: Power Tour and also just living surrounded by games. My dad and sister were big gamers so I inherited their N64 and Sega Dreamcast, and I grew up glued to them 😂 I genuinely feel like I knew I wanted to make games since I was young, but I thought it was so far away until I finally interacted with people who were like "you know, you COULD do this".
🤔 What kind of game projects did you work on before hand that helped you start your career? - Var
🌷 Before working professionally, I did a bunch of little prototypes and experiments in various engines! I started out replicating games like Hotline Miami, Galaga, Mario and the likes, but afterwards I started to become more interested in creating things like systems, tools, the likes. So I started making things like a painting tool in Unity that you could make NPC faces with, a 3D diorama to play with shaders, etc. I think that helped me a lot to not only be a games programmer, but start getting into technical art and tools development!
🤔 What was the most difficult part about entering the industry? What kind of pitfalls should I avoid/opportunities to jump on (as a college student or in general) - FedoraKirb
🌷 Finding remote work and people who believed that I could do it! As someone from Mexico, internships weren't an option, not many studios here, and the industry was very small when I started. What helped was finding people who I could share this passion with in online forums/tumblr, creating alongside them, joining communities and creating my own thing. Actually the first game I worked on, Fostering Apocalypse, started out as a school project for my friend who hired me to work on it, it turned into something more, and now we're working as Incisor Studios to make more cool stuff!
As to what to avoid, I'd avoid unpaid internships, accepting rev-share projects from someone you don't trust, and not staying true to your ideas. Especially as a college student, you have the opportunity to make things on your own terms, on your own ideas, and it's so empowering to follow that. By making things you'd like, you can meet other folks who vibe with you, and you can start growing together!
👏 Muchos felicidades ❤️ I also have a good friend in Mexico where the animation industry is also tough/rather small, your journey is immensely inspiring and super proud that you got to where you are now! - Les
👏 As Les said, this is truly inspiring. It is tough out there for job seekers. And we hear all the time about how much more difficult it is for those in Central and South America (and beyond)– how they're often not even considered based upon their location. 🤔 How many roles did you apply for before getting these two gigs? - Nate
🌷 Ok so before Pet Golem I applied to Dell and I moved to their interview stage, but it was a virtual interview which I fumbled HAAAARD and I was just like "I'm never!! joining the tech industry again!!!"Then I saw PGG's listing, I applied, and fumbled it again by submitting my resume in Spanish LOL. However I was very lucky to have worked with Leaf Let (a community member on our discord), who was also working there at the time, and they were able to vouch for me, so I got an interview!
For the secret job, I think I applied to 4 jobs before I got this one. I know it sounds like very little, but keep in mind that I only apply to places that accept international applicants remotely. Which is like... 1/1000 of game jobs 🥹. So I tried to make the most of it by carefully crafting my resume and portfolio to each one.
🤔 Buenas mi compadre!! I'm also from Mexico and actually I studied in Monterrey but now I'm living in Germany and working as a software and AI lead programmer but I've always wanted to transition into game dev, I played around with unity but I am honestly in love with unreal engine and I've been developing super small games using it, do you think I can grow with communities like the one you manage in Mexico? Are there people using unreal in your community? Y felicidades !! Que sigan los éxitos! 🙂 - meruman
🌷 I'M ALSO FROM MONTERREY!!! LET'S GO!!
And yes, there's many people and studios who use Unreal here, you'll definitely find people who enjoy it like you wherever you go. And yes, you could definitely grow a community! It all starts with a "hey join my Discord", and being consistent. Create a good space, promote it, and people will join- trust in that and keep going! Communities are important!
🤔 What kind of skills are required from a lead programmer in a company such as Pet Golem Games? - dogiordano
🌷 I find that understanding, trust, and clear communication are key. It's important to make the distinction between a "lead" and a "senior"- I might not have the skills of a senior dev of 7 years of experience, but I felt okay about being a lead because I knew the project, and I knew I could talk with folks about things and move forward. It's hard to make games, things go wrong all the time! But communicating clearly, trusting each other and just moving forward was helpful and crucial to get the game out.
In a more programmer-y sense, be aware of the macros/systems of your project, how you can work with them, and ensure you're setting up your team for success! As the lead, it's your job to ensure that you're doing progress on the right things, ensure that everything will mesh together, and that folks can work without any bottlenecks in the process!
🤔 How did you transition from an artist/designer to a programmer, do you think your art background helped you start your career as a game programmer? I am technically a programmer myself but I enjoy making digital art and design in my free time, should I invest more time in programming or art/design if I want to join an indie studio? - JY
🌷 I believe art helped me immensely as a programmer! Folks who have worked with me know this, but I'm very hellbent in making mockups and using drawings/diagrams to express my ideas. It's great to have the skill to visualize your work, and it's helped me a lot figure out some weird coding issues that have popped up.
If you enjoy digital art and design and are a programmer, then try to mesh that together! Open up paint, brainstorm, and try to visualize your code as blocks that connect each other. Not to break my NDA (I promise I'm not), but for example, this is what I was left with after a brainstorming session about player input:
[.c-insight]💡 Editor's Note: This visual example is great. And often, during in-person interviews, programmers are often asked to go to the whiteboard to brainstorm and diagram solutions. Being comfortable doing so digitally is a nice skill to have in your back pocket (and is certainly something that would be expected of a lead). Also, these can look great in the "more detail" pages of your portfolios.[.c-insight]
🤔 I do community engagement and event organizing in my local area too. Do you, personally, include that kind of stuff on your resume when applying for jobs? Do you think it would help? - Starry
🌷 I just add what seems important or most impactful to the role I'm applying. In my current CV, I only have a congress I organized because I think it speaks to my production and problem-solving abilities, alongside some fun details about it. But I do think that it's a matter of thinking "is this relevant to what I'm applying?", if so, put it in! If not, then nope!
🤔 What's your advice for balancing your passion projects with your paying gigs? How do you personally avoid crunch? - tooth
🌷 My biggest advice for this is to treat freelance gigs as hourly jobs. Set a daily hour limit, plan your own milestones around that, and move forward- I think with freelance jobs especially we tend to end up crunching because we think about it "I need to finish ASAP since I got paid upfront", but really, they're paying you for YOUR process and that's something both you and your client must respect.
As for crunch, I try to go for walks and also acknowledge that I do my worst work if I'm not in the right mind space, and it wouldn't be fair for me or the person I'm working for. I used to give in to that a lot, and it fosters anger and pain in you that's hard to get rid of later, but I thought I had to do it for the people I worked for. However, now I just think "This won't do anyone any favors", try to keep to a schedule, and respect my time a lot more o/
🤔 Since you've done both programming and art, how do you find the art side has helped you solve coding problems? Like are there certain solutions you've been able to see because you aren't just looking at it from a purely technical view? - Erica
🌷 Absolutely! That goes back to the visual brainstorming and sketching out diagrams, definitely. It's also massively helpful in things like technical art where you REALLY have to visualize things 🙏
🤔 Have you ever worked with unreal engine? And if so, how do you feel about working on it? - meruman
🌷 I have worked with it a bit, but not professionally! I loved it, the blueprint system is super cool. I tried to recreate the Psychonauts 2 character controller, haven't finished, but getting there! Also their material editor is great! I love experimenting in other engines or frameworks, I'd super recommend!
🤔 "I did a bunch of little prototypes and experiments in various engines! I started out replicating games like Hotline Miami, Galaga, Mario and the likes, but afterwards I started to become more interested in creating things like systems, tools, the likes. So I started making things like a painting tool in Unity that you could make NPC faces with, a 3D diorama to play with shaders, etc."
How does one go about... replicating Hotline Miami? What was your actual process? Where did you begin? And did all of these prototypes and tools end up in your portfolio? Do you have a link that you can share with us? - Nate
🌷 I would make little diagrams and studies of the game as I played it, and then try to turn that into a system/controller that would translate into the engine. In a way, it feels a lot like parsing. Studying games by playing them is key, as that's the only way you can truly understand the mechanics of what you're looking to replicate, imo. Not all of these tools and prototypes are in my portfolio, but I do reuse tools from my personal projects onto others! I don't have a link to share since I'm still working on my website, but I will when I can 🥹.
But I do have a PDF portfolio where I showcase my work, and I kind of do it like this:
🤔 Do you have an example of an unexpected challenge/difficulty you encountered as a games programmer? Something that really caught you off-guard? If so, how did you manage to overcome it and keep a healthy/positive mindset along the way? - Leaf Let
🌷 So you know this since we worked together, but during the production of our game for the Cartomancy Anthology I started to get some really intense hand pain which prevented me from working properly. I did have to end up taking a few months off from work and just being super slow- it was really demotivating, and a really difficult period in my life. It was like all the overworking, crunch and stress catching up to me. Our game was also about self-sacrifice and giving away too much so I just felt like even my own work was mocking me LMAO.
But I just tried to move forward by being with my friends, realizing that work isn't my life, and setting the purpose that I would not get better for a game, I would get better for myself. I think the best way to be a games worker is by realizing that you are not your work, instead, it's YOU who informs your work and that's why you should take care, live life, go out, and be safe. Keeping that mindset definitely helped me out a ton, and continues to do so!
🤔 Did you learn programming from your time in college? Did you primarily self teach it? Did you ever user programming outside of the video game industry before your current job?In any case, back when you had zero video game industry experience, how did you demonstrate your value as a game programmer to potential employers? - Starry
🌷 I learned a bit in college thanks to my professor Christian (who is currently working at Unity I believe?), he taught me C# from scratch! But after dropping out, I started experimenting with making my own little apps and games in C#, python, Lua, did some webdev, etc. I basically just said "I WANNA DO THIS" and I would fumble my way through it, ensuring that I at least learnt something useful from it.
When it came to showing my value as a programmer, I knew that folks couldn't trust me by my word, so I would just show things to my friends. Tooth and hg (great friends, we make games, wink wink) can back this up- I would be like "LOOK IM DOING THIS!" or "Hmm how would I do this" and just be really outspoken about wanting and being able to do games.
NOTE, this isn't to say "yell at everyone and show them your work", I did this mainly in our DMs when we talked about making stuff and also in game dev discords with progress channels lol. But, I think it was immensely helpful to just show folks what I did, even if it was weird or bad, because it started forming the words "programmer" in their perception of me, which then allowed me to say "I'm a games programmer!" and people would back me up 😆.
🤔 What is something that has surprised you or what is a big lesson learned from your time in your current roles? - Nate
🌷 I'm very surprised at the fact that games are made at all, period LOL. It's a hard job, and it takes such a big group of people to do!! But what I'm most surprised by, is how passionate, kind and cool the people are in this medium. I've said this to everyone who asks me, but I genuinely don't think I'd have a career if it weren't for the great people around me. Community and mutual aid are so important, and if games can happen, it's because of that.
So a big lesson I learned, and something I'd recommend people to do, is to always promote kindness, be open to meeting folks, and don't just network, make friends! This rollercoaster started because my friend trusted me enough to say "make a game with me", then, I met a great person in the HauntedPS1 discord who would join us in making a game and then vouched for me in my first role, and that has all empowered me and made me confident enough to keep applying, keep creating, and now I'm very happy at where I'm at ✨.
🤔 What advice would you give people working on solo projects to stay motivated? I find that I work best in teams but when I work on something by myself it's challenging to stick with it. - Var
🌷 I like to keep progress shots, because it keeps me motivated to see how something is evolving! I also like talking with people about what I'm making, even if it's just in DMs with a friend, or posting cryptic gifs on social media. But if that's not possible, I also just try to keep a little victory log for myself in a notebook- "today I could program this!" "today I did all this stuff!", etc.
Sometimes we enjoy group projects/showing people our stuff for the acknowledgement and motivation you get from showing folks, but that's also an acknowledgement and validation you can grant yourself by showing yourself what you can do!
🤔 Do you ever find yourself thinking about joining a group project? On-site, I mean! - DurskyPlatypus
🌷 I'd like to work on-site someday, I like interacting with folks a lot! However, it depends on the opportunity. When it comes to jobs I'm super strict, because at the end of the day it's a very big commitment and it shifts a huge part of your life, so right now, I'm kind of on the fence about it... like the idea is cool, but in execution, I'd be scared lol!
👏 This was stellar stuff Mauricio!!! Thank you so so much for taking the time to answer questions from our community! 🤔 One last question from me: where can we find you on the internet?? - Katherine
🌷 Thank you so much for having me! ❤️ I hope I was able to answer y'alls questions properly, and if anyone still has some questions/would like to talk, feel free to shoot me a DM.
You can find me in most places as @maurimodev! Here's my Twitter and LinkedIn:
https://twitter.com/maurimodev
https://www.linkedin.com/in/maurimo/
This was awesome Mauricio! Thanks so much for sharing your time and your story with us! - Nate