My Time with IO Interactive

Did you know I was once employed in IO Interactive, the creators of the Hitman series of games?

It was Ole Mogensen who got in contact with me in the end of October 2014 and offered a time limited job as a consultant. Ole is the older brother of Thomas Mogensen, whom had been part of my C64 music group Vibrants as Drax. So it was definitely a network thing. Ole was a producer at IO Interactive, and here the animators wanted to organize a database with animation assets.

Work in the video games business with people I knew? Definitely interested!

The company was located opposite Islands Brygge, not far from Dybbølsbro, which was pretty much right in the center of Copenhagen. Commuting would take less than an hour for me. I was unemployed at the time and had recently had quite a few uncomfortable job interviews, but I had a good feeling about this one. The guys I spoke with seemed much closer to me in spirit. One one them was the animation lead, Kenn. He was from America and thus the job interview had to be in English. My job would be to gather information about animation assets from the animators and put it in a Jira database.

I started in November 2014. The building was a tall and modern building with four floors and an big, open central shaft. It reminded me of Scala, a shopping center in Copenhagen that has been demolished years ago by now. I was shown around and greeted people. Almost all of them were nerdy to a certain degree. They also came from all around the world, not just Europe. That also meant that most of the talking at IO Interactive was in English. Apart from Ole, I didn’t know most of these guys.

I knew Thomas Egeskov Petersen, also known as Laxity. He was a programmer there.

I had to get acquainted with a lot of software that had been previously unknown to me. Apart from a few in-house tools for their proprietary 3D engine, I had to learn Jira, Confluence, Perforce, and many other to come. Good thing I was a fast learner when it came to new software. The jobs I had in the first year or two felt like being an untied resource that could be thrown around between tasks all over the place. This got better as we moved to another place in Copenhagen a few years later, but I’ll get back to that.

First I had to organize and import spreadsheet lists with thousands of animation assets into Jira. I can’t go into the juicy details as there’s this thing called an NDA, but it’s not really that interesting anyway. Suffice to say that a lot of weird file formats were involved. I also had to ask the animators about the status of their assets, which is what Kenn referred to as the “detective work” side of the job. Anyway, I got enough done fast to make a good impression with Kenn. He didn’t really like administrative tools such as Jira (“a necessary evil” as he called it) but he was happy with what I was doing with it.

As I got more involved with the Jira work, I was made a Jira administrator, and my contract was prolonged. I also had to register motion capture data. I got to know some of the animators, but I never felt I was close to any of them. There was always this veil of professionalism as well as me not belonging in quite the same clique as them. Maybe I was just imagining things, but I always felt like an outsider.

Of course, they were in an entirely different league.

Not much later, Kenn had other departments offer me other work. The first was managing dialogs and transcriptions for Hitman. The lead, Mark, told me it was a mess. It certainly was enormous. I also had to wear headphones to verify dialogs, and I can never wear those for too long. It doesn’t take long before I feel like I’m locked inside a diving bell, and then I just need to get them off and get my ears some air.

One thing I really liked was how other game companies of Square Enix (which owned IO Interactive at the time) sometimes visited us and showed video clips of gameplay or game trailers. Everyone in the company, which at the time was probably a little bit more than a hundred employees, gathered up in a hall and we all watched it like going to the cinema. It was a nice diversion. Lots of applauses.

The CEO at the time was Hannes Seifert. I had actually exchanged snail mail diskettes with him on PC in the 90’s, when we both composed AdLib music in our own players. Here, I barely exchanged a few words with him, and we certainly didn’t talk about our shared past. To be honest, I was uncomfortable with him being a CEO and I was almost literally in the other end of the employment roster there. So it was probably me.

One thing that always puzzled me was how almost no one greeted me back when I said my good mornings. Maybe it was because of the extreme diversity of the employees. So many different countries represented under the same roof. So many different cultures. Yet pretty much all of them were nerds.

Some of them were really hard to understand. The worst were an animator and a producer from France. I have nothing against France, but I really had a hard time understanding their English. Lots of nodding, hoping I made the correct response. It was a shame, since they were such nice people.

Of course, with a workplace this diverse, and with employees from not just a lot of countries but most of the continents, there had to be some odd balls among them. One guy who stood out was small and always talked in very short sentences. Unfortunately he also did this in a very low volume, so he was difficult to understand. One of the animators also had to have everything explained in meticulous details with three times as much dialog as all the other animators. He really wanted to understand.

As I got more experienced with Jira, I started to explore and use plugins for it. I also started writing Groovy scripts in ScriptRunner too. I really liked being able to customize Jira with it, but I never became too fond of Groovy. It was a superset of Java and I’ve never been a fan of that either. I also had problems making plugins work for Jira since IO Interactive wasn’t using the latest version of it.

Nevertheless, I loved fiddling with Jira. This was the best job I’ve had so far.

I got involved in another area of work that once again felt like giving the lowly assistant the most tedious work. Celine was working with audio transcriptions and it was a convoluted task with lots of potholes. It took some time getting the upper hand of it. Part of the work was generating robot voices in an in-house tool for dialog not yet recorded by voice actors. Lots of waiting for progress bars.

In 2016, I was rotated to a different database than Jira, and it felt like I was leveling up to a slightly less lowly assistant. Kenn wanted to make use of a database tool called Shotgun to manage our animation assets, instead of Jira. I was worried to begin with, as it was quite a different beast than Jira. It was much more technical, with a lot of tables. Unlike Jira, it was meant to be used for game and movie animations.

Somehow, the change felt like having wasted my time in Jira, but I had to flow with the river.

It didn’t take long before I was invited into a team of three Shotgun administrators, together with Kalvin and Marcus. They managed outsourcing, and I was going to be responsible for importing motion capture data from Jira into new fields. Marcus remembered my time as a C64 composer and it sometimes strained our relationship at work. But both he and Kalvin were really kind and helpful.

I also learned to program Python since this was used by Shotgun. While Groovy was never a hit with me, I immediately loved Python right from the start. It only too me a week to learn it. The indenting syntax was charming and made for much less typing. I used it for logging, controlling events, and I tried to make Jira and Shotgun talk to each other. At one point I even got some help from the developers of Deus Ex in Montreal, as they were also using Shotgun.

A Python programmer, Søren, contacted me and revealed the epic plans of supporting an enormous database in Shotgun with unique resource ID for all assets. His first attempt was a list of almost 300000 lines. I myself was starting to love fiddling with Shotgun, like I did with Jira before. I had even learned enough to inform other curious employees about it. First Søren’s colleague Sune, and later even one guy from Sumo Digital, an external developer that IO Interactive worked with.

I also found and started using PythonAnywhere for generating web sites using Python. I could show Shotgun data in an URL widget inside Shotgun itself that way. It was always fun discovering and learning new software, but it was still difficult to shake the feeling of being an expendable resource.

Sometimes I felt useful to IO Interactive, at other times I felt like an impostor. After all, I was never directly involved with creating original content for Hitman. I was sort of beating around the bush.

IO Interactive moved to a new location in Copenhagen, in a street called Gammel Mønt. First impression was good – about two or three floors with more space on each floor, and lots of white walls. However, it didn’t take long until I was longing for the old place. Getting up and down was cumbersome. There was a big set of giant stairs in the middle that looked like something out of a toy area for kids in Ikea.

Also, the toilets didn’t have sinks. I need to have a sink at the ready. Later, I discovered that the mobile game developer Hapti.co (who was sharing the office space with us) had much better toilets with sinks and mirrors. So I just went there whenever I needed to talk to a horse.

Moving to Gammel Mønt also had another upheaval on my part. I joined a small team of four, and we got our own place in sort of an alcove. I was together with Søren, Sune and Frederik, and later one Morten also joined as a fresh employee. I remember Sune had a treble problem on one ear, so he had to sit in a specific way. Søren was sitting opposite me, and he was both funny and intelligent. Also, he was great at making sure I wasn’t dragged in mysterious directions to keep our tasks on track. And he was a damn good researcher. I’m no Google slouch myself, but he was even better.

Being part of that team felt like having leveled up again. Now I wasn’t just an ensign anymore.

I got more involved with Python, even installing an editor called PyCharm that Søren was also using. There was a meeting about putting resources into Shotgun in one enormous table, and one about synchronizing between Jira and Shotgun using webhooks. Søren wasn’t too fond of the latter. I had big Python scripts running for hours. I’ve always liked challenges when it comes to programming.

Hannes Seifert stopped as a CEO for IO Interactive so he could be together with his family in Austria. Hakan Abrak took over as the new CEO for the company. Somehow, that change felt ominous.

Then the final project arrived that I would work with. Karim wanted some kind of automation in Jira. Before long I was back in Groovy, working with fields in dynamic forms, researching other Jira plugins, etc. It also involved waterfall handling of issues in Jira, and I liked that it felt like an important task. Karim often visiting me to check up on my progress was proof of that.

My contract was prolonged, probably to the end of 2018, and I was really happy to work there. I even took over the main administrator job for Jira, monitoring stability and general administration jobs for it.

Finally, I was starting to get that feeling of being indispensable.

Suddenly, Square Enix decided to sell IO Interactive. They wanted to streamline their portfolio of games, and Hitman was no longer part of that vision. Hakan immediately started looking for other investors.

Then in May 2017, Hakan called for a big meeting on those cumbersome playground stairs I mentioned earlier. There had been rumors of many interested parties to take over from Square Enix. Even millionaires. I had a good feeling about the meeting. He would probably announce who the new buyer would be.

Then he suddenly uttered, “Take heed people, this is going to be a tough one.” 🙂😮😐😟😔

There was no new buyer, and now IO Interactive was in big financial trouble. 45% of staff needed to be fired straight away, which was about 70 people. All of Hapti.co had also been dissolved. There were even big surprises among the employees laid off. Ole was one of them. The ones being fired would be sent an e-mail within the hour. Imagine having to stare at your Outlook to see if that one e-mail suddenly pops up.

And there it came. I was also fired with the rest of them.

Guess I wasn’t that indispensable after all. It was a damn shame. In spite of all the rookie sensations in the beginning, I had really liked working with Jira and Shotgun. I shook hands with a lot of them (Kalvin and Marcus even gave me a hug) and then I left the building.

And that was the end of my time with IO Interactive.

Although I liked what I did, I never felt I was part of the core game development at all. Working on Hitman, the animations, music, sound, levels – it was always something the really cool dudes were fiddling with on their monitors as I walked past them. I was just someone working with tools used to keep track of their tasks. Guess I didn’t really understand what indispensable really meant.

It’s all good today, though – in 2023. I did have a short round in a terrible job I hated, but it was followed up by my current job in the Danish tax company as a software tester using Leapwork, and I love that job even more than anything I did at IO Interactive. I never thought lightning would strike twice – but it did.

Leave a Reply