Back when I was starting my professional programming career, I was really passionate about desktop applications.
I had some Visual Basic apps that I built by myself, studied Delphi at school, and worked as a Java developer. Since my first complex project was a distributed ERP for a large manufacturing organization, I really enjoyed building desktop software. Most of my pet projects at home were Swing apps, too.
The company I was working for transitioned to web development and my technical manager told me that “web is the future”. I thought he was either nuts, or wanted us to become front-end developers or something along those lines.
Nowadays, we watch video through Netflix, listen to music via Spotify, chat with Slack or the web version of Skype. The mobile wave struck as well, and then we saw the innovations in front-end development, the progress of IoT, and the demand for machine learning and different AI applications.
Machine Learning is definitely a thing now and various organizations look specifically for candidates with ML expertise.
- Social networks rely heavily on more progressive algorithms for data curation and determining business expectations.
- Banks vet credit applicants thanks to machine learning.
- Games include different AI components for their automated bot applications.
- Search engines dive deep into machine learning and personalized content.
- Content management systems and eCommerce platforms benefit from custom tailored newsletters and relevant products based on the previous user behavior.
Many enterprises rely on statistical probability and automated mathematical models in order to define the relevant behavior for each customer accordingly.
In terms of career growth, former expertise in machine learning is definitely handy from a software development standpoint.
This skill set will probably be relevant for the next 5–10 years as well.
That said, the IT industry tends to automate and optimize processes – both for convenience, speed of execution, and by reducing the minimum requirements for hiring new staff members.
Maths was pretty much mandatory for software development back in the day. Then standard software libraries were introduced to most modern programming languages – handling search and sorting capabilities, among other optimized data structures and helpful algorithms.
Web development was a creative and complicated craft a while ago; and numerous service providers still rely on providing outstanding web development services for reputable organizations.
But that also brought millions of site builders installing WordPress with a few plugins for small and medium businesses. Wix, Squarespace, Weebly, Shopify attacked the market with self-hosted, DIY websites. Facebook Pages became a viable alternative for businesses that rely heavily on active Facebook users.
In time, Machine Learning will become automated to a certain point. Organizations will still need a percentage of professional developers with practical ML expertise. But frameworks and libraries like TensorFlow and Amazon Machine Learning will make it easier for less proficient developers to apply machine learning concepts into modern software applications.
All in all, studying machine learning is a smart career choice for software engineers. But those who aren’t ready to ride the first wave will still have simplified alternatives 5 years from now.