Arm Developer Careers + OpenSource

Hi All,

What opportunities are there for ARM developers out there? What kinds of roles are in demand?
I’ll ask to exclude ARM microcontrollers, and focus on server/desktop/laptop type systems.

Is there a strong need for Linux kernel developers? Security Patching? Porting software from x86?

Part of the reason I ask is because I have some snapdragon based ARM gear (Lenovo x13s + C630) and I’m wondering what kinds of open source projects I could help contribute to. I’m not sure what kind of need is even out there.

Secondly I’m curious about pivoting my career into low level programming. I feel like with the coming wave of ARM and Risc-V machines over the next few years there could be some interesting opportunities.

If you work on ARM systems now, what is your day-to-day like, and what is your title? Where do you see the need for your role going in the next few years?

Thanks All!

1 Like

Okay big topic :slight_smile:
@dneary would know more about kernel dev and patching but as far as porting there’s plenty to go at. Anything not on this list would be fair game: Workloads. Virtualisation, cloud components and tooling, databases would all be in demand.

Business opportunities for porting x86 code to Ampere and Graviton are growing too. Tooling like GitHub - AmpereComputing/ampere-porting-advisor will help. GutHub has Ampere based runners. Adding AArch64 to your GitHub CI with GitHub Actions and Ampere® Altra® too.

For local development there are Ampere systems from ADLINK and ASRock Rack. The 8cx in your Lenovo has a fairly similar Arm ISA - v8.4 AFAIK. You can get hold of 4 core development instances on Oracle Cloud for free too. Cloud Free Tier | Oracle

Day to day I’m talking to potential customers in Europe who are moving over to Arm, generally for cloud deployments.
image

Thanks @vikingforties!
Its definitely is a wide topic but I wanted to leave it open to things I hadn’t considered.

The free tier of Oracle cloud is a great idea, I may pickup an Ampere Altra Dev Kit - that is a dream machine. I would like to be able to use it to it’s fullest so if I can work on opensource projects or contract type work helping folks move to ARM. That would be tops.
I will check out the porting advisors and Github actions tools. That’s super cool.

If you’re able to share, what is the driving force behind your customers move to ARM? Lower cost to run?

How low level do you really need to go? Are doing a lot to optimize for ARM or more troubleshooting ARM specific errors or library conflicts? Just to get an idea of the scope of your work or languages you specialize in.

Sorry for so many questions, I appreciate your advice especially you already working at this day-to-day. :slight_smile:

1 Like

Driving forces tend to be:

  • TCO - electricity consumption over the life of a server is the major cost regardless of how efficiently you can cool it. Cloud companies can then pass that onto their customers as a competitive edge through lower monthly bills.

  • Better density - With x86 CPUs up at 300 and 400W, DC racks can’t be filled any more because they can’t supply the power and cooling. This leads to floorspace being taken up with half filled racks. Servers that require lower power and only need 1 socket per server for IO bandwidth can fill those racks back up. Better revenue per unit area for a DC.

  • High core count - High parallelism is much better for container workloads which have better resilience spreading micro service workloads across many cores.

Personally I rarely go low level. Ampere has teams who optimise to get the best performance out of software used by customers. Some of our customers have these teams too where they need to get the best out of the silicon. Troubleshooting tends to be mainly in the area of drivers for peripherals that have predominantly been developed in x86 environments.

Those advantages are very significant. Heat and power are the battle every datacenter faces, I’m getting flashbacks of my start in IT working racking and stacking servers in a small DC. :slight_smile:

I can see that driver level being the most common hurdle. Even from my testing on different ARM laptops that’s a frequent hurdle.

It sounds like you have a very fun & interesting job @vikingforties, thanks for sharing that!

1 Like