A lot of developers think machine learning is pretty cool. It’s a natural thing for us to do. Every one of us has been embracing new technology for our entire career. Machine learning is the latest, newest, and coolest big thing in some time. So, we diligently go forth and attempt to master it, which is wonderful. It’s what makes us developers.
In the process of doing this, some of us conclude that software development is the past and data science is the future. That we need to be data scientists to embrace that future or be stuck in the past with (*gasp*) the COBOL developers.
The problem with a developer saying, “I need to be a data scientist”—aside from it being simply wrong—is that becoming a data scientist takes a lot of work. Years worth of it. And after those years, you’re a brand new data scientist. A noob. Congratulations, you’ve just restarted your career.
This seems like a bad plan.
I’d like to suggest a better way. I call it the developer admixture. The idea is simple and hardly new. There are many careers that a developer can pursue that allow her to have a foot in two worlds. Careers that allow her to remain a developer but bring in some new skills and work in an area where she can use them. Plus, allow her to bring her skills to an area where there aren’t any developers.
A solid example of this is the Test Automation Engineer. Writing all that Ruby code with the cucumber and the gherkin, the Test Automation Engineer has added some test automation tools and testing skills to his repertoire but is still a developer. He works with Quality Assurance to help make sure the application is as bug-free as possible. And, since QA folks usually aren’t developers, he can help in ways that other QA persons can’t by bringing development expertise to the rest of the team.
Simply put, a Test Automation Engineer is a developer who works with Quality Assurance.
This isn’t the only example, of course. Look at DevOps. A DevOps Engineer is a software developer who works in IT Operations. Or look at what I do. I’m a Developer Evangelist. I’m a developer who works in Community. These are all just developers with an admixture of another field.
And what about a developer who works with data science? Well, that’s called an AI Engineer. If you’re a developer who has a passion for data science and machine learning, this is the path you probably want to pursue. It’s a practical solution that allows you to lean on established skills (i.e. writing software like a boss) that data scientists don’t often have. And it allows you to play with all the cool new toys. All without having to start your career over.
So, stay a developer and learn the tools used for machine learning. Use them alongside data scientists and rely on their expertise as they rely on yours. Everyone wins. And, let’s be honest, this is what you really want to do anyway.
About the Author
In his personal life, Guy is a hard-boiled geek with an interest in role-playing games, science fiction, and technology tempered by a slightly less geeky interest in history and linguistics. He lives in Ohio with his wife, his three teenage sons, and an entire wall of games. Stay connected with Guy on Twitter: @guyroyse