Software Developer
Job Responsibilities:
- Analyze the performance of neural networks, focusing on GPU and CPU memory usage, hardware utilization, and the latency of neural networks and data transfers.
- Evaluate and compare hardware solutions for neural network inference by conducting comprehensive analyses of device energy consumption, inference latency across devices, and accuracy loss due to optimization techniques.
- Design, implement, and integrate algorithms for efficient neural network inference on edge devices.
- Deploy neural networks to edge computing platforms.
- Collaborate with the machine learning development team to design neural algorithms that meet resource constraints while maintaining high prediction quality and operational planning.
Job Requirements:
- Master’s degree in Computer Science, Engineering, Mathematics, or a related field.
- A minimum of 4 years of relevant experience in the IT sector.
- Proficiency in programming languages such as C/C++ and Python.
- Strong understanding of data structures and software architecture.
- Experience in applying machine learning and optimization algorithms.
- Proficiency in machine learning frameworks like TensorFlow and PyTorch.
- Expertise in CUDA programming.
- Experience with Docker containers and version control systems like Git.
- Familiarity with the general pipeline of autonomous vehicles.
- Strong software engineering skills, critical thinking, and problem-solving abilities.