Senior Software Engineer
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+1 more
Job description
ROLE: Senior Software Engineer - AI & Hardware OptimisationLOCATION: Barcelona, SpainSALARY: NegotiableDURATION: PermanentAn exciting opportunity for an experienced Senior Software Engineer to develop and optimise the software stack supporting advanced AI hardware platforms.You will work across low-level kernel optimisation, parallel processing, workload analysis, profiling, and framework support, collaborating closely with hardware and AI engineering teams.Responsibilities:Develop and optimise software for highly parallel AI and compute workloads.Work on low-level kernel optimisation, inter-device coordination, and data processing.Profile and analyse software performance to identify optimisation opportunities.Contribute to software frameworks, emulation, distribution, and packaging.Develop software optimisations based on underlying hardware architecture.Collaborate closely with hardware and AI teams to influence both software and hardware development.Support the development of efficient and scalable AI software solutions.Requirements:8+ years of experience in software development, optimisation, or a related field.Strong C/C++ and Python programming skills.Solid Linux experience.Experience with software profiling, workload analysis, and parallel programming.Strong understanding of performance optimisation and problem-solving.Bachelor’s, Master’s, or PhD in Computer Science, Engineering, or a related discipline.C1-level English.Desirable Experience:C/C++ and Python interoperability.RISC-V / RISC-V Vector assembly.Architecture-based optimisation.CUDA/ROCm.Bare-metal programming.LLVM/GCC.AI application development.ONNX Runtime.Experience working with hardware/software co-design environments.
Requirements
You will work across low-level kernel optimisation, parallel processing, workload analysis, profiling, and framework support, collaborating closely with hardware and AI engineering teams.Responsibilities:Develop and optimise software for highly parallel AI and compute workloads.Work on low-level kernel optimisation, inter-device coordination, and data processing.Profile and analyse software performance to identify optimisation opportunities.Contribute to software frameworks, emulation, distribution, and packaging.Develop software optimisations based on underlying hardware architecture.Collaborate closely with hardware and AI teams to influence both software and hardware development.Support the development of efficient and scalable AI software solutions.Requirements:8+ years of experience in software development, optimisation, or a related field.Strong C/C++ and Python programming skills.Solid Linux experience.Experience with software profiling, workload analysis, and parallel programming.Strong understanding of performance optimisation and problem-solving.Bachelor’s, Master’s, or PhD in Computer Science, Engineering, or a related discipline.C1-level English.Desirable Experience:C/C++ and Python interoperability.RISC-V / RISC-V Vector assembly.Architecture-based optimisation.CUDA/ROCm.Bare-metal programming.LLVM/GCC.AI application development.ONNX Runtime.Experience working with hardware/software co-design environments.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Talks and stories from around this role — technically off-topic, practically not.
Moments
Explore playlistsVideos
See allRelated articles
See all
Dev Digest 120 - Apple and peers
The 12 Best Jobs for Software Engineers
Best Countries for Software Engineers
How software is steering vehicle technology