“Hi, my name is Richard. I’m a non-developer who likes to code.”
This is how I’m going to introduce myself from now on to any recruiter, company representative, or technology startup employe I meet. I might even start using this with strangers, small children, and women I meet at the bar.
I’ve had several experiences now where I go into an interview and discover I’m being evaluated for a developer position because they saw computer science coursework and a few programming languages on my resume.
I’m a data scientist, not a front-end programmer. I care about websites only insofar as they can be scraped to provide raw data for content analysis and natural text processing algorithms. I’m not interested in updating the homepage with a new color scheme. I’m the guy you give the results of an A/B test to so he can tell you which color people liked best based on their bounce rate because I can parse raw user logs into a clean dataset.
I’m also not a back-end programmer. I love databases like the flowers love rain, but that is because a properly designed database is a thing of beauty that facilitates the efficient and reliable analysis of the data it stores. Most back-end engineers I’ve met seem to view databases as a necessary evil and database constraints as the bane of their existence, fouling their beautiful server code with violations and failed transactions.
But I love to code. I left my career as a data analyst to develop the programmer mindset that sees the world as a series of logical operations with an intended and predictable result. I code because data is dirty and needs to be washed, spun, and hung out to dry before you can do anything interesting with it. This requires algorithms and data structures, sometimes of incredible complexity.
I’m a far better programmer now than I was a year or even 6 months ago, but I’m still not a software developer and I don’t aspire to be. I aspire to be the best data scientist I can be, which requires deep familiarity with many of the tasks, techniques, and skills that are also part of being a good software developer, but please don’t confuse the two.