Job description
Description
NextSilicon is reimagining high-performance computing (HPC & AI). Our accelerated compute solutions leverage intelligent adaptive algorithms to vastly accelerate supercomputers, driving them forward into a new generation. We have developed a novel software-defined hardware architecture that is achieving significant advancements in both the HPC and AI domains.
At NextSilicon, everything we do is guided by three core values:
Professionalism: We strive for exceptional results through professionalism and unwavering dedication to quality and performance.
Unity: Collaboration is key to success. That's why we foster a work environment where every employee can feel valued and heard.
Impact: We're passionate about developing technologies that make a meaningful impact on industries, communities, and individuals worldwide.
We are seeking a highly skilled and experienced Algorithm Python Engineer to join our team. In this role, you will collaborate on developing innovative solutions from concept to implementation and help drive the next major revolution in the computing landscape.
Requirements
B.Sc. or Master’s degree (or equivalent industry experience) in Computer Science, Electrical Engineering, or a related field
5+ years of professional software engineering experience
Solid software development experience, spanning engineering practices and algorithmic thinking
Strong background in graph algorithms and data structures
Familiarity with agile development workflows
Ability to understand and work with hardware concepts such as instruction encoding and data routing
Proficiency in Python with strict typing practices (mypy, linting tools)
Clear and effective written and verbal communication
Able to thrive both independently and within a collaborative team
Responsibilities
Design and implement compiler passes and optimizations across the full compilation pipeline
Improve output quality: resource utilization, communication cost, and execution latency
Debug and fix correctness issues and regressions in a multi-stage compiler
Develop and maintain algorithms such as graph clustering and graph alignment
Write thorough unit and integration tests and maintain CI health
Participate in design reviews and contribute to technical decisions
Is this role relevant for you?