Principal, Systems Software Engineer - Runtime

at  Untether AI

Toronto, ON, Canada -

Start DateExpiry DateSalaryPosted OnExperienceSkillsTelecommuteSponsor Visa
Immediate31 Jan, 2025Not Specified01 Nov, 20245 year(s) or aboveComputer Engineering,Testing,Performance Analysis,Linux Kernel,Code,Python,Computer Science,Debugging,Programming Languages,Software Design,Interconnects,C++,Bug TrackingNoNo
Add to Wishlist Apply All Jobs
Required Visa Status:
CitizenGC
US CitizenStudent Visa
H1BCPT
OPTH4 Spouse of H1B
GC Green Card
Employment Type:
Full TimePart Time
PermanentIndependent - 1099
Contract – W2C2H Independent
C2H W2Contract – Corp 2 Corp
Contract to Hire – Corp 2 Corp

Description:

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 Senior 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
  • Excellent C programming skills and familiarity with C++
  • Strong experience in software design, debugging, and performance analysis
  • A deep understanding of system level architecture, such as interconnects, memory hierarchy, PCI Express, DMA, and memory-mapped IO
  • Experience with Linux driver or Linux Kernel development
  • Ability to work independently, define project goals and scope, and lead your own development efforts
  • 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 (e.g. using Cython)
  • Relentless focus on software quality and testing
  • Experience architecting low and high level APIs for internal and external users
  • 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
    Don’t meet all the requirements but still feel like you’d be a good fit for the role? We encourage you to apply regardless.

Responsibilities:

Please refer the Job description for details


REQUIREMENT SUMMARY

Min:5.0Max:10.0 year(s)

Computer Software/Engineering

IT Software - System Programming

Software Engineering

Graduate

Computer Science, Engineering

Proficient

1

Toronto, ON, Canada