DEV Community

Tony Colston
Tony Colston

Posted on

things you should know before a dev interview (part 1 of n)

tl;dr learn you some SQL

I have interviewed a lot of potential developers and one of the core skills you really should have is SQL.

Not all jobs will require you to know SQL. The concepts are core to what most businesses will want from programmers. Every shop will have data stored somewhere. Even if you are a front end developer your data will come from somewhere and knowing how SQL works will give you an advantage.

Here are some of the questions you should be able to answer and or talk about.

What is SQL? Have you used it? Tell me how you would get data from a database.
Do you know what SQL stands for? Can you name some different databases? Why do you need a database? All of these questions are "get in the door" basic questions that you should be able to answer if asked.

understand the concept of connecting to a database
In whatever language you use there will be a concept of connecting to a SQL database. In Python it is a connect statement. In Java you will use JDBC to load the driver and the connect to the DB.

There is also an element of resource management with this idea too. Can one program make hundreds of connections to a single database?

There is a life cycle of the connection: you connect, you do work and then you release the connection. Again these are basic concepts but important to understand.

learn the SELECT statement
You need to have interacted with a SQL database either in the CLI that the DB provides or in your language of choice. Almost all modern languages have a way to run queries and get data from a SQL database. Do this at least once before an interview.

learn how to filter data with the SELECT statement
Being able to write a SELECT state with a WHERE clause is a fundamental skill. The concept of grabbing rows of data then taking one of more columns from those data rows and filtering the data is fundamental.

learn about joins
If you are just starting out this will be push your knowledge a bit. You do not have to be an expert but understanding the concepts here is essential.
The concept of taking two sets of rows from different tables and joining them together based on a field in the data.

I am just a beginner and do not work for a company how can I get SQL experience?
Use SQLite. https://www.sqlite.org/index.html It is free! This is an easy way to use/practice with SQL syntax. You do not even need to use it with a language it has a command prompt you can use.

If you are going to use sqlite with a language the easy choice is Python.
In Python sqlite is built into the language you downloaded for free.

import sqlite3
Enter fullscreen mode Exit fullscreen mode

I will write more about SQL in some other posts!

Top comments (1)

Collapse
 
anduser96 profile image
Andrei Gatej

I’ve been writing sql a lot these days while working on an app.

I’m so glad that I found use cases for some cool stuff that, in this case, MySQL provides, things such as procedures and triggers.

Thanks for the article!