Principal Software Engineer - Cambridge, United Kingdom - DiverseJobsMatter

    Default job background
    Description

    Job Description

    JOB DESCRIPTION

    Join the LLVM Embedded Compiler Toolchain team in our mission to enable partners and community developers to build efficient, safe, and secure software for the latest devices by timely delivering new cutting-edge Architecture Extensions, outstanding Performance Benchmarking and Optimisation improvements, Open-Source LLVM contributions, linkers and C/C++ Libraries.

    We work closely with our partners to support their future devices across many markets, including Networking, Storage, Automotive, Medical, IoT and other Embedded solutions.

    KEY ACCOUNTABILITIES/RESPONSIBILITIES:

    • Collaborate with your team and colleagues across the company and our Developer ecosystem as we contribute many changes back to the open-source LLVM project
    • Implement new language and our Architecture support
    • Drive all aspects of the feature development lifecycle: design, security vulnerabilities assessment, breakdown, planning, implementation, delivery and communication
    • Improve the interoperability between the compiler toolchains and other tools like debuggers, IDEs, simulation models, performance and embedded libraries
    • Lead Compiler Architecture and Software Architecture aspects

    REQUIRED SKILLS AND EXPERIENCE:

    • Excellent developing large C++ projects leading to maintainable and efficient code
    • Proven experience building compiler, ideally using frameworks like LLVM/Clang, MLIR or optimising compiler code size, memory footprint and build time performance
    • Experience in the full software development lifecycle (developing, testing, delivering, and maintaining production-quality software)
    • Dedicated and flexible, you are technically versatile, and can learn new skills that you can apply across multiple types of work.

    "NICE TO HAVE" SKILLS AND EXPERIENCE :

    • Low-level programming in our company Assembly
    • Familiar with Libc/Libc++ or recent C++14/17/20 language features
    • Scripting experience, ideally including Python development in large frameworks
    • Understanding the purpose and structure of compilers, assemblers, linkers and libraries
    • Presence and experience contributing to Open-Source projects, ideally LLVM
    • Awareness of Secure Development Lifecycle and security vulnerabilities analysis
    • Technical Mentoring of junior colleagues and peers in areas of own knowledge

    IN RETURN:

    We are famous for our team culture - including Friday focus times, regular career conversations, remarkable diversity, equity and inclusion, and continuous improvement mentality.