I'm advocating for my organization to explore moving to Graviton/ARM processors due to potential cost savings. I have a list of considerations for migrating CPU architecture, like enterprise software compatibility, performance, and libraries. However, I'm particularly concerned about local developer environments since I believe most of our developers are using x86-64 Windows machines. How have other organizations managed this issue? A lot of development and debugging happens locally, and I'm curious about the best practices out there.
3 Answers
Switching from Windows to Linux can be challenging. I mainly use .NET, which makes portability easy since we don't rely on hardware-specific code. Starting with a small demo on Linux might help ease the transition. I find Docker works well for local debugging, so my main concern is that transition rather than the x86 to ARM switch.
We kept our developers on x86 but set up ARM CI pipelines along with affordable ARM dev VMs and lightweight emulation. This way, teams can catch issues faster without everyone needing to switch hardware right away.
We handle local debugging on x64 and then deploy on ARM without any major issues. Everything runs smoothly since most of our code is managed.

There's a large variety of apps we use like Node, PHP, and .NET Core, which can generally run on Linux without issues. Most apps are quite adaptable!