At Cadence, we hire and develop leaders and innovators who want to make an impact on the world of technology.
Cadence Design Systems Inc. is looking for a motivated Lead Software Engineer: AI Compiler Engineer to work with us in Belo Horizonte, Brazil.
As an Lead Software Engineer: AI Compiler Engineer you will work with the IP/SSD Team used with complex high performance SoC's, and is one of the best kept secrets within the semi IP world powering AR/VR, HiFi Audio and Speech, Vision, Imaging and hundreds of intelligent IoT applications.
Be a part of a team that develops an AI graph compiler that takes as input Neural Networks (NNs) created in frameworks such as PyTorch or TensorFlow and converts them into optimized code suitable for execution on special-purpose and embedded platforms.
Want more jobs like this?
Get Software Engineering jobs in Belo Horizonte, Brazil delivered to your inbox every week.
You will work with next generation processor embedded core that will meet the edge computing demands of AI applications. Come be part of the next explosion of embedded devices building a key part of our processor generating platform for CPU's and DSP's.
Cadence has been nominated as a Great Place to Work globally and in Brazil and is also a Fortune 100 Best Companies to Work For.
Job Description:
- Developing a deep learning compiler stack that takes neural network descriptions (CNNs/RNNs) created in frameworks such as Caffe, PyTorch, TensorFlow, etc. and converts them into code suitable for execution on special-purpose and embedded platforms.
- Use modern compiler frameworks such as LLVM and MLIR.
- Developing optimized implementations of a variety of neural-network operations and integrating them into a runtime framework
- Developing new optimization techniques and algorithms to efficiently map CNNs onto a wide range of Xtensa processors and specialized hardware.
- Benchmarking end-to-end network performance on a variety of DSP and special-purpose accelerator platforms.
- Enhancing the framework to improve overall functionality and performance on the various hardware platforms.
- Devising multiprocessor/multicore partitioning and scheduling strategies.
- Developing complex programs to validate the functionality and performance of the CNN application programming kit.
- Working with hardware designers to identify opportunities for additional hardware acceleration of neural network functions.
- Working with industry-leading partners and customers to design and standardize neural network APIs..
Requirements:
- Complete Bachelor in Computer Science or Computer Engineering or equivalent experience.
- A high level of C and C++ programming expertise with 3-5+ years of experience is required.
- Expertise in software development on Linux and Windows systems including, test, debug and release is required.
- Knowledge of and experience with a state-of-the-art compiler stack such as LLVM and MLIR.
- Experience implementing compilation techniques such loop optimization, polyhedral models, and IR construction/transition/lowering techniques.
Nice to have:
- Master or PhD.
- 3+ years of experience working on a production compiler is highly desired.
- Python experience highly desired
- Prior work with CNNs and familiarity with deep learning frameworks (TensorFlow, Caffe/2, etc.) is a strong plus
- Experience programming and optimizing for embedded platforms such as DSPs with DMA engines highly desired
- Familiarity with the state-of-the-art deep learning compilation approaches (Glow, TVM, XLA, etc.) is a plus
- Familiarity with various deep learning networks and their applications (Classification/Segmentation/Object Detection/RNNs) is a plus
- Knowledge of neural net exchange formats (ONNX, NNEF) is a plus
Additional Job Details:
- Employment category: CLT
- Employment term: 40 hours/week.
- Hybrid work.
- Competitive benefits.
- Location: Av Contorno 5800, Belo Horizonte, Minas Gerais Brazil.
Cadence is the only company that provides the expertise and tools, IP, and hardware required for the entire electronics design chain, from chip design to chip packaging to boards and to systems. We enable electronic systems and semiconductor companies to create innovative products that transform the way people live, work, and play. Our products are used in mobile, consumer, cloud datacenter, automotive, aerospace, IoT, industrial and other market segments.
For more information, access http://www.cadence.com
We're doing work that matters. Help us solve what others can't.