We are looking for a toolchain software engineer to implement elegant tools to improve the lives of our developer customers and we seek to deliver the ultimate developer experience. You will work with other scientists and engineers to develop software tools to support our hardware.
Duties & Responsibilities
- Building, testing, maintaining software components for our hardware toolchain.
- Design and implement new tools to facilitate faster AI workflows.
- Build and maintain relevant continuous integration frameworks and test suites.
- Running and tuning machine learning (speech) components for production.
- Graduate degree (MS or PhD) in Electrical Engineering, Computer Science or related technical field;
- Strong programming ability -- able to write clean, testable and efficient code;
- Knowledge of data structures, algorithms, problem solving, and complexity analysis;
- Familiarity with programming languages such as C/C++, Python, and open source development tools (e.g. git);
- Familiarity with existing compiler toolchains and compiler construction tools, e.g. GCC, LLVM;
- Familiarity with operating systems- threads and low-level drivers, especially the linux OS;
- Familiarity with CI processes and systems;
- Strong communication and good at working in a team, willing to learn.
- 5+ years’ experience with Object Oriented design and common design patterns.
- Deep understanding and experience with compiler toolchains, compiler design and optimization.
- Experience with driver implementation and design in Linux.
- Polyglot in programming languages and platforms.
- Penchant and fervour for well-built tools and proper software engineering process.
- Ability to produce code that is fault-tolerant, efficient and maintainable.
- Ability and willingness to quickly learn new technologies and apply them.
Job Type: Full-time
Salary: $100,000.00 to $190,000.00 /year