Career story

My first studio job

How a weekend assignment turned solo Android tinkering into real studio production: automation scripts, asset tooling, installers, and gameplay work on hidden object adventure titles.

PythonBashMAXScriptPhotoshop ScriptingNSISDDSGameplayHidden Object

Highlights

  • Joined Mad Head Games after a weekend assignment because I wanted to learn how real teams shipped games.
  • Worked across Bash, Python, Photoshop scripting, 3ds Max scripting, and NSIS installer scripts.
  • Built production tooling, including a Python sprite atlas packer for .dds image assets.
  • Moved from tooling into gameplay and puzzle programming on titles like Rite of Passage and Cadenza.

Project links

Walking into a real studio

After shipping Android apps on my own, I wanted to see what game development looked like with other people in the room. A good friend of a friend told me about Mad Head Games, a studio in Serbia making casual hidden object puzzle adventure games, so I went to visit.

I did an assignment over the weekend, sent it in, and soon after I was hired. It was my first real job, and the difference was immediate. Solo work teaches you survival. Studio work teaches you coordination: source assets, naming conventions, build steps, production pressure, and the quiet importance of making other people faster.

New blood means every toolchain

Because I was new and willing to learn, I touched a wide spread of technologies. Some days it was Bash scripting. Some days it was Python. Sometimes it was Photoshop scripts, 3ds Max scripts, or NSIS installer scripts. It was not the romantic version of game development, but it was the real one: find the repeated pain, automate it, and keep production moving.

Hidden object games are deceptively asset-heavy. Behind the calm player experience is a pipeline of painted scenes, object states, puzzle logic, localization, installers, packed textures, and a lot of small rules that have to survive until release. That was a perfect education for me.

The atlas packer I still remember

One of my proudest early wins was a Python sprite atlas packer for .dds image assets. It sounds extremely specific because it was. The team had production needs around packed game art, and the tool had to make a repetitive process faster and less error-prone.

That kind of tooling taught me something I still believe: a small script can have a big product effect if it sits in the right place. A good internal tool does not need to be fancy. It needs to remove friction from the people shipping the work.

From scripts to scenes

Later I moved onto actual titles, including Rite of Passage: Child of the Forest and Cadenza: Music, Betrayal, and Death. These were story-driven hidden object adventure games, the kind where puzzle design, scene logic, animation timing, inventory behavior, and player feedback all have to click together.

Gameplay programming in that genre is about clarity. The player should feel guided, but not dragged. The puzzle should be readable, but not obvious. Every little interaction needs to respect the scene, the story, and the production constraints around it.

What it changed

Mad Head was where programming stopped being just my own curiosity and became part of a production system. I learned how artists, designers, producers, and developers depend on each other, and how much technical work exists outside the final gameplay code.

That first studio job also made me comfortable being dropped into unfamiliar tools. Bash, Python, MAXScript, Photoshop scripting, installer scripts, gameplay code: the language mattered less than the habit. Understand the pipeline, find the bottleneck, build the thing that helps.

Back to blog