Engineering Levels
I came across this linkedin post and it gave me some clarity on what to expect on each levels as an engineer in product companies:
π SDE 1 (0β3 years of work exp)
Expectations: DSA, Algorithms, Basic coding skills.
π SDE 2 (2β6 years of work exp)
Expectations: Machine coding/Low level design, High level design, Technical depth on at least one tech stack, business context.
π SDE 3 (5β10 years of work exp)
Expectations: Domain level expertise, software architectures, In depth knowledge on SDLC, scaling, security, good coding practices, soft skills, leadership, understanding the bigger picture of where and how the code is used exactly.
π SDE 4 (8β15 years of work exp)
Expectations: Subject matter expert of everything mentioned above.
π Chief/Distinguished Software Engineer (12+ years of work exp)
Expectations: Extensive working knowledge of a tech stack. Can create new and complex flows, architectures, frameworks and contribute to the progress of software engineering as a whole.
Credits: https://www.linkedin.com/in/aditya-vivek-thota/
Based on the above post i would like to reframe for a machine learning engineer, everything above holds true, except you should be able to gain in depth expertise in one area says Computer Vision, NLP, RL or Recommender Systems with a tech stack covering all layers to build a ML application.
ML application area: Computer Vision, Search and Recommender Systems
Primary Language: Python
Unit testing: Pytest, Junit
OOP Language: Java, Python
Data Engineering: Scala
Hardware/Embedding Language: C++
Deep Learning Framework: Pytorch
Machine Learning: Numpy, Pandas, Scikit-Learn, NLTK, opencv
Big Data: Hive, Kafka, Oozie, HDFS, pyspark
Visualization: Grafana, Tableau
HPC: CUDA, GPU, CUDADNN
Databases: SQL, InfluxDB
CI/CD & Cloud : Docker, AWS, GCP