Quitting VFX, one Year On

So that might be a surprize to some people reading this – if someone still reads this blog at all. But around Christmas 2013 I have decided that I had enough. Enough of the being pleasant. Enough of the wonderful Aeron chairs and enough of the Flame. I was just sick to my stomach.

Throughout my life I have been one of those blessed few who never had to work at a place they hated. An essential benchmark of the quality of life for me is that I wake up in the morning and feel like going to work. When that feeling is gone, and the fact of going to work becomes dreadful instead – that is the clearest indicator for me that it is time to move on.

This in fact turns a major page in my life. I have dedicated 9 years of it to the Flame, just like I wanted to. I have seen the demise of the SGI Tezros (I will forever remember what $hinv stands for and what the Vulcan Death Grip is). I have done some great compositing work, from set extensions to beauty to morphing. I have worked with some of the greatest, most wonderful art directors in Amsterdam – it did turn out that most of them have grey hair, a beard, a belly and an impeccable sense of humor - and, first and foremost, artistic vision.

I worked at an amazing company which gave me so much I will be forever grateful. Of course there were ups and downs, but I was incredibly lucky when I stumbled into it by accident in my search for an internship.

I have enjoyed some very interesting projects, mastered Shake and Nuke, became one of the best matchmovers in town. Have beta-tested new versions of Flame and had the pleasure of meeting the wonderful, predominantly-Francophone team of it’s makers. I’ve met a mentor who transformed me from a rookie into a good all-around Flame op. I got pretty much everything I wanted.

For a month I even lived at the office, when the situation with my landlady became unbearable. I worked my year as the night shift Flame operator - so that chevron is earned too.

The logical next step would be London. The problem with that is - I was not prepared to dump my residence status in the EU just for the privilege of working on the next fab rendition of Transformers IX. You see, most people in Western countries are equal, but people with less fortunate passports are somewhat less equal than others. So if I were to move on to the UK it would mean a new alien status, a new residence permit, a new work permit, and all the other pleasures such moves entail.

Also I got tired of client work and all of it’s facets that tend to drive you to exhaustion. It was extremely challenging and very rewarding for me - especially me being an overall introvert that I always was - but at a certain point I’ve started losing the grip. The guy that once was Julik started to become some other person. Some other person that I didn’t like seeing in the mirror when I brushed my teeth. Some person that had to develop reactions to the outside stimuli that I did not condone. In short - the beautiful honeypot I was so eager to devour started to consume me.

So after having dedicated 9 years to visual effects and Flame, it was time to turn the page. Since I was developing pretty much all those 10 years (I started about a year prior to this blog being first put online) becoming a Ruby developer seemed par for the course. I love programming, I love Ruby, and I’ve made some great stuff using it. Tracksperanto has become the de-facto go-to piece of kit for many, and even though I never got code contributions for it – most of the post bunch speaks Python only – I was able to maintain it with excellent longevity and it saved many a matchmove project, both for myself and for many others.

Work/life balance

This has more to do with company culture, but in the past years I’ve learned that when you process yourself into a skewed work/life balance you have to understand the benefits and the costs. Essentially, when doing all-nighters, participating in sprints, crunch times, enabling your mobile phone at night - think very well what you are giving up, who benefits from it and whether the compensation is adequate. Overtime is not free - you are paying for it with your health, with your family life, with your friendships and love and care and affection. Being on call is not free.

You absolutely should do it when doing the work you love - but consider whether what you are getting for it. When in doubt, re-read Loyalty and Layoffs.

The game here is detecting when the overages and pressures stop being of benefit to you, and only stay beneficial to your employer or client. It is an extremely fine line, and most good managers are good at masking it from view. It took me a full 15 years of working in different roles to get the feeling for when enough is enough, and even at that I had to switch careers to restore the balance.

Don’t think that development is foreign to crunchtime (read some jwz if in doubt) but it is highly likely that you will be confronted with it sooner in a VFX career. Remember - how much of it you will take, and what for - is your decision. Nobody - not your employer, not your manager, not your parents - are responsible for the decisions you make about it.

The switch

At this time I was considering moving on, I’ve stumbled upon a Ruby job advertized by WeTransfer. Now, this is not wildly publicized or mentioned most of the time, but WeTransfer, in spite of it’s amazing international appeal, is at it’s heart a purely Hollandic enterprise. It started like most good tools in the creative space get started - like a simple piece of a kit used by a design bureau for sending large files over e-mail. I’ve used them countless times - since here in the Netherlands there aren’t many design- and advertizing companies not using it for one thing or another. And so I wrote that email, and done one interview and got accepted.

Probably the greatest thing in my favor was the fact that I do have a pretty representative GitHub profile. Even though there is a tremendous talk around town about whether you can or cannot require pepople to have open-source portfolios, the benefit of having one is absolutely clear. It does help tremendously. As a matter of fact, when I came to the interview my future colleagues already knew what kind of code they could expect to be written. And so, by a stroke of amazing luck, I was in.

Afterwards came a proceeding of removing myself gracefully. As a matter of fact even though I have been coding for long time, I never actually held a full-time developer position. So for me this move was as scary as for them. I was entirely prepared to come in and end up in a situation where I will end up in some cubicle doing boring one-off scripts to save the day. Or that I would not couple well to the existing team… So since I wanted to have a way to backtrack if it were to happen, I have asked the to do a trial run of one month, and used an unpaid leave from my previous work for that.

Well, I was in for an awesome, pleasant surprise. The team turned out to be top-notch. Within my first couple of hours I had the test suite for the main codebase running on my hardware, without any issues, followed by a tiny commit shortly after.

It was as if I was doing it for a very, very long time – just not making any money of of that.

And so once my time came to the end, it was time to head back to my post company and announce my resignation for good. After a few months more, I have moved to WeTransfer full time (that was around June last year) and have been loving it ever since.

Why that makes a great career change.

There is a number of very specific traits that make a move like this have a big chance of success. First of all, if you worked in VFX - especially in client-communicating capacity - you have to communicate. Do not underestimate that - this is something many people in development do not do as much, because it is in essence possible to get by without communicating too much. In VFX however, with extremely harsh deadlines, always being the last station on the conveyor belt - and having to deliver things that are vastly underbudgeted in both resources and time - communicating well, in a friendly and clear way becomes a matter of survival. You will simply not get too far in that line of work if it is a problem for you to do good teamwork.

This creates an exceptional opportunity in development. Joining a team (even if it’s an awkward one - something that I have been spared) will be a good experience, because you learn to be a communicational survivalist. Finding compromises is easy, because most of the decisions in a healthy team will be about the actual technical decisions - as opposed to stroking people’s egos.

Another amazing benefit that I could reap with this switch is that I effectively went from service work to working on a product. One of the things I have experiences the most painfully is when nothing you do has a lasting impact - because projects have a short runtime, you pretty much have to push for everything the current project requires. This defeats most attempts to create something efficient, that will substantially reduce the amount of shit-work (and eliminating shit-work was the very reason why I started coding). It takes great determination – and money – from a VFX company to stay competitive in the tooling and processes department. To give a very simple example - it was normal for me to get a phonecall on my internal telephone every 3 minutes or so. I have begged for this to be replaced by a company chat or some booking system for years. Instead, all we got is an establishment of a booking system written in godawful Delphi which only semi-run under Wine.

When the project turnover is high, it is extremely difficult to add those changes and optimisations for a VFX company. Especially if the people are split on the cost-generator vs cost-creator criteria by the management. So pretty much anything you have to make has to create profit and solutions on day 1. This is both a blessing and a curse - but in the first place it teaches you to deliver quickly.

During my actual development career this has served me exceptionally well. Primarily because even though I know how to deliver something quickly, in the back of my head I always try to trace the avenues for doing it neatly, for achieving the much-sought-after longevity that I cherish so much. That idea of longevity, being practically unachievable in VFX, is the holy grail of a development career - but if the timing and the atmosphere are right it will be a shared interest of the entire team. With the right mindset it is extremely fulfilling to work on something that will stick, and this is something I can enjoy pretty much every day now.

What VFX people can learn from developers

Invest long term. Spend time upfront. Reuse. Remember: every rough knock-off job will come back for changes later, and the amount of pain you will experience will depend on how sloppy you were when setting up it’s first iteration. Communicate in writing. Leave paper trails. Embrace remote. Butts in the seats will die. Collect stuff for your showreel - it is your CV. Upgrade interns to mediors sooner. Share with your peers.

What developers can learn from VFX people

Learn to deal with stress. Know your good enough. The team always comes first. Realise that pretty much anything is possible given unlimited time and money. Pick your battles wisely. Drop by the office - coffee is nice and you can meet many interesting people. Collect code on Github - it is your CV. Embrace internships and mentorship programs, because those developers that you try so hard to hire and do not succeed to - they should be trained by you instead.

Am I still on that thing?

If an interesting artistic VFX project comes along, I will be more than happy to participate as a freelancer. So far a few people had me on their match-moving jobs and I had no complaints. So if you got a shot to track - do not hesitate to shoot it my way.

But I am no longer manning the station at the conveyor belt, because - time for something completely different.

Wonder where we will be in 9 years.