Skip to content
← All opportunities

Software Engineer

JobRemoteOnline
Applications closedVerify on Qualcomm →

The source listing appears to be closed. Open the company's listing to confirm — the source may still be accepting entries.

Sign in to save
Applications closed: 21/08/2026

Skills for this role

Skills we detected for this role.

  • Python
  • Bash / Shell
  • Git
  • Embedded Systems

Opportunity brief

Qualcomm is hiring for the role of Software Engineer!

Responsibilities of the Candidate:

  • Programming Fundamentals
  • Operating Systems & Embedded Systems
  • Computer Architecture & Low-Level Programming
  • Development Tools & Engineering Practices
  • Problem Solving & Communication
  • ARM Architecture & Platform Fundamentals
  • Virtualization & Hypervisor Technologies
  • RTOS & System Software
  • Debugging & System Analysis
  • Engineering & Design Skills

Requirements:

  • Bachelor's degree in Engineering, Information Systems, Computer Science, or related field.
  • Strong programming skills in C, including memory management, pointers, structures, and low-level programming concepts.
  • Solid understanding of data structures and algorithms, including linked lists, queues, stacks, trees, and their practical applications.
  • Basic scripting skills in Python and Shell scripting for automation and debugging.
  • Understanding of secure coding practices, coding standards, and software quality principles.
  • Strong understanding of Operating Systems fundamentals, including processes, threads, synchronization, interrupts, memory management, and scheduling.
  • Basic understanding of embedded systems development and low-level software interactions with hardware.
  • Good understanding of Computer Architecture and Microprocessor Fundamentals, preferably ARM-based architectures.
  • Ability to work with hexadecimal representations, bit manipulation, binary arithmetic, and Boolean logic.
  • Familiarity with Git version control and collaborative development practices.
  • Strong analytical, problem-solving, and communication skills.

Good to Have Skills:

  • Knowledge of ARM Architecture (ARMv8/ARMv9), including exception levels, MMU, interrupts, and memory protection mechanisms.
  • Understanding of ARM system components such as GIC, SMMU, PSCI, SCMI, and TrustZone.
  • Familiarity with ARM Assembly Language and low-level debugging techniques.
  • Exposure to memory management, MMU configuration, interrupt controllers (GIC), and system-level debugging.
  • Understanding of boot flows, including Bootloader, Trusted Firmware, Hypervisor, and Operating System interactions.
  • Understanding of hypervisor and virtualization concepts, including virtual machines, device virtualization, memory virtualization, and privilege separation.
  • Exposure to Gunyah, KVM, Xen, pKVM, or other virtualization technologies.
  • Understanding of virtualization security concepts and trusted execution environments.
  • Knowledge of RTOS-based development and real-time system concepts.
  • Understanding of embedded system software architecture and software-hardware interactions.
  • Experience using debuggers such as GDB, Lauterbach Trace32 (T32), or equivalent tools for system-level debugging.
  • Experience reading and understanding hardware specifications, Technical Reference Manuals (TRMs), and datasheets.
  • Ability to analyze requirements, understand system design documents, and contribute to software design discussions.

More like this

Related opportunities