This post was written by Shai Weener on Mozart’s data analyst team.
A couple of years ago, as I was in the middle of my graduate degree, it was time to start studying for interviews. To be so humble, I excelled at my SQL-related coursework so I wasn’t really worried about it. Instead, I focused my studying on other things, such as python, data science models, and the proper amount of small talk to convince the interviewer that I’d be fun to work with. And that was great…until I got to my first technical interview and they asked me a SQL question that had never even crossed my mind before. What do you mean use a window function to do that? Can you define window function for me? I’ve lagged stuff…is that kind of the same thing? Even though I felt comfortable in SQL, my comfort was limited to the specific questions and functions I had utilized before. And don’t get me wrong, most people can’t know or remember every single intricacy of SQL, but I didn’t have an understanding of the limitations of the language, nor experience thinking about questions given these limitations. I clearly hadn’t done my SQL reps, so I did what anyone would do after not being able to answer a question on an interview… I took a night to grab some drinks and feel sorry for myself, and then the next morning (read: afternoon) hit the ground running studying SQL for future interviews.
At this point, though, I realized it’s harder to learn SQL than simply practice. I don’t mean the language itself – there are many many tools online that have clearly outlined every function, have given you little code testing environments, and share how other people have answered the questions. I mean it’s hard to learn the SQL way of thinking because it isn’t easy to find a virtual sandbox where you can query actual data from multiple different datasets (rather than being told if your query successfully completes the very specific task given to you). It also isn’t easy because even in the settings that do provide somewhat of a virtual sandbox or have some tables you can test query, it’s difficult to come up on your own with a whole set of questions for you to answer. Multiple times I’ve been in an interview where someone asked a question and I was like “I could have figured this out had I even known it was a kind of question people ask.” And I guess there are some services you can pay for that will help you here. But it’s hard to pay for a service to help teach SQL when I really should be able to teach it to myself. I guess it’s kind of the same thing as speaking Hebrew. I know how to say a lot of specific things, but struggle to find places to practice. So if you throw me in the wild I can ask you whether or not you’re emotionally close with your first cousins but can’t ask why you decided to put the couch over there.
Anyway, thankfully for me, my friend had subscribed to a bunch of these expensive SQL study programs on a year long contract and he had gotten a job only a few months in, so I was gifted his subscriptions. These programs were good enough to get me a job, and now that I’m in a role where I utilize SQL almost every day, I realize even those programs couldn’t fully prepare me to utilize SQL in a real world setting.
All of that is to say, if you consider yourself a data savvy person, and either have tried to teach yourself SQL using all of the online resources or haven’t even gotten to that point because it is hard to know where to start: you’re not alone. And if you have data that you want to use but don’t know SQL, don’t immediately think you need to find a person who already knows SQL. As my coworker Adam loves to tell people, he learned SQL on the job by trying to answer the questions he was being asked (and by using Google, obviously). There really is no better data to learn with than your own, and no better real case scenario than your own – especially when the stakes aren’t as high.
Now comes the slight pitch part of this post. Not only does Mozart Data have the ability to bring all of your data into one place and make it queryable using SQL, we have a free tier. Meaning, if you’re at the early stages of your data journey, or you have some data questions that for now you can technically do in Excel but you know it isn’t a long term solution, our free tier really can help you out in many ways. Our platform basically gives you a free sandbox to test and learn SQL with, provides you real time guidance for what the functions are, how to use them, and best of all, it’s with your data. I guess also best of all is that we have real people (like me) who can help you debug some of your SQL if you hit a wall.
So if you wanna start learning SQL with your own data and want to start building your ability to use data, it’s really not too early. We’re here to help. Also, it’s free. Don’t we always love free? I mean, I guess I’d prefer to pay $10 for a microwave than get one for free, but that’s for another day.