Farewell to Arm
After 15 great years at Arm, I’m making a change.
I have learned how you nurture the tools and software ecosystem, where you compete and where you choose to let others build their businesses. I have worked in a company that aims to “be Switzerland”, and watched the internal dismay and rapid correction the one time we deviated from that.
And today is my last day at Arm.
I will miss the people I worked with and working on the most widely deployed processor architecture in the world.
But I am looking forward to what is next.
When I posted the above to Twitter, I got a bunch of questions. So here are some answers:
Arm has teams in place to carry on some of the work I have done there: creating and testing formal architecture specifications; and formal validation of processors against these formal specifications.
These teams have actually owned this work for several years. That is a commmon pattern in industrial research: if a project is successful, teams grow to strengthen, maintain and extend the project and the people that created it gradually move on to other things.
Over the last three years or so, I have spent about half of my time worrying about what would happen if Arm committed to using formal processor specs to generate everything. This would remove a lot of the redundancy in the specification development process: no second model to compare against, less experience/skill needed to create tests, simulators, documentation, etc. (My “Who guards the guards?” paper and my recent blog posts are part of what came out of that.)
I do know where I will be working next.
The next job will involve formal specification and verification. But, first, I have a nice period of “funemployment” to decompress and catch up before I start.