DevJobs

Head of Backend Engineering for Machine Learning

Overview

Autobrains is a leading AI company in the automated driving space, backed by leading strategic and financial investors. Autobrains’ AI technology enables to close the left gaps towards safe and affordable autonomous driving. The company has over 150 employees and is currently in a hyper-growth stage to support its commercial and strategic activities.


Autobrains seeks a highly skilled and experienced Head of Backend Engineering for Machine Learning. The successful candidate will be responsible of two main key activities: 1. Deploying the group’s developed algorithms into the company's primary algorithmic flow. Including conversion, optimization and integration of convolutional neural networks to different chips/hardware. Focusing on the NN runtime reduction and efficiency and accelerating delivery. 2. Automating the group’s training pipeline using robust MLOps infrastructures, to expedite our development cycle.work and SOC architectures for speed, accuracy, and robustness.


Responsibilities
  • Managerial responsibility- Lead, mentor, and manage a team of Senior Backend Software Developers, ensuring alignment and optimal performance.
  • Coding and development responsibility- Hands-on involvement in the development of Python code in our algorithms pipeline, including building and maintaining machine learning frameworks.
  • ML model creation and optimization- Create and optimize neural network training models, encompassing ML Ops.
  • Collaboration with hardware and optimization- Collaborate with machine learning engineers to understand the requirements of the neural network models and the hardware platforms they will run on and provide recommendations for hardware and software optimization
  • Facilitate collaboration between cross-functional teams, ensuring timely execution.
  • Coding standards and best practices- Uphold coding standards, quality, and best practices with a hands-on approach.
  • Continuous learning and implementation- Keep up-to-date with the latest developments in hardware and software for neural network optimization, and implement new techniques as appropriate.



Requirement

  • Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field.
  • Experience: At least 10+ years of software development experience.
  • Experience in managing a tactical team of experienced software developers. at least +5 years.
  • Deep Learning Expertise: Strong understanding of deep learning algorithms and neural network architectures; experience in deploying ML/DL models into production systems or cloud platforms.
  • Optimization Skills: Working with optimizing neural networks for hardware platforms; experience with hardware accelerators; knowledge of fixed-point arithmetic (Advantage).
  • Coding Proficiency: Proficiency in Python (must) and C/CPP (advantage); experience with software tools and libraries such as TensorRT, TensorFlow, PyTorch, and Onnx.
  • Infrastructure Knowledge: Experience in writing software systems for machine learning infrastructure; knowledge of containerization tools like Docker and deployment frameworks like Flask, TensorFlow Serving, or Kubernetes (Advantage).
  • Algorithms and Data Handling: Solid understanding of ML algorithms, model evaluation, and validation techniques; experience with data preprocessing, feature engineering, and data visualization.
  • Parallel Processing Skills: Knowledge of distributed computing, parallel processing, and GPU acceleration.


Attributes

  • Software Development: Strong skills, including experience with engineering principles, design patterns, and best practices. Understanding of modular and scalable software architecture crucial for ML/DL systems.
  • Problem-Solving and Analytical Skills: Ability to identify problems, evaluate alternatives, and implement effective solutions; strong analytical thinking.
  • Adaptability: Openness to learning new techniques, adapting to changing requirements, and embracing new technologies.
  • Attention to Detail: Focus on accuracy and thoroughness in research, data collection, analysis, and presentation of results.
  • Initiative: Proactive in taking on new challenges, seeking opportunities to improve processes, and driving results.
  • Communication and Interpersonal Skills: Excellent abilities to collaborate effectively with software and machine learning engineers, whether working independently or as part of a team.
Autobrains