DEV Community

Dhruvil Karani
Dhruvil Karani

Posted on

Software Engineers have this advantage in Machine Learning over everyone else

Machine Learning is 80% software engineering.

How I distribute my project time

  1. Write efficient queries to get data from multiple sources + data analysis - 30%

  2. Do ML - 10%

  3. Model analysis - 10%

  4. Clean production-grade code + Package the application using Docker - 15%

  5. Create a whole pipeline on Airflow - 15%

  6. Deployment in a service using Golang - 20%

If you are a software engineer, you are probably better than a data scientist in 1,3,4,5 and 6.

Some more good news

Tools like AutoML are automating a large part of step 2. Meaning there are two sustainable competencies people in ML can have

  1. Become really good at reasoning, experiment design and stakeholder management.
  2. Become really good at building infrastructure for ML. If you think that the ML part, which only has 10%, makes it insignificant, you feel the opposite. After all, you are creating software for the ML model.

Wondering what the catch is?

If you think that the ML part, which only has 10%, makes it insignificant, you feel the opposite. After all, you are creating software for the ML model.

Hence, the ML model needs to work damn well. And you have only 10% of the time to do so, which means that you need to have sharp intuition, clear goals and vision on what could work and what won't.

Consequently, it would help if you sharpened your sixth sense by reading books papers and catching up on conferences' latest research.


I am new to DEV. This is my first post.

Hi! I am Dhruvil; a chemical engineer turned ML engineer from India. I work with text and recommendations systems. If you liked what you just read, consider upvoting and sharing it.

Discussion (0)