The jump to core ML is a bit trickier. Competing with people with PhD's is a drag. Wish people could also give me some tips there.
The jump to core ML is a bit trickier. Competing with people with PhD's is a drag. Wish people could also give me some tips there.
ML guys build the fun stuff, go to conferences, etc. We maintain their stuff and work the 60 hour weeks answering pages.
It's mind numbing. Arguably some of the most boring work I've ever done especially knowing that you're just a CI/CD robot. Nothing has motivated me towards looking into starting a business more than watching other people have fun and you cleaning up their messes.
MLOps is what you're describing, and it's probably the number one field I'd recommend someone to go down right now as a backend dev.
4 and 5 are basically a while loop that never ends and that's mostly MLOps It still requires proper ML expertise, especially when things break tho
And yeah, lots of people dislike it, but you can't build models without an understanding of the data, so even if automated data cleaning became possible (unlikely) you'd still need to spend a load of time doing work on the dataset before building anything useful.
Data cleaning requires a lot of judgement and domain knowledge. Imagine if an AI did clean your dataset. Are you just going to trust it (Hell no!)? Or are you going to spend ages trying to work out what it did, which doesn't seem much of an improvement.
I write data cleaning/ETL software and I'm confident that the need for my product is going to going up between now and when I retire.
I don't think Torch is any easier than Keras if you don't know what you're doing.
I think data engineering is probably the easiest transition for software devs with backend web (read: database and Python) experience. Free learning resources abound nowadays, as well as decent-quality books and online courses. It's largely the same set of engineering "macro" skills (proejct planning, cost-time-correctness tradeoffs, levels of abstraction, deploying stuff to the cloud), and the specific engineering "micro" skills (database performance tuning, indexing, storage and compute cost management, setting up ETL pipelines, integrating with dashboard systems like Tableau) should be well within the capabilities of a mid-senior backend web developer.
The hardest part IMO would be getting up to speed to the stats and data analysis basics enough to be conversant with the analysts and data scientists who would be your primary stakeholders and users. But that too can be done with help from the multitude of free learning resources and chatrooms/forums.
IMO it's worth the effort if you're looking to transition. There is a shortage of good, conscientious data engineers right now. Hiring pipelines are clogged with aspiring junior data scientists who are willing to put up with data engineering for a couple of years to try and get some experience on their resume. Data engineers' skillsets are highly portable across companies and industries, and will remain in demand for many years to come, even as companies find that they can't justify hiring a data scientist, so pay and hiring potential will be accordingly high. And as a data engineer you will quickly establish yourself as an essential team member in all but the most dysfunctional organizations, and your value will be immediately apparent whenever someone wants to build a dashboard or pull a report and it all "just works".
The only thing to beware of is the usual caveat of companies trying to short-sightedly hire inexperienced juniors in mid-senior roles to save a buck, setting both you and them up for failure. But that's a caveat in any field where you're starting from the bottom. If you're already an experienced software engineer, you should hopefully be able to either see through that bullshit, or to be able to handle it somewhat more gracefully than a true junior could.