Santiago Profile picture
3 Dec, 14 tweets, 2 min read
Transitioning from Software Engineering to Machine Learning.

🧵👇
I'll tell you my story.

It might work for you. It might not.

Hopefully, it gives you another perspective. Hopefully, it helps.

(2 / 14)
Many people see "Software Engineering" and "Machine Learning Engineering" as two completely different specialization areas.

There are many differences, for sure.

But I personally like to think about them as a single, fluid, all-encompassing position.

(3 / 14)
Regardless of title, the ultimate measure of success is your ability to produce good software.

Your skills will always be centered around something specific, but in the end, the only thing that matters is working software.

(4 / 14)
I like to look at "building software" as a spectrum instead of many individual silos.

Your responsibilities at Company A might look very different than your responsibilities at Company B (under the same title.)

(5 / 14)
A Web Designer at Company A may be responsible for providing designs to a Front-End Developer.

At Company B, the same Web Designer may be responsible for the designs, HTML, and CSS, while the Front-End Developer may focus on the JavaScript code.

(6 / 14)
Many Machine Learning professionals don't come from a Software Engineering background.

They are laser-focused on creating models. Their work starts with data and ends with a good performant model.

Someone else cares about productizing those models.

(7 / 14)
This has helped enforce the notion of "silos."

▫️ "You are a Software Engineer. Therefore you do A, and B, and C."

▫️ "And you are a Machine Learning Engineer, so you focus on D and E."

(8 / 14)
Personally, I had years building software before starting with Machine Learning.

As I started down that path, I incorporated more and more of the new skills in the different projects I was involved in.

Slowly. Step by step.

(9 / 14)
We were building a dashboard to show some metrics to executives of a company.

I was able to forecast future trends based on past data.

That was one of my first "crossover" assignments: software development work + machine learning.

(10 / 14)
I didn't get promoted. I didn't switch roles.

I was the same developer, but now with an extra set of skills.

Step by step, I started applying what I was learning to my current job.

(11 / 14)
Over time, I started tackling harder problems. The shape of the work that hit my plate morphed.

Nothing happened overnight. This "transition" has been taking place for years.

(But it's not a "transition," really. It's more of an "expansion.")

(12 / 14)
I understand that I've been fortunate: not everyone has the chance to "expand" their workload.

Unfortunately, many people need to switch roles (even companies) to focus on machine learning problems.

(13 / 14)
So there you have it.

I'm usually hesitant to call myself a "Software Engineer" or a "Machine Learning Engineer."

I like to see my role from a different perspective.

I build software. That's what I'm good at.

(14 / 14)

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Santiago

Santiago Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @svpino

2 Dec
The HTML + CSS Twitter conspiracy.

A tread 🧵👇
A lot of people out there recommend starting with HTML and CSS to aspiring developers.

They suggest this combination is a stepping stone for you to reach your goals.

That's nonsense.

(2 / 9)
There's absolutely nothing wrong with HTML and CSS.

But they aren't necessarily the foundation that you need when starting out.

Yes, they are simple to learn compared to a fully-fledged programming language, but they are also very different.

(3 / 9)
Read 9 tweets
1 Dec
Django versus Flask versus FastAPI.

🐍 🧵👇
Django

▫️ Rapid development
▫️ A lot of out-of-the-box functionality
▫️ Easy for building complex, full web applications
▫️ MVC design paradigm
▫️ Robust security features
▫️ Extensible (a lot of components out there)
▫️ Large community

👇
Flask

▫️ Very light
▫️ Doesn’t make decisions for you
▫️ Doesn’t bring anything that you don’t need
▫️ Modular, so it’s easy to extend
▫️ You can plug in your favorite ORM
▫️ Great documentation
▫️ Very easy to start with
▫️ Large community

👇
Read 5 tweets
30 Nov
Here is every course that I've taken over the last 5 years to work full-time in Machine Learning applications:

🧵👇
(I took the following four classes while going through my Masters at Georgia Tech):

- Machine Learning
- Reinforcement Learning
- Reinforcement Learning for Trading
- Computer Vision

👇
(The following three courses are available through Coursera, and I recommend them for anyone trying to start):

- Machine Learning
- Deep Learning Specialization
- TensorFlow In Practice Specialization

👇
Read 5 tweets
25 Nov
Working on problems is the best way to learn Machine Learning.

Here are 10 projects to start your journey.

🧵👇
I picked all 10 projects from Kaggle.

When you are getting started, having a community ready to help is very important.

Also, every one of these problems has been solved by many people, and you can find those answers if you get stuck!

👇
I sorted the problems in the way I'd recommend you to start.

They more or less increase in complexity as you move through the list.

Let's get started!

👇
Read 14 tweets
24 Nov
Machine Learning doesn't need to be overwhelming.

Here is a strategy that you can use to get started without too many distractions.

🧵👇
If you start today, you'll probably feel overwhelmed by how much —apparently— you need to understand.

But it doesn't need to be like that.

You can take a much more practical approach to learn what you need and start providing value right away.

👇
Instead of starting "from the beginning," you can hack your way "from within."

The idea is simple:

1. Pick a simple problem —or an area— that's interesting to you.

2. Take the necessary steps to learn how to solve that problem.

3. Keep adding complexity as you see fit.

👇
Read 11 tweets
22 Nov
10 questions that spark conversations, make you think, and give you a solid foundation of practical Machine Learning.

🧵👇
(Some) interviews are broken.

They focus on trivia and expect candidates to recall concepts that aren't even relevant for the job.

This is garbage.

Instead, focus on problems that scientists and engineers face every day while doing their jobs: 👇
Acme Inc. is building a model to classify images in several different categories.

Unfortunately, they don't have a lot of images for some of the classes.

How would you handle such an imbalanced dataset?

(1 of 10)
Read 13 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!