Are you doing online courses in the hopes of learning to code -> getting a job in ML?

I am not here to tell my story.

I am here to tell that you and everyone are free to choose in what you say to yourself and action on it:
It’s so hard for me to achieve X because life is so unfair or my conditions are so unlucky.

Or

I am relentless in what I am doing. Unfavorable conditions are my advantages.

The energy you spend doing either is the same.

7 Likes

Radek, thank you for raising a topic that I think about daily. I’ll start by saying that I have a PhD and domain expertise that intersects well with ML. However, my PhD is not in computer science or math or physics.

I consume a heavy daily diet of data science & machine learning, but my own goals with this aren’t clear even to myself. I already have a career and these skills are very useful in my current work, so that’s great. But, realistically speaking, I can’t imagine that I would ever be hired by a tech company in this field. I’m too “female”, too “old”, too “non-CS/physics”, too “parent of young child”, etc. All research and most personal anecdotes “from the field” indicate that those highly important “personal connections” you mention are especially out of reach for me. So, I truly need not apply. I’ll pretty much never be the desired demographic, no matter how impressively skilled or credentialed I become.

I still spend time learning and working on projects in data science/ML because I enjoy the intellectual challenge and what I can produce. There is an amazing learning and open source community around this, which I appreciate and enjoy.

I also believe that data science/ML is going to become sufficiently automated that domain experts will utilize it in their work with much greater ease and a much gentler learning curve. (Tableau with NLP, anyone?) Can you imagine software engineers not knowing about the internet? There was a time when that was also new, shiny, and esoteric. I think these are such early days that it seems like a viable stand-alone career, but might turn out to be like “webmaster” or “freelance builder of animated gifs” in the early days of the internet. I’m sure there will always be a place for well-pedigreed AI researchers from top CS programs at top tech companies. I just don’t think the majority of the world will have widespread need for the skillset of building everything “from scratch” since very little in the tech world has played out that way. That said, learning to build from scratch is a great way to make sure that you understand all the underlying steps.

As others have suggested, I think an integrated pathway that blends ML with other expertise may be more accessible for those of who are self-learning or “non-traditional” and might also be more sustainable in the long run. We can all grow with this field as it develops.

I think fast.ai is the #1 resource and community to prepare for wherever your AI aspirations lead.

6 Likes

I’m really sorry to hear that-even though I do recognise the stereotype in the industry.

Luckily, I currently work at one where this is not the case at all-please feel free to reach out anytime-we are expanding our team :slight_smile:

2 Likes

Hi much_learner,

I’m trying to get started on my first kaggle. Would you be willing to mentor me some? I am a strong software developer, and happy to add value where ever you need it.

I can see how doing things that might seem impossible to us or that we fear might be valuable.

At the same time I also believe that going against the market or doing things in an unnecessarily painful or roundabout way is quite silly. Especially if one is responsible for more than only their own survival (for instance, has a family to support).

The tens of thousands, maybe hundredths of thousands of people on youtube who want to pursue a career as a singer, the young kids in Argentina who want to be the next Messi. What are the odds of that? Why subject yourself to situations where odds are not in your favor especially when market pull is so amazing to experience?

I feel there must be more nuance to how we guide our efforts.

Initially I tried to become good at doing ML by recreating the academic curriculum and pursing it on my own. I don’t think what would happen if I were more relentless in my pursuits, if I stayed the course for more than the 1 or 2 years I invested into it. Probably not a whole lot apart from burning out and becoming bitter.

I sometimes hear people claim they achieved this or that because of hustling, long hours, not sleeping enough. Based on everything I know, this is survivor bias speaking, or in other words attributing ones success to characteristics that make them feel good about themselves rather than being honest.

There is no glory in seizing an opportunity when it arises, taking advantage of favorable conditions to do something, playing to one’s strengths or being lucky. It is much better to claim that “I achieved success because I threw myself in the fire and came out victorious, I own it all to me, you can be just like me if you hustle enough”. But I feel the first set of conditions is what most of the success out there can be attributed to and the hustle part is completely unnecessary, is probably harmful.

I just would be very cautious in emphasizing talking oneself into adamantly pushing in any one direction. I have never needed to do so while I can easily trace how a lot of privilege, lots of luck and doing things in a very effective way (something I learned nearly exclusively through fast.ai courses) played immensely into me becoming employable in ML. And pursuing something I genuinely cared about.

To me, all this still remains an open question to a large extent, really appreciate having a chance to listen to your thoughts and learn from your life stories :pray: :slight_smile:

7 Likes

This seems off topic to the discussion we are having. Would appreciate if you could please discuss this somewhere else, a PM or another forum thread would seem more appropriate.

Thank you for your understanding!

I keep finding a better way once I start moving towards something. Without actions my theory about how this works or how to better achieve this proved useless.

There’s no achievement or self growth in being lucky.

1 Like

Dear @Ekami

I am seriously considering upwork after your suggestion. Thank you for sharing your experience with us :pray: Especially when it seems, freelancing comes with almost no problems that I mentioned in my previous rant.

And that led me to check your work history in upwork and @jamesrequa upwork profile. Hats off to both of you :cowboy_hat_face: You’ve made a truly impressive profile out there. Especially to note that James has no programming experience before switching to DL self-learning in Udacity and Fastai. Very inspiring!

Perhaps searching for a DL job is not the way to go. It seems freelancing works better, and I think it is indeed the future. Win-win for both parties. Less expenses and more agility/flexibility for the corporate side and better pay for the freelancer. Of course I can see the drawbacks too (mainly the instability of the income while job is a more secure option). But providing all the issues mentioned in this excellent thread (thanks @radek :heart:), maybe this is something we should at least try, after all.

I am genuinely interested in your experience in the freelance world and appreciate, if you or @jamesrequa or anybody who tried freelancing platforms before to share the experience in the freelancing “non-slavery” :slight_smile: approach to work for a living in DL:

  1. Do you consider your freelancing job income stable enough to make it as a primary source of income for a living?

  2. Did you use fastai or even pytorch in your freelancing project?

  3. When you create a proposal for an upwork client, do you specify the framework type whether it is Pytorch/fastai or Tensorflow?

  4. Upwork and other freelancing platforms are highly competitive. What are the main points that you should emphasize on in your proposal to win the contract?

  5. What are the pros and especially what are the cons of freelancing in upwork or other platforms in general?

  6. Any advice for your siblings in the fastai family, on how to begin and what to avoid or any take away from your past experience in freelancing?

I can see from your upwork profile that you are an Android developer. I have quite a bit of Android dev experience too in the last couple of years (so far 11 apps, 250K downloads, 4.8⋆ and ~3K reviews, which is not quite impressive for freelancing, but planning for a better future moonshot project). So this is something that I have considered seriously as my primary job search after discovering all the issues with ML jobs.

  1. Why you have not considered to emphasize on Android app development too, beside your DL portfolios in upwork? Two professions should be better in upwork jobs hunting, no?

  2. If you had to choose either Android dev or DL and not both, why you had preferred DL over Android dev.? If you would had to take the ordinary job route, would be your choice different?

  3. Did you ever try to take a project for mobile DL model deployment? Since this would be a prefect match to your expertise as Android + DL which I think, not many freelancers possess, and you could charge even more for niche applications like this…

Thanks again for the heads up. Hopefully your post will inspire many to pursue a better way to approach DL jobs :slight_smile:

5 Likes

@hwasiti

I’ve already asked all of these questions and a few more to Tuatini on my interview here:

8 Likes

Great thread. I don’t know anything about getting hired into a company but I do know a few things about freelancing.

I switched from iOS development to ML about 4-5 years ago (when I was 38-39) and currently am making a good living doing ML consulting work (remotely).

I think there are a few ways you can do freelancing:

  1. Build a reputation for yourself on sites such as Upwork. I’m not a fan of these sites, but they offer a reasonably easy way to get some experience if you’ve never freelanced before.
  2. Build a reputation for yourself on your own website.
  3. Get gigs through people you know. Hard to do when you’re just starting out, but will become easier over time as you get to know more people in the field.

When I started in ML, I picked a niche: ML on mobile. This was not something a lot of people realized was possible at the time, but it seemed inevitable to me. So I got in early and was able to establish myself as “expert on iOS machine learning”.

I invested a lot of time into building that reputation, by writing an in-depth blog, several books, publishing open source, etc. It’s something that requires maintenance as well — whenever a new efficient model architecture comes out, I need to study it in order to be able to provide my clients with up-to-date information. (This is why they hire me: so they don’t have to do this themselves.)

I’m sure this is also why Jeremy encourages people to write blog posts. But I’d say you need to take it to the extreme: focus on a particular topic (such as recommender systems) and write exceptionally good blog posts about them. Make your blog so good that it becomes the go-to reference for this topic, and clients will come to you.

Show people that you know what you’re talking about, so they’ll hire you to solve their problems.

(Of course, the key is finding a good topic. The more niche the topic is, the easier it is to establish yourself as an expert in it. But of course, if it’s too niche, there won’t be enough clients.)

I believe the same thing is true for getting hired as an employee: you can go on interviews and hope to convince the company to hire you. Or you can first establish yourself as an expert, make the company reach out to you (rather than the other way around), and do the interview on your own terms (for example, it allows you to insist on working remotely). It puts you in a much better position to negotiate if they’re the ones who need you, rather than the other way around.

I’m sure that “become recognized as an expert” sounds daunting, especially if you’re just starting out. But rather than just doing one MOOC after another, do them with a purpose: Take the things that you learned in the MOOC, dive deeper into them, and then write about it. This will 1) make you learn things much more in-depth than other people, 2) improve your skills in explaining stuff (essential when doing consulting), and 3) work towards building up a “portfolio” that demonstrates your skills.

Example: I just spent several days figuring out why bilinear interpolation works differently across ML frameworks and how this affects Core ML (the ML framework for iOS). Not a lot of other people have gone this deep into this topic before – and even if they did, they didn’t write about it. Having in-depth content like that will help to convince people you really know what you’re doing.

(And if you’re worried you don’t have anything to write about: You don’t need to know everything already. I didn’t necessarily know everything about bilinear interpolation when I started writing that blog post. But as this was a problem I wanted to figure out anyway, I might as well put some extra time into writing about what I have learned, which helps to get more work in the future.)

Anyway, not sure how helpful this is. I just wanted to point out that you can take matters into your own hands and market yourself as a capable ML engineer / data scientist, so that companies or clients are more likely to be interested in you than someone else who did the same online courses and read the same books.

21 Likes

“Reality hits hard!”
Hi, nice thread @radek
I am currently doing my B.Tech in EEE and learning AI through this course in the view of implementing AI in Robotics. I hope this course will get me acquainted with the AI knowledge needed in the field of robotics

1 Like

I do online courses to learn skills and develop intuition. I want to have new ideas and be able to implement them.

I fall into a couple categories. I am a forward looking CS student who wants to specialize in this subfield. But I am also in my 30s, adrift in the world, and much of my learning is through MOOCs and personal research.

2 Likes

Sanyam, that’s great to know! It’s inspiring to discover exceptional companies that are thriving & innovating while maintaining a positive, inclusive culture. I’ll be reaching out. :smiley:

1 Like

To anyone else also reading this and (unfortunately) worried about the same culture across tech companies.

Please, feel free to reach out any time if you’re interested in DS Roles :slight_smile:

3 Likes

This brings up an important distinction between “Networking” and “Personal Connection”.

Lambda School has hired people without much of a background/experience completely relevant to them because of personal connections. And they have sometimes ignored those with background/experience who applied through the “networking” route.

I have a friend in the latter who applied for a non-ML related role at Lambda School. They reached the head of recruiting at the time through another employee there. They were asked to apply through the website by the head in an email after being connected through another employee. And this was, I think, before they gained a lot of traction (sometime last year)

This was the day after someone on twitter posted about how they didn’t have much of a background but Lambda School took a chance on them (for a job there, not as a student) because of someone else working at Lambda School whom they knew from before.

That’s the difference between “Networking” and “Personal Connections”.

The “value of personal connections” has additional context and nuances, which recruiters and others, who have gotten lucky (in spite of their hardwork and background), seem to often gloss over. You just don’t form personal connections through networking alone. I won’t even get into how it is for those who find it difficult to network in the first place.

The points you and others mention about how to put yourself forward by doing a few certain things and opportunities can open up are valid. Very much so.

But the reality around why people struggle is not at all around what they can do. It’s around why they are doing something and not moving forward or why they are not able to do the same things as those who are moving forward. Many people who suggest others what they should be doing (and I see so much of this from this entire community, of course that’s meant to be motivating and bears no ill-intent) is not the issue for the rest. And this is in no way to devalue anyone’s efforts and hardwork, at all.

I just don’t think others understand why people fail differently than them. And you will notice this more in those who contribute to or create any online (or even traditional) courses.

Persistence is always mentioned as the key. But I am unsure of that right now given my own journey and observing others in similar positions across lots of domains. It’s more about how a lot of us don’t really understand how to deal with our failure to be able to then persist through that failure. I think that’s where the distinction lies between who might progress and who might now.

Maybe that’s too much armchair psychology for this thread :sweat_smile:

5 Likes

Hi machinethink hope you’re having a superb day!

Thank you for a positive, practical, informative and inspirational post, with methods you have actually applied.

Cheers mrfabuous1 :smiley: :smiley:

In the spirit of this entire thread, and following Sanyam’s advice I have come across over the past year, I will start with my first Kaggle competition and stick with it this time. This year’s goal - Get a Bronze.

And hopefully a(ny) job… but let’s start small with that Bronze maybe :smile:

2 Likes

You’re on the right forums to set you up for a Gold (pun intended).

Good Luck! :slight_smile:

1 Like

Thanks! Appreciate the overall support people offer on these forums!

1 Like

i feel taking up an online course is better for seeking a Job in the field of ML, AI or Data Science because this topics are are blooming in the market these days. i have done the same. why dont you just have a look at the online courses provided by few good institutes.