Search Unity

We’re joining Unity to help democratize data-oriented programming

, November 8, 2017

Mike Acton and Andreas Fredriksson have joined Unity as Principal Engineers from Insomniac Games. They’re two AAA engine and performance experts who bring best-in-class expertise to Unity. Acton and Fredriksson will be based out of Unity’s new Los Angeles office in Burbank, CA.

Mike Acton, Principal Engineer at Unity

“I have had the privilege of working in AAA games development for over 20 years and the honor of leading one of the most well-respected and talented internal AAA engine teams at Insomniac Games over the last 10+ years. Along the way, I’ve learned a lot about what it takes to produce some of the highest quality work in the space and what is required from an engine to meet those requirements.

Being the Engine Director at Insomniac Games is a position very few could walk away from, but when Joachim showed me what he and his team at Unity had been working on to take data-oriented programming and make it accessible to everyone, I knew that this was an opportunity to not only change how games are built, but set a new bar for engineering across large-scale projects everywhere. And that was an opportunity I just could not ignore. I’m excited to work with Joachim directly to help democratize data-oriented programming so that teams everywhere can achieve things only previously possible by a few dedicated groups.” – Mike


Andreas Fredriksson, Principal Engineer at Unity

“Joining Unity is an ideal and logical next step for me. Working on Frostbite and Insomniac Games’ internal engine was very rewarding and challenging but, ultimately, the number of developers I could directly help was limited.

Unity is everywhere. It is impossible to have a conversation about engine tech and game development without someone bringing up Unity. This means a much bigger stage for me to inspire and lead from, which is exciting.

Besides programming cool tech at Unity, I want to continue reaching out to developers in conference lectures and blog posts to make a difference in the way people reason about performance and low-level programming.” – Andreas



Not only are we thrilled to see what we can build at Unity, we’re both going to be based out of Unity’s new Los Angeles office in Burbank, CA! We really couldn’t think of a better place to grow our careers and can’t wait to start working with the Unity teams and developers around the world.

– Mike & Andreas


19 replies on “We’re joining Unity to help democratize data-oriented programming”

Unity has already democratized game development. It is already the best “indie” engine in the market, by far.

To program game logic for Unity is already simple enough, there is not much more that can be done to make it simpler. It is as simple as programming gets. I know they are talking about adding unreal like node-based visual scripting, I see how that can be cool for newcomers or enthusiasts of game development, but honestly for the people who does it on a daily basis, I doubt this will be a big deal.

We can see why Unreal is losing the engine “race” even having the superior rendering engine, because they don’t have C# scripting, and using nodes to create game logic is cool at the begging, but after the grind of doing it day after day, it loses it’s magic quickly, specially when you find yourself dealing with a giant node tree, and can’t find anything in it.

I hope Unity developers invest some of their time in what I see as more productive things, such as improving the importer of the .blend files, (0 the axis values that skeletal meshes are imported in, and more importantly, fix the problem with animation clips not updating automatically from the .blend files) come on guys, give us Blender guys more love. Also, the syncing of the Animator running in the editor could use some work as well, it often gets off sync with the code.

I think you’ve misunderstood the title. It is about democratizing data-oriented programming, not game development. This is an approach to programming which can yield high performance gains. Currently, it is being used under the hood in the engine, but I think they plan to make it more accessible through an API so that game devs can take advantage of that power when writing their own game systems and logic. I think this is a great move, because a lot of criticism of Unity right now is along the lines of “it loses when it comes to raw processing power”.

My team is now looking forward to see what you bring to Unity 2018, which before this announcement wasn’t even an engine to consider for future projects. Much respect.

Unity has used this line (“democratizing game development”) for a while now, which seems to mean bringing professional tools to everyone, and bringing everyone on a team together in one environment (artists, designers and coders all use the same Unity Editor). With the new jobs and entity component system, they’re moving into data-oriented design territory, so I believe this phrase just means bringing this new style to everyone (via the Unity engine).

The basic idea, as you touched on with the wikipedia links, is to structure your code/data in a way that is most convenient for the CPU to execute, as opposed to a way that’s most convenient for the programmer and/or UML diagrams ( The Unite Asutin talk you linked covers this in a lot of detail, and it looks like the system they’re building will enable data oriented design with a pretty simple interface… I’m looking forward to giving it a try.

Congratulations to Unity and to you two on your new jobs. And congratulations to us, the users, for getting you guys on board. Exciting news indeed :D

When the new visual scripting tool will come out? I thought that it was planned for 2017 according to GDC.

This will probably take a few years to bear fruit, but how sweet will it be! This is a very good move for the long term health of Unity.

I miss old technical blog posts. Right now all we get is marketing bullshit about how VR is going to change the world. I hope that with these new Unity team members, we will get quality blog posts back. We need more info about engine internals, how things are implemented and how this impact our lives as developers. These things help us improving our code quality and understand how to cooperate with engine.

Good point, we haven’t been doing much of technical blogging recently. There’s quite a few tech details at Unite/GDC/Siggraph Conferences; and the Unity Labs team is doing reports/papers on stuff they are doing over at But we absolutely should have something like a “technical posts” area or a more active section on this blog. Will try to do that!

Yeah, I second that! It’s like all the big news moved to the conference talks recently. I almost missed the big reveal about Unity’s ECS because of that. At least repost that stuff here, so we don’t miss it.

Can you provide an example of what exactly for a user would be improved with data-oriented programming?
Im asking –
What new features may be available? (examples from other engines)
What core functionality can be improved, changed? (does it affect the architecture? performance?)

Im not asking for any concrete statements, just speculate what could be possible, we all understand you are just showing examples of what it can mean, so we have a clearer idea.

Comments are closed.