We are always happy to talk with database experts who can tell us more about how they use DBeaver apps in their day-to-day tasks. Today, we want to share an interview we have had with Denis Magda, the Developer Relations Director at YugabyteDB, a distributed SQL database built on PostgreSQL.Denis has extensive experience working with databases as a software engineer and uses DBeaver for his main work, as well as for training purposes and demonstration when speaking at conferences.
Please tell us about your work. Which tasks does DBeaver help you solve?
At the very beginning of my career, I worked as a backend developer, mobile developer, and system-level engineer. That’s why I have extensive experience in different types of technology. I first came across DBeaver while working on the social media platform. We used Postgres as a database for this service, which at that time wasn’t as popular as it is today. Although I was writing code back then, sometimes I just wanted to look at the database table structure or perform a few select queries. It was convenient to use DBeaver for these purposes.
These days, I no longer work as a full-time software developer, but as the head of Developer Relations. I spend most of my time helping other developers and architects and teaching them how to work with databases and use different database technologies. Sometimes I just want to connect to a database and show them how to use it without working with a source code. This is when I use DBeaver for demonstrations and educational purposes.
Why did you choose DBeaver for your presentations?
I chose DBeaver as a speaker at the previous conference because I use this tool frequently. My talk was about generative AI technology that is becoming increasingly popular nowadays. My idea was to teach software developers the basics of using AI in applications. I demonstrated how you can build a simple app from scratch for travelers who want to choose the best place to stay in a new city based on their personal preferences.
When you explain some of the requests and how to optimize data, it is great to have a tool that helps to view the data itself. I use DBeaver for this because it has sophisticated capabilities and is easy to use. I can connect to my database to view what the data and all the embeddings look like. Moreover, when working with large amounts of data, we sometimes need to optimize it by creating appropriate indexes. And this is where DBeaver comes to the rescue too. I start by looking at the Execution Plan, which is displayed nicely by the app, and then decide that I need to create an index. I go to the SQL Editor, and the autocompletion feature comes in handy to write queries quickly.
So, it is great to have such a SQL tool with a convenient UI to show what the data looks like and find out how to optimize access to it.
What DBeaver features do you like the most?
Speaking about my favorite features, I want to point out three of them.
I think one of DBeaver’s main advantages is the support of all the popular databases. If I first need to work with some relational database and then want to switch to a document-oriented one, I don’t have to search for another tool for that. Even though I work with Postgres most of the time, I sometimes experiment with Oracle, MySQL, and other databases. And this is a reason why DBeaver is the number one tool for me.
My next favorite one is essential for me. I don’t want to keep all the queries in my head, and it is always great if a database tool helps me write them with autocomplete. It is really important that DBeaver has features like that.
And third favorite feature is the Query Execution Plan. It is great to have a readable execution plan with all the inputs.
Has the use of DBeaver affected the efficiency and speed of your work?
The best example that I have is the ability to load data from a CSV file to DBeaver and get a database schema from scratch. Nowadays, if you want to experiment with different datasets, you can go to different websites and download raw data. However, datasets like that often don’t have any schemas, and you need to find a service that will help you create DDL with all the SQL statements. I was happy to discover that with DBeaver, it is okay if I don’t have any schema. All I need to do is load the CSV file, and all tables and statements will be created.
What do you want to improve in our app?
I am sure that DBeaver is used by many enterprises as a database management platform, and it has a lot of features not only for individuals but also for big companies. That’s why I don’t think that this tool lacks features related to SQL scripting or database capabilities.–
There is just one thing that I would like you to consider: the look and feel. It would be great if you keep all the wonderful features that you have, and make the UI more contemporary. That’s pretty much a minor thing, but if you improve it, I think even more developers and architects who work in small companies will appreciate it.
If you would like to share your experience with DBeaver and participate in our interview series, please contact us by email at firstname.lastname@example.org.