Skip to main content

Learning and Growing in GPU Software Technology with Chris Kwon

Tell us about yourself and what brought you to Arm.

My name is Chris Kwon, and I’m a principal software engineer on the Arm GPU core-services team in Manchester in the UK.

Since I started my career in embedded programming back in 2006, I’ve focused my career path on taking an even deeper dive into the technologies that interest me.

My first job was on tech for mobile phones, which utilised a chipset built on Arm. I then joined the company that builds those chipsets to learn more about their software. While at that company, I saw Arm as the perfect next step to getting to the origin of mobile computing.

Luckily, I got chance to join the Arm image signal processor (ISP) team in 2016, then moved to the GPU software team in 2019. While the journey has been challenging at times, it has also been a joyful experience to learn new, innovative technologies.

What is your role in the core services team?

A GPU sub-system is a whole independent computing environment within an existing system.

It has its own programming language, a compiler for building binary, an instruction set that the compiler produces, processors to run those instructions, and its own address space created by dedicated MMU.

Our team is responsible for the core device driver software features for implementing this GPU computing environment, including developing a multicontext environment, a scheduling logic for those contexts, memory management, power manager, security features, virtualization, debugging features, tools, and so much more!

Our team covers many different software languages and skills such as Linux application programming, Linux kernel system programming, and script languages for tools and testing environment.

"We work collaboratively across a huge ocean of modern software technology that is filled with knowledge to study, challenges to overcome, and opportunities to accelerate my career."

What's your typical day look like?

Like other software teams, we are an agile team that runs two-week sprints. There is a pool of tickets that are waiting in a Jira backlog and members of the team can choose to learn and contribute different part of the DDK software, which is an arm GPU software toolkit.

We enjoy a combination of working together and socializing in the office and online thanks to the latest communication tools.

I find I never get bored navigating the wealth of well-organized reading materials at Arm that help me understand DDK at a deeper level.

But the best part of Arm culture for me is the autonomy that Arm strongly encourages for each team member.

We don't just work on things already assigned to us, but we actively go and find things that can improve DDK quality, define tasks, and design new software modules.

Arm understands that company growth can only be achieved through the growth of its individuals. Everyone is encouraged to spend time studying new things and improving their skills to do great things and be their brilliant selves.

How has your journey in the Core-services team been so far?

It has been four years since I joined the GPU software core-services team, and I’m still navigating this massive field full of wonders and enjoying learning new things.

It’s a pleasure to as though I’m growing every day with a team, and not just alone. Throughout my career at Arm, as I continue to increase my capabilities and skills, I’ve been given new and exciting opportunities, as well as increased responsibilities.

"There’s nothing better than having a fun job and great people to do it with!"

Find Out More About Life at Arm

Related Jobs

  • Project Management Office Intern Optimize systems, improve efficiency and support continuous improvement initiatives for successful project delivery. Sophia Antipolis, France Engineering Operations
  • Software Engineer Intern Develop high-performance software, collaborate with experienced engineers, receive mentorship, and contribute to open-source projects across various software stack layers. Budapest, Hungary Software Engineering
  • Intern, System IP Engineering Contribute to SystemVerilog RTL verification, debug, and formal bring-up of IP blocks. Collaborate with engineers to meet functional requirements and ensure quality. Budapest, Hungary Hardware Engineering

Get Job Alerts

Can’t find the job you’re seeking? Register to be notified as soon as new jobs become available. Enter your email, select your preferred job category and/or location, then click Add to set your preferences and Subscribe to create your job alert.

Interested InSelect a job category from the list of options. Search for a location and select one from the list of suggestions. Finally, click “Add” to create your job alert.

  • Software Engineering, Manchester, England (City)Remove
  • Software Engineering, United Kingdom (Country)Remove
  • United Kingdom (Country)Remove

By submitting your information, you acknowledge that you have read our privacy policy, and consent to receive email communication from Arm.

Join our Talent Community, Unlock Opportunities

Subscribe to receive Arm communications directly to your inbox. Stay connected to be the first to hear about updates from our community and exciting roles that align with your skills.

Join Now