***Please note: While our engineering HQ is in Toronto, this is a remote opportunity and we welcome applicants from anywhere in North America.***
Untether AI is looking for a highly motivated and creative Staff or Principal Systems Software engineer to join our Runtime team. You will evangelize, architect, and implement key aspects of our production kernel and user-mode drivers, their APIs, and the corresponding toolchain. You will craft elegant solutions to exciting problems and form the future direction of our system software, and how our accelerator will be used by our users. You will design, develop and verify software that interacts with our chip; collaborating with hardware engineers and fellow software engineers in the process.
You are able to identify functional/performance bottlenecks and alleviate them in order to achieve scalable and reliable software. You should demonstrate the ability to excel in an environment with complex software and hardware designs.
Requirements
- Degree in Computer Science, Computer Engineering or a related discipline
- Minimum 5 years of software engineering or related work experience
- Proven experience in software design, debugging, and performance analysis
- Deep understanding of system level architecture including a variety of components and interconnects such as memory hierarchies, PCI Express, DMA, CXL, RDMA and networking
- Familiarity with a variety of CPU architectures including x86, ARM and RISC-V
- Experience with Linux driver or Linux Kernel development
- Experience in interfacing with and development of device specific firmware.
- Excellent C and C++ programming skills.
- Ability to detect, diagnose and resolve performance issues.
- Ability to work independently, define project goals and scope, and provide technical leadership to teams spanning both hardware and software development.
- Experience contributing to a reasonably large open/closed source project - use of source-control (e.g. git), bug tracking, branching and merging code
Preferred Skills & Experience
- Masters or PhD in Computer Science, Computer Engineering or a related discipline
- Experience with Python and using C/C++ libraries from Python
- Relentless focus on software quality and testing
- Experience architecting software APIs for internal and external users
- Experience in security conscious software development including use of methods to ensure confidentiality, integrity and authenticity.
- Proficient in a variety of development styles and programming languages
- Able to build projects from the ground up
- Comfortable working within a rapidly evolving project
- Driven and self-directed
About Untether AI:
Untether AI is developing a groundbreaking new architecture that will bring neural net inference to new levels of performance and efficiency. Founded in Toronto in 2018 by a team of scientists and entrepreneurs, Untether AI’s ultra-efficient, high performance AI chips will eliminate the data movement bottleneck that costs energy and performance in traditional architectures. With the support of tier one investors, we are challenging the status quo with an architecture that is fundamentally unique.
Working with us means getting the opportunity to be a part of something big - a chance to create the future of AI.Apply for this job