I’m fortunate enough to occasionally be invited to speak at conferences around the world about what I’m truly passionate about. Having the opportunity to teach machine learning to groups of highly skilled .NET developers is a privilege and one of the most rewarding things I get to do. I often get questions from developers why they should invest time into learning a completely new domain, and why companies shouldn’t just hire “real” Data Scientists. I wanted to take a moment to write down why I think developers in the .NET community should take an interest, a leap of faith if you will, and venture in the world of machine learning.
1. Career growth and job satisfaction
Who doesn’t like to learn something new? Retaining top talent is all about making sure they have the space and ability to learn new things, to constantly grow their capabilities. Although it’s been around for a while, Machine Learning is a completely new domain, especially for the .NET Community. Picking these skills up will not only be rewarding (I promise), but it will also make you even more sought after on the job market. As developers, we are certainly in high demand today, but that may change overnight. Having more than one area of expertise safe-guards you for worse times. Furthermore, true innovation comes from bringing two unrelated things together. Ever thought about creating a startup? Well I promise you that not only will you have tons of more ideas, but you’ll also be empowered to act on them if you dive into the world of machine learning.
2. Be a catalyst
Be the catalyst. Have an impact. Push the barrier of what’s possible. If you invest your time into learning Machine Learning, you can be the one transforming and enabling your .NET team. There’s nothing more inspiring than having a positive long-lasting impact on an organization and fellow co-workers. By better understanding ways you can make your application smarter, either by leveraging existing cloud services or building your own custom models, you can provide sound technical advise to your leadership team that may shape the future of your application. Take control of your own career and be a thought leader within your organization.
3. You don’t have to choose
You don’t have to choose between being a software developer or a data scientist. I often hear that people don’t want to leave what they already love doing for something unknown. I’m here to tell you that you don’t have to. I’ve been a .NET developer for 10+ years and I love it. My day-to-day job mostly consists of building web applications. Just because you want to invest time in learning data science doesn’t mean you have to stop being a software developer. Most importantly, venturing into machine learning in .NET means that you’re still expected to leverage your existing strong .NET skills. If you build custom models using the open-source library ML.NET, you will build those in .NET. When you integrate and consume models in your application you’ll do so in .NET. If you call an ML model deployed to a Kubernetes cluster in for example Azure ML, you’ll do so in .NET. The gap between data science and software engineering is shrinking, to be relevant on the job market going forward you’ll need both skills, and it’s okay to jump back and forth in between them.
4. We’ve passed the hype
In many ways we’ve passed the AI/ML hype. There’re obviously tons of breakthroughs still happening, but what we are seeing are more practical use cases for small- and mid-size organizations. Once you start learning more about different machine learning tasks and what’s possible to do today, you’ll see the possibilities within your organization. Things that were expensive to do just a couple of years ago are now much more affordable and does not require a full-fledged data scientist. Your development team can already do it themselves today, it’s all about getting started. With the rise of AutoML, both in Azure and in ML.NET, you can quickly experiment with data you already have to see if you can get something working. The barrier to get started is much lower than it ever has been before. Your imagination is the limit. Although we may have passed the peak of the ML/AI hype, it’s just the very beginning for the larger .NET Community. By getting involved early you have the chance of shaping libraries and product to fit your needs.
5. It’s fun
There are obviously tons of more reasons why you should get started today, but I do want to highlight the most important one, how much fun it is. Working on something that is so quickly evolving and being part of a community that cares has for me personally been a fantastic journey. I’m still amazed when I see things just work and I feel empowered when I can use my existing C#/.NET skills to build highly sophisticated machine learning models.
So what are you waiting for? Let’s get started today!