Despite what the media wants you to think, Canada is not a good place to grow in IT and Software and ML. Best jobs here are being a part of a remote office for a FAANG or going to work for a Bank, or even just remote jobs for US companies since they'll pay you in USD which will mean you get an automatic 30% pay increase.
Pay is 2-3x less than the US, and CoL is about the same (especially if you want to buy something with a somewhat commutable distance to the major metros).
So my question to those who have successfully left later in their career (7-10 YOE), how did you manage it? What companies paid the most attention to you? What did your experience look like and how did you promote yourself if you weren't part of some hot startup like Shopify?
NOTE: I'm not here to argue the merits of the Canadian tech market. If you like it here, kudos to you and hope you find good growth opportunities.
1. Really specific area of expertise that was needed by whoever was hiring them. "IT, software, ML" is very broad, but if you have a keen interest in data engineering for computer vision (random example), then you'll find people keen to talk to you. Try to narrow yourself into a high-demand niche.
2. Have a good "portfolio" of successful projects. I don't know your resume, but if you're stuck at getting to the formal interviews (i.e., getting screened out by automatic filters or recruiters), then you likely have a weak resume. This doesn't mean you need to work for a hot startup; work on side projects that stand out and show you can ship code/products.
Finally, a word of caution --- Tier 1 companies in the US are fantastic. Depending on how you define them, "Tier 2" companies have a huge range in terms of pay, quality, etc. and you might be in for a bad surprise. Make sure to do your due diligence on the company, the city, and the specific team you'd be working in.
Source: I run a data science careers site at https://phaseai.com/ -- feel free to reach out if you have questions.
There's more to life than money, friend. Cost of living is not the only metric for quality of life. Safety, unity, sanity, these are all things Canadian cities have over the majority of American cities.
I hope the increase in pay is worth it to you. For some of us, this is more than just a place to live and "grow in IT", it's a place we come from and build our lives in. From this perspective, your words are denigrating; no matter, those who seek their fortune down south are seldom missed for long.
Getting hired, and hiring, is an acquisition funnel. Just like advertising through to making a sale.
Are you getting interviews? If not work on your resume, projects, and networking.
Are you not passing interviews? If so at what point in the process, phone screen, tech questions, or final offer?
Are companies saying no because you are in Canada? Target larger companies comfortable with the visa process.
Am moving back to Canada this summer. The math for us (family of five) does not work in terms of ability to buy a house without spending an insane amount of time commuting
I ended up getting a job offer via Triplebyte. The good thing with them is that they don't consider Canadians as needing a visa. They provided the lawyer assistance for arranging the TN visa documents. This may have changed. Triplebyte is much different than they were a few years ago.
Also, that year I had attended Pycon and got a lot of introductions to companies at their hiring event. When I was looking to make the move, I must have had 8 onsite interviews. I failed every one of them except the place that hired me.
This is because the interview process is much different compared to what I had in Canada. In Canada, it was basically a crapshoot. I never had any idea what to expect. Usually I just talked about some of my past projects and maybe had some easy programming question. US companies are more structured. You're usually gonna have around 2 coding rounds, 1 system design and 1 behavioural. You may think "I have 10 years of experience so I don't need to really prepare." I'm sorry but that would be wrong. You need to prepare more because a lot of the types of coding questions you get asked are things you rarely encounter on the job so your experience isn't going to help you for interviews much (except the behavioural and maybe partly the system design). You can complain about it but it won't help you achieve your goal.
I wanted to switch jobs again this year and I didn't want to have the same experience last time of failing so many onsites so this time I signed up for an interview prep program. There's a few available but I went with Interview Kickstart. It was 6 months of preparation but it was the first time in my life where I felt fully confident going into interviews. I knew what to expect so I didn't feel nervous and I had practiced mock interviews to get feedback and make adjustments. I've had 4 onsites with results so far and received interest from all of them for offers.
Completely agree with you about the career growth opportunities in the US. It's a major career regret of mine that I didn't move sooner. For specifics, when I left Canada I was making $90k CAD. I felt I was pretty close to the ceiling (not living in Toronto or Vancouver). The first US job doubled that but in USD and now these new offers have doubled that again. Plus the work is way more interesting and challenging.
If you focus on the bigger tier I companies, you are getting interviews so your resume works. You are failing the interview/coding test. Do you have insight into which? Are you getting second interviews? Does the process stop after the coding test?
Some in FAANG are starting to hire remotely in Canada such as Facebook. You can try that.