Senior Software Engineer – Machine Learning

Apply Now

Will be responsible for translating business and functional requirements into concrete deliverables with the design, development, testing, and deployment of highly scalable distributed services.

Will also partner with scientists and other engineers to help invent, implement, and connect sophisticated machine learning and deep learning algorithms for digital platform.

Should also be very agile in developing flexible software with respect to scientific, experimentation methods and usage patterns.

Responsibilities and Duties

  • Act as the Senior Machine Learning Engineer in Technology Team.
  • Coordinate with external & internal partners as required to understand business requirements, plan and implement tasks required for the development of machine learning and deep learning sub-systems and products.
  • Designing, developing and maintaining core system features, services and engines.
  • Helping define product features, drive the system architecture, and spearhead the best practices that enable a quality product.
  • Working with scientists and other engineers to investigate design approaches, prototype new technology, and evaluate technical feasibility.
  • Operating in an Agile/Scrum environment to deliver high quality software against aggressive schedules.
  • Guide junior members of the team and assist them with design, development, test and implementation.
  • Assist with implementation of MLOps and related practices to continually retrain and test assigned sub-systems and products.
  • Own the overall assigned features and products.

Qualifications and Skills

  • 5+ years’ experience with programming languages such as C/C++, Java, Perl or Python and open-source technologies (Apache, Hadoop).
  • 5+ years’ experience with OO design and common design pattern.
  • 5+ years’ experience with data structures, algorithm design, problem solving, and complexity analysis.
  • 3+ years’ experience developing cloud software services and an understanding of design for scalability, performance and reliability.
  • Experience defining system architectures and exploring technical feasibility trade-offs.
  • Experience optimizing for short term execution while planning for long term technical capabilities.
  • Ability to prototype and evaluate applications and interaction methodologies.
  • Ability to produce code that is fault-tolerant, efficient, and maintainable.
  • Academic and/or industry experience with standard AI and ML techniques, NLU and scientific thinking.
  • Experience working effectively with science, data processing, and software engineering teams.
  • Ability and willingness to multi-task and learn new technologies quickly.
  • Written and verbal technical communication skills with an ability to present complex technical information in a clear and concise manner to a variety of audiences.
  • Excellent skills in machine learning engineering with Python: PyTorch, TensorFlow, Caffe, Pandas, SciPy, OpenCV, Scikit-Learn.
  • Experience in : Predictive modelling, Recommendation systems, Translation engine, Conversational AI.
  • Database: RDBMS DB like MariaDB / MySQL, Postgres, SQL and NoSQL DB like Elastic Search, MongoDB, Cassandra etc.
  • Container Technologies: Kubernetes, Docker.
  • System Admin: BASH, Git.
  • Preferred engineering experiences: MLOps, MATLAB and Java.
  • Cloud platform experience: Azure and AWS.